~amcg-stokes/fluidity/multimaterial_diagnostic_dependencies

« back to all changes in this revision

Viewing changes to schemas/fluidity_options.rnc

  • Committer: Cian Wilson
  • Date: 2012-12-10 20:21:07 UTC
  • mfrom: (4132.1.7 fluidity)
  • Revision ID: cwilson@ldeo.columbia.edu-20121210202107-5wppwqcba4bfd1r3
Merging in changes from lp:fluidity.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2684
2684
         element type {
2685
2685
           attribute name { "free_surface" },
2686
2686
           (
 
2687
              ## The default free_surface implements the physical boundary
 
2688
              ## condition p=0 (this is full pressure without subtracting the hydrostatic component)
 
2689
              ## For viscous fluids the correct boundary condition is a no normal
 
2690
              ## stress condition, which includes a viscosity term. When using
 
2691
              ## this option a prognostic FreeSurface field is required.
 
2692
              element no_normal_stress {
 
2693
                 ## Treat the free surface evolution equation separately from the momentum equation.  
 
2694
                 ## i.e. stagger the solves.
 
2695
                 ##
 
2696
                 ## Requires a prognostic FreeSurface field.
 
2697
                 element explicit {
 
2698
                   empty
 
2699
                 }?
 
2700
              }?,
 
2701
              ## When selected the density at the surface is calculated using the Density field.  Therefore
 
2702
              ## this requires a Density field!
 
2703
              element variable_density {
 
2704
                 empty
 
2705
              }?,
 
2706
              ## When selected a hydrostatic pressure distribution on the outside is assumed
 
2707
              ## using the specified density, i.e. instead of applying p=0 (resp.
 
2708
              ## normal_stress=0) we apply p=p_external (resp. normal_stress=p_external) where p_external is determined by dp_external/dz=external_density*g
 
2709
              element external_density {
 
2710
                 real
 
2711
              }?,
2687
2712
              ## This options adds a surface stabilisation term to the free surface. Works only for cg velocity so far. 
2688
2713
              ## Note: Once activated, the stabilisation term will occur in all free surface areas in the domain. 
2689
2714
              ## IN DEVELOPMENT
2816
2841
         element type{
2817
2842
            attribute name { "log_law_of_wall" },
2818
2843
            element surface_roughness {real}
 
2844
         }|
 
2845
         ## Flux boundary condition. 
 
2846
         ##
 
2847
         ## Weakly enforces a flux across a boundary
 
2848
         element type {
 
2849
            attribute name { "flux" },
 
2850
            element align_bc_with_cartesian {
 
2851
               element x_component {
 
2852
                  input_choice_real_bc_component
 
2853
               }?,
 
2854
               element y_component {
 
2855
                  input_choice_real_bc_component
 
2856
               }?,
 
2857
               element z_component {
 
2858
                  input_choice_real_bc_component
 
2859
               }?
 
2860
            }
2819
2861
         }
2820
2862
      )
2821
2863
   )
3385
3427
            )
3386
3428
         }|
3387
3429
         ## Free Surface
3388
 
         ## NOTE: if you are using the free_surface boundary condition
3389
 
         ## applied to the Velocity field (recommended), you should not 
3390
 
         ## use the prognostic FreeSurface field. In this case you may 
3391
 
         ## (optionally) add a diagnostic FreeSurface field.
 
3430
         ## Use in combination with a free_surface boundary condition on velocity
 
3431
         ## Without the no_normal_stress option, this field should be diagnostic
 
3432
         ## and is optional. With the no_normal_stress option this field is required
 
3433
         ## and should be prognostic.
3392
3434
         element scalar_field {
3393
3435
            attribute rank { "0" },
3394
3436
            attribute name { "FreeSurface" },
3396
3438
               ## Free Surface
3397
3439
               ## NOTE: the diagnostic FreeSurface field only works in combination
3398
3440
               ## with the free_surface boundary condition applied to the Velocity
3399
 
               ## field. It gives you a 3D field (constant over the vertical)
 
3441
               ## field, without the no_normal_stress_option.
 
3442
               ## It gives you a full dimensional field (constant over the vertical)
3400
3443
               ## of the free surface elevation.
3401
3444
               element diagnostic {
3402
3445
                  internal_algorithm,
3403
 
                  # this is hard-coded on the PressureMesh as long as the Pressure is
3404
 
                  # if this is no longer true, it should be option-checked to be on the
3405
 
                  # same mesh as Pressure
3406
3446
                  ## Must be on the same mesh as Pressure
3407
3447
                  pressure_mesh_choice,
3408
3448
                  diagnostic_scalar_field
 
3449
               }|
 
3450
               ## Free Surface
 
3451
               ## NOTE: the prognostic FreeSurface field only works in combination
 
3452
               ## with the free_surface boundary condition applied to the Velocity
 
3453
               ## field in combination with the no_normal_stress_option.
 
3454
               ## It gives you a full dimensional field (constant over the vertical)
 
3455
               ## of the free surface elevation. Initial and boundary conditions
 
3456
               ## for free surface should be set on this field.
 
3457
               element prognostic {
 
3458
                  ## Must be on the same mesh as Pressure
 
3459
                  pressure_mesh_choice,
 
3460
                  (
 
3461
                     ## Initial condition for WholeMesh
 
3462
                     ##
 
3463
                     ## Only specify one condition if not using mesh regions.
 
3464
                     ## Otherwise select other initial_condition option, specify region_ids
 
3465
                     ## and distinct names.  Then add extra intial conditions for other regions.
 
3466
                     element initial_condition {
 
3467
                        attribute name { "WholeMesh" },
 
3468
                        input_choice_initial_condition_real
 
3469
                     }|
 
3470
                     ## Multiple initial_conditions are allowed if specifying
 
3471
                     ## different values in different
 
3472
                     ## regions of the mesh (defined by region_ids).  In this case
 
3473
                     ## each initial_condition
 
3474
                     ## requires a distinct name for the options dictionary.
 
3475
                     element initial_condition {
 
3476
                        attribute name { string },
 
3477
                        region_ids?,
 
3478
                        input_choice_initial_condition_real
 
3479
                     }
 
3480
                  )+,
 
3481
                  ## Solver - only necessary in combination with an explicit no_normal_stress free_surface bc under Velocity.
 
3482
                  element solver {
 
3483
                     linear_solver_options_sym
 
3484
                  },
 
3485
                  prognostic_scalar_output_options,
 
3486
                  prognostic_scalar_stat_options,
 
3487
                  scalar_convergence_options,
 
3488
                  prognostic_detector_options,
 
3489
                  scalar_steady_state_options,
 
3490
                  adaptivity_options_prognostic_scalar_field,
 
3491
                  interpolation_algorithm_scalar
3409
3492
               }
3410
3493
               
3411
3494
            )