~fluidity-core/fluidity/sea-ice-branch

« back to all changes in this revision

Viewing changes to schemas/fluidity_options.rng

  • Committer: Simon Mouradian
  • Date: 2012-10-19 10:35:59 UTC
  • mfrom: (3520.32.371 fluidity)
  • Revision ID: simon.mouradian06@imperial.ac.uk-20121019103559-y36qa47phc69q8sc
mergeĀ fromĀ trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
  <include href="embedded_models.rng"/>
17
17
  <include href="flredecomp.rng"/>
18
18
  <include href="porous_media.rng"/>
 
19
  <include href="multiphase_interaction.rng"/>
19
20
  <include href="equation_of_state.rng"/>
20
21
  <start>
21
22
    <element name="fluidity_options">
845
846
                    <attribute name="name">
846
847
                      <value>GLSBackgroundViscosity</value>
847
848
                    </attribute>
848
 
                    <element name="prescribed">
849
 
                      <ref name="mesh_choice"/>
850
 
                      <ref name="prescribed_tensor_field"/>
851
 
                    </element>
 
849
                    <choice>
 
850
                      <element name="prescribed">
 
851
                        <ref name="mesh_choice"/>
 
852
                        <ref name="prescribed_tensor_field"/>
 
853
                      </element>
 
854
                      <element name="diagnostic">
 
855
                        <ref name="mesh_choice"/>
 
856
                        <ref name="sediment_concentration_dependent_viscosity_algorithm"/>
 
857
                        <ref name="diagnostic_tensor_field"/>
 
858
                      </element>
 
859
                    </choice>
852
860
                  </element>
853
861
                  <element name="tensor_field">
854
862
                    <a:documentation>Background diffusivity</a:documentation>
1349
1357
carries the influence of turbulence onto the velocity field. See the manual for details.</a:documentation>
1350
1358
                  <element name="scalar_field">
1351
1359
                    <a:documentation>Turbulent kinetic energy (k).
1352
 
1. 'k_epsilon'-type boundary conditions are recommended for this field.
 
1360
1. 'k_esilon'-type boundary conditions are recommended for this field.
1353
1361
2. Turn on diffusivity, source and absorption diagnostic fields.
1354
1362
3. Use the same mesh as Velocity.</a:documentation>
1355
1363
                    <attribute name="rank">
1401
1409
                    <attribute name="name">
1402
1410
                      <value>BackgroundViscosity</value>
1403
1411
                    </attribute>
1404
 
                    <element name="prescribed">
1405
 
                      <ref name="velocity_mesh_choice"/>
1406
 
                      <ref name="prescribed_tensor_field"/>
 
1412
                    <choice>
 
1413
                      <element name="prescribed">
 
1414
                        <ref name="velocity_mesh_choice"/>
 
1415
                        <ref name="prescribed_tensor_field"/>
 
1416
                      </element>
 
1417
                      <element name="diagnostic">
 
1418
                        <ref name="velocity_mesh_choice"/>
 
1419
                        <ref name="sediment_concentration_dependent_viscosity_algorithm"/>
 
1420
                        <ref name="diagnostic_tensor_field"/>
 
1421
                      </element>
 
1422
                    </choice>
 
1423
                  </element>
 
1424
                  <optional>
 
1425
                    <element name="tensor_field">
 
1426
                      <a:documentation>Set the value of the background (laminar) diffusivity field here.
 
1427
This is used to calculate scalar field diffusivities.</a:documentation>
 
1428
                      <attribute name="rank">
 
1429
                        <value>2</value>
 
1430
                      </attribute>
 
1431
                      <attribute name="name">
 
1432
                        <value>BackgroundDiffusivity</value>
 
1433
                      </attribute>
 
1434
                      <element name="prescribed">
 
1435
                        <ref name="velocity_mesh_choice"/>
 
1436
                        <ref name="prescribed_tensor_field"/>
 
1437
                      </element>
1407
1438
                    </element>
1408
 
                  </element>
 
1439
                  </optional>
1409
1440
                  <element name="tensor_field">
1410
1441
                    <a:documentation>Eddy viscosity (turbulent diffusion of velocity).
1411
1442
This is a fictitious isotropic viscosity, added to normal viscosity field, that
1457
1488
                      <ref name="diagnostic_scalar_field"/>
1458
1489
                    </element>
1459
1490
                  </element>
1460
 
                  <element name="source_absorption">
1461
 
                    <a:documentation>Select whether source and absorption terms for k and epsilon
1462
 
are implicit or explicit.</a:documentation>
1463
 
                    <element name="string_value">
1464
 
                      <choice>
1465
 
                        <value>explicit</value>
1466
 
                        <value>implicit</value>
1467
 
                      </choice>
1468
 
                    </element>
1469
 
                  </element>
1470
 
                  <element name="lengthscale_limit">
1471
 
                    <a:documentation>Limit the turbulence lengthscale to within physical bounds (e.g. inlet min dimension).
1472
 
This helps to prevent instabilities during simulation spin-up.</a:documentation>
 
1491
                  <element name="scalar_field">
 
1492
                    <a:documentation>f_1 damping coefficient for low_Re k-epsilon model
 
1493
Required for low_Re boundaries. If no low_Re boundaries are present
 
1494
this will be set to 1.0 throughout the domain and will not
 
1495
affect the result</a:documentation>
 
1496
                    <attribute name="rank">
 
1497
                      <value>0</value>
 
1498
                    </attribute>
 
1499
                    <attribute name="name">
 
1500
                      <value>f_1</value>
 
1501
                    </attribute>
 
1502
                    <element name="diagnostic">
 
1503
                      <ref name="internal_algorithm"/>
 
1504
                      <ref name="velocity_mesh_choice"/>
 
1505
                      <ref name="diagnostic_scalar_field"/>
 
1506
                    </element>
 
1507
                  </element>
 
1508
                  <element name="scalar_field">
 
1509
                    <a:documentation>f_2 damping coefficient for low_Re k-epsilon model
 
1510
Required for low_Re boundaries. If no low_Re boundaries are present
 
1511
this will be set to 1.0 throughout the domain and will not
 
1512
affect the result</a:documentation>
 
1513
                    <attribute name="rank">
 
1514
                      <value>0</value>
 
1515
                    </attribute>
 
1516
                    <attribute name="name">
 
1517
                      <value>f_2</value>
 
1518
                    </attribute>
 
1519
                    <element name="diagnostic">
 
1520
                      <ref name="internal_algorithm"/>
 
1521
                      <ref name="velocity_mesh_choice"/>
 
1522
                      <ref name="diagnostic_scalar_field"/>
 
1523
                    </element>
 
1524
                  </element>
 
1525
                  <element name="scalar_field">
 
1526
                    <a:documentation>f_mu damping coefficient for low_Re k-epsilon model
 
1527
Required for low_Re boundaries. If no low_Re boundaries are present
 
1528
this will be set to 1.0 throughout the domain and will not
 
1529
affect the result</a:documentation>
 
1530
                    <attribute name="rank">
 
1531
                      <value>0</value>
 
1532
                    </attribute>
 
1533
                    <attribute name="name">
 
1534
                      <value>f_mu</value>
 
1535
                    </attribute>
 
1536
                    <element name="diagnostic">
 
1537
                      <ref name="internal_algorithm"/>
 
1538
                      <ref name="velocity_mesh_choice"/>
 
1539
                      <ref name="diagnostic_scalar_field"/>
 
1540
                    </element>
 
1541
                  </element>
 
1542
                  <element name="max_damping_value">
 
1543
                    <a:documentation>Limit the maximum value of damping function values. This helps stability when using low_Re number
 
1544
boundary conditions. If not using low_Re boundaries this will have no effect. 
 
1545
Recommended value (default): 10.0</a:documentation>
1473
1546
                    <ref name="real"/>
1474
1547
                  </element>
 
1548
                  <optional>
 
1549
                    <element name="scalar_field">
 
1550
                      <a:documentation>Describes distance to nearest solid wall.
 
1551
Required for low_Re boundaries.
 
1552
For simple geometries the simplest method of providing this information is to use a python function.
 
1553
For complex geometries where this is not possible precursive Eikonal equation or Poisson equation
 
1554
simulations must be run using Fluidity to determine the values for this field.
 
1555
Details of how this is done can be found in:
 
1556
Tucker, P 2011: "Hybrid Hamilton/Jacobi/Poisson wall distance function model"
 
1557
Elias et al 2007: "Simple finite element-based computation of distance functions in unstructured grids"</a:documentation>
 
1558
                      <attribute name="rank">
 
1559
                        <value>0</value>
 
1560
                      </attribute>
 
1561
                      <attribute name="name">
 
1562
                        <value>DistanceToWall</value>
 
1563
                      </attribute>
 
1564
                      <element name="prescribed">
 
1565
                        <ref name="velocity_mesh_choice"/>
 
1566
                        <ref name="prescribed_scalar_field"/>
 
1567
                      </element>
 
1568
                    </element>
 
1569
                  </optional>
1475
1570
                  <element name="C_mu">
1476
1571
                    <a:documentation>Eddy-viscosity coefficient: nu_T = density * C_mu * k**2 / epsilon.
1477
1572
Recommended value (default): 0.09.</a:documentation>
1498
1593
Recommended value (default): 1.3.</a:documentation>
1499
1594
                    <ref name="real"/>
1500
1595
                  </element>
 
1596
                  <element name="sigma_p">
 
1597
                    <a:documentation>The Schmidt number (ratio of viscous diffusion rate to momentum diffusion rate) for 
 
1598
massive scalar fields, or Prandtl number (ratio of viscous diffusion rate to thermal diffusion rate) 
 
1599
for thermal fields. This is used to calculate the turbulent buoyancy term.
 
1600
Recommended value (default): 1.0.</a:documentation>
 
1601
                    <ref name="real"/>
 
1602
                  </element>
 
1603
                  <element name="time_discretisation">
 
1604
                    <a:documentation>Time discretisation of the source terms in the k and epsilon equations and also
 
1605
of the eddy viscosity</a:documentation>
 
1606
                    <element name="theta">
 
1607
                      <a:documentation>Implicit/explicit control (THETA) of source terms and eddy viscosity in
 
1608
the k-epsilon model
 
1609
 = 0.  -- explicit
 
1610
 = 0.5 -- Crank-Nicolson
 
1611
 = 1.  -- implicit</a:documentation>
 
1612
                      <ref name="real"/>
 
1613
                    </element>
 
1614
                    <element name="source_term_implementation">
 
1615
                      <a:documentation>Each term in the k and epsilon equations can be implemented as either a 
 
1616
source or as an absorbtion term. See the manual under 
 
1617
'Parameterisations/Turbulent flow modelling and simulation/Reynolds Averaged Navier Stokes (RANS) Modelling/Standard k āˆ’ Īµ Turbulence Model/Time Discretisation and Coupling' 
 
1618
for more information.</a:documentation>
 
1619
                      <element name="production_term">
 
1620
                        <choice>
 
1621
                          <value>source</value>
 
1622
                          <value>absorbtion</value>
 
1623
                        </choice>
 
1624
                      </element>
 
1625
                      <element name="destruction_term">
 
1626
                        <choice>
 
1627
                          <value>source</value>
 
1628
                          <value>absorbtion</value>
 
1629
                        </choice>
 
1630
                      </element>
 
1631
                      <element name="buoyancy_term">
 
1632
                        <choice>
 
1633
                          <value>source</value>
 
1634
                          <value>absorbtion</value>
 
1635
                        </choice>
 
1636
                      </element>
 
1637
                    </element>
 
1638
                  </element>
 
1639
                  <element name="mass_terms">
 
1640
                    <a:documentation>The source terms in the k-epsilon model are calculated before the field is 
 
1641
solved. The process requires inversion of a mass matrix. This element contains
 
1642
options for defining how this is done. For P1 meshes mass lumping can be used,
 
1643
for other discretisations the mass matrix can not be easily inverted and so a 
 
1644
solve must be carried out, with solver options specified.</a:documentation>
 
1645
                    <choice>
 
1646
                      <element name="lump_mass">
 
1647
                        <empty/>
 
1648
                      </element>
 
1649
                      <element name="use_consistent_mass_matrix">
 
1650
                        <element name="solver">
 
1651
                          <ref name="linear_solver_options_asym"/>
 
1652
                        </element>
 
1653
                      </element>
 
1654
                    </choice>
 
1655
                  </element>
 
1656
                  <optional>
 
1657
                    <element name="debugging_options">
 
1658
                      <a:documentation>produce vtu output of individual kk and eps source terms and set prescribed 
 
1659
source terms for k and epsilon fields (for mms tests)</a:documentation>
 
1660
                      <element name="source_term_output_fields">
 
1661
                        <a:documentation>output fields for each of the source terms in the k-epsilon model</a:documentation>
 
1662
                        <optional>
 
1663
                          <element name="scalar_field">
 
1664
                            <attribute name="rank">
 
1665
                              <value>0</value>
 
1666
                            </attribute>
 
1667
                            <attribute name="name">
 
1668
                              <value>TurbulentKineticEnergy_production_term</value>
 
1669
                            </attribute>
 
1670
                            <element name="diagnostic">
 
1671
                              <ref name="internal_algorithm"/>
 
1672
                              <ref name="velocity_mesh_choice"/>
 
1673
                              <ref name="diagnostic_scalar_field"/>
 
1674
                            </element>
 
1675
                          </element>
 
1676
                        </optional>
 
1677
                        <optional>
 
1678
                          <element name="scalar_field">
 
1679
                            <attribute name="rank">
 
1680
                              <value>0</value>
 
1681
                            </attribute>
 
1682
                            <attribute name="name">
 
1683
                              <value>TurbulentKineticEnergy_destruction_term</value>
 
1684
                            </attribute>
 
1685
                            <element name="diagnostic">
 
1686
                              <ref name="internal_algorithm"/>
 
1687
                              <ref name="velocity_mesh_choice"/>
 
1688
                              <ref name="diagnostic_scalar_field"/>
 
1689
                            </element>
 
1690
                          </element>
 
1691
                        </optional>
 
1692
                        <optional>
 
1693
                          <element name="scalar_field">
 
1694
                            <attribute name="rank">
 
1695
                              <value>0</value>
 
1696
                            </attribute>
 
1697
                            <attribute name="name">
 
1698
                              <value>TurbulentKineticEnergy_buoyancy_term</value>
 
1699
                            </attribute>
 
1700
                            <element name="diagnostic">
 
1701
                              <ref name="internal_algorithm"/>
 
1702
                              <ref name="velocity_mesh_choice"/>
 
1703
                              <ref name="diagnostic_scalar_field"/>
 
1704
                            </element>
 
1705
                          </element>
 
1706
                        </optional>
 
1707
                        <optional>
 
1708
                          <element name="scalar_field">
 
1709
                            <attribute name="rank">
 
1710
                              <value>0</value>
 
1711
                            </attribute>
 
1712
                            <attribute name="name">
 
1713
                              <value>TurbulentDissipation_production_term</value>
 
1714
                            </attribute>
 
1715
                            <element name="diagnostic">
 
1716
                              <ref name="internal_algorithm"/>
 
1717
                              <ref name="velocity_mesh_choice"/>
 
1718
                              <ref name="diagnostic_scalar_field"/>
 
1719
                            </element>
 
1720
                          </element>
 
1721
                        </optional>
 
1722
                        <optional>
 
1723
                          <element name="scalar_field">
 
1724
                            <attribute name="rank">
 
1725
                              <value>0</value>
 
1726
                            </attribute>
 
1727
                            <attribute name="name">
 
1728
                              <value>TurbulentDissipation_destruction_term</value>
 
1729
                            </attribute>
 
1730
                            <element name="diagnostic">
 
1731
                              <ref name="internal_algorithm"/>
 
1732
                              <ref name="velocity_mesh_choice"/>
 
1733
                              <ref name="diagnostic_scalar_field"/>
 
1734
                            </element>
 
1735
                          </element>
 
1736
                        </optional>
 
1737
                        <optional>
 
1738
                          <element name="scalar_field">
 
1739
                            <attribute name="rank">
 
1740
                              <value>0</value>
 
1741
                            </attribute>
 
1742
                            <attribute name="name">
 
1743
                              <value>TurbulentDissipation_buoyancy_term</value>
 
1744
                            </attribute>
 
1745
                            <element name="diagnostic">
 
1746
                              <ref name="internal_algorithm"/>
 
1747
                              <ref name="velocity_mesh_choice"/>
 
1748
                              <ref name="diagnostic_scalar_field"/>
 
1749
                            </element>
 
1750
                          </element>
 
1751
                        </optional>
 
1752
                      </element>
 
1753
                      <element name="prescribed_source_terms">
 
1754
                        <a:documentation>Enable to apply prescribed source terms into the k and epsilon equations.
 
1755
This is useful for MMS tests</a:documentation>
 
1756
                        <optional>
 
1757
                          <element name="scalar_field">
 
1758
                            <attribute name="rank">
 
1759
                              <value>0</value>
 
1760
                            </attribute>
 
1761
                            <attribute name="name">
 
1762
                              <value>TurbulentKineticEnergyPrescribedSource</value>
 
1763
                            </attribute>
 
1764
                            <element name="prescribed">
 
1765
                              <ref name="velocity_mesh_choice"/>
 
1766
                              <ref name="prescribed_scalar_field"/>
 
1767
                            </element>
 
1768
                          </element>
 
1769
                        </optional>
 
1770
                        <optional>
 
1771
                          <element name="scalar_field">
 
1772
                            <attribute name="rank">
 
1773
                              <value>0</value>
 
1774
                            </attribute>
 
1775
                            <attribute name="name">
 
1776
                              <value>TurbulentDissipationPrescribedSource</value>
 
1777
                            </attribute>
 
1778
                            <element name="prescribed">
 
1779
                              <ref name="velocity_mesh_choice"/>
 
1780
                              <ref name="prescribed_scalar_field"/>
 
1781
                            </element>
 
1782
                          </element>
 
1783
                        </optional>
 
1784
                      </element>
 
1785
                      <optional>
 
1786
                        <element name="disable_production_term">
 
1787
                          <a:documentation>enabling this option disables the production term in the k and epsilon equations</a:documentation>
 
1788
                          <empty/>
 
1789
                        </element>
 
1790
                      </optional>
 
1791
                      <optional>
 
1792
                        <element name="disable_destruction_term">
 
1793
                          <a:documentation>enabling this option disables the destruction term in the k and epsilon equation</a:documentation>
 
1794
                          <empty/>
 
1795
                        </element>
 
1796
                      </optional>
 
1797
                      <optional>
 
1798
                        <element name="disable_buoyancy_term">
 
1799
                          <a:documentation>enabling this option disables the bouyancy term in the k and epsilon equation</a:documentation>
 
1800
                          <empty/>
 
1801
                        </element>
 
1802
                      </optional>
 
1803
                      <optional>
 
1804
                        <element name="enable_lowRe_damping">
 
1805
                          <a:documentation>enabling this option enables the low-Re number damping functions regardless of whether there is
 
1806
a low-Re boundary condition</a:documentation>
 
1807
                          <empty/>
 
1808
                        </element>
 
1809
                      </optional>
 
1810
                      <optional>
 
1811
                        <element name="zero_reynolds_stress_tensor">
 
1812
                          <a:documentation>Enabling this option disables feedback from the k-epsilon model back into 
 
1813
the rest of the model. Reynolds stress tensor is set to zero by zeroing 
 
1814
EddyViscosity and the added source term, based on k, in the momentum equation.
 
1815
Hence, Viscosity will always stay as the BackgroundViscosity,
 
1816
diffusivities will remain at the relevant BackgroundDiffusivity, and the 
 
1817
momentum equation will be as if there were no turbulence model present. 
 
1818
 
 
1819
ScalarEddyViscosity is still calculated as normal.</a:documentation>
 
1820
                          <empty/>
 
1821
                        </element>
 
1822
                      </optional>
 
1823
                    </element>
 
1824
                  </optional>
1501
1825
                </element>
1502
1826
              </optional>
1503
1827
            </element>
1852
2176
                  <ref name="real"/>
1853
2177
                </element>
1854
2178
              </optional>
 
2179
              <optional>
 
2180
                <element name="effective_conductivity">
 
2181
                  <a:documentation>If this is the fluid phase, 
 
2182
the effective conductivity is required 
 
2183
for the inter-phase heat transfer term.</a:documentation>
 
2184
                  <ref name="real"/>
 
2185
                </element>
 
2186
              </optional>
 
2187
              <optional>
 
2188
                <element name="specific_heat">
 
2189
                  <a:documentation>The specific heat (at constant volume) is required 
 
2190
for the inter-phase heat transfer term.</a:documentation>
 
2191
                  <ref name="real"/>
 
2192
                </element>
 
2193
              </optional>
1855
2194
            </element>
1856
2195
          </optional>
1857
2196
          <optional>
2185
2524
      <optional>
2186
2525
        <ref name="flredecomp"/>
2187
2526
      </optional>
 
2527
      <optional>
 
2528
        <ref name="multiphase_interaction"/>
 
2529
      </optional>
2188
2530
    </element>
2189
2531
  </start>
2190
2532
  <define name="sediment">
2191
2533
    <element name="sediment">
2192
 
      <a:documentation>A simple sediment model in which different classes of sediment fall 
2193
 
and diffuse at different rates.</a:documentation>
2194
 
      <element name="scalar_field">
2195
 
        <a:documentation>This field is the basis for all sediment fields. Each
2196
 
sediment class has a sediment field with name
2197
 
SedimentClassName where ClassName is the name of the
2198
 
class.
2199
 
 
2200
 
By default, all sediment classes have exactly the same
2201
 
characteristics, however each class can be given its own
2202
 
settling velocity, diffusivity and initial condition under
2203
 
the sediment_class element and this will override the
2204
 
default specified here.</a:documentation>
2205
 
        <attribute name="rank">
2206
 
          <value>0</value>
2207
 
        </attribute>
2208
 
        <attribute name="name">
2209
 
          <value>SedimentTemplate</value>
2210
 
        </attribute>
2211
 
        <element name="prognostic">
2212
 
          <a:documentation>Field type</a:documentation>
2213
 
          <ref name="velocity_mesh_choice"/>
2214
 
          <ref name="prognostic_scalar_field"/>
2215
 
        </element>
2216
 
        <optional>
2217
 
          <element name="density">
2218
 
            <a:documentation>This is the density of this sediment. It will be used
2219
 
with the sediment concentration in the equation of state.
2220
 
Density must be specified here or for each sediment class.</a:documentation>
2221
 
            <ref name="real"/>
2222
 
          </element>
2223
 
        </optional>
2224
 
        <optional>
2225
 
          <element name="diameter">
2226
 
            <a:documentation>This is the diameter of the grain in mm.
 
2534
      <a:documentation>A sediment model. See the manual for details on how to use this model.</a:documentation>
 
2535
      <zeroOrMore>
 
2536
        <element name="scalar_field">
 
2537
          <a:documentation>A single sediment field with discrete characteristics
 
2538
 
 
2539
Notes: 
 
2540
 
 
2541
- a sinking velocity is required for sediment fields, this can be set for each
 
2542
sediment field under prognostic/SinkingVelocity
 
2543
 
 
2544
- continuity must be the same for all fields. i.e. use the same mesh for all fields
 
2545
 
 
2546
- rentrainment bc's can be used to allow sediment to be picked up from the bed
 
2547
due to turbulence. This must be set on the same boundaries as the SedimentDepositon
 
2548
field
 
2549
 
 
2550
- see the manual for more details on how to use this model </a:documentation>
 
2551
          <attribute name="rank">
 
2552
            <value>0</value>
 
2553
          </attribute>
 
2554
          <attribute name="name">
 
2555
            <data type="string" datatypeLibrary=""/>
 
2556
          </attribute>
 
2557
          <element name="prognostic">
 
2558
            <a:documentation>Field type</a:documentation>
 
2559
            <ref name="velocity_mesh_choice"/>
 
2560
            <ref name="prognostic_scalar_field"/>
 
2561
            <element name="scalar_field">
 
2562
              <a:documentation>Sediment bedload diagnostic which records the sediment 
 
2563
deposited through the prescribed boundary.
 
2564
 
 
2565
The units are in unit distances as a depth of sediment.</a:documentation>
 
2566
              <attribute name="rank">
 
2567
                <value>0</value>
 
2568
              </attribute>
 
2569
              <attribute name="name">
 
2570
                <value>Bedload</value>
 
2571
              </attribute>
 
2572
              <choice>
 
2573
                <a:documentation>Field type</a:documentation>
 
2574
                <element name="diagnostic">
 
2575
                  <element name="surface_ids">
 
2576
                    <a:documentation>Surface ids over which to calculate the bedload:</a:documentation>
 
2577
                    <ref name="integer_vector"/>
 
2578
                  </element>
 
2579
                  <ref name="diagnostic_scalar_field"/>
 
2580
                </element>
 
2581
                <element name="prescribed">
 
2582
                  <element name="surface_ids">
 
2583
                    <a:documentation>Surface ids over which to calculate the bedload deposition:</a:documentation>
 
2584
                    <ref name="integer_vector"/>
 
2585
                  </element>
 
2586
                  <ref name="prescribed_scalar_field"/>
 
2587
                </element>
 
2588
              </choice>
 
2589
            </element>
 
2590
            <element name="scalar_field">
 
2591
              <a:documentation>Sediment bedload diagnostic which records the sediment 
 
2592
deposited through the prescribed boundary.
 
2593
 
 
2594
The units are in unit distances/second.</a:documentation>
 
2595
              <attribute name="rank">
 
2596
                <value>0</value>
 
2597
              </attribute>
 
2598
              <attribute name="name">
 
2599
                <value>BedloadVolumeFraction</value>
 
2600
              </attribute>
 
2601
              <element name="diagnostic">
 
2602
                <a:documentation>Field type</a:documentation>
 
2603
                <ref name="diagnostic_scalar_field"/>
 
2604
              </element>
 
2605
            </element>
 
2606
            <optional>
 
2607
              <element name="scalar_field">
 
2608
                <a:documentation>Sediment bedload deposit rate diagnostic.
 
2609
 
 
2610
The units are in unit distances/second.</a:documentation>
 
2611
                <attribute name="rank">
 
2612
                  <value>0</value>
 
2613
                </attribute>
 
2614
                <attribute name="name">
 
2615
                  <value>BedloadDepositRate</value>
 
2616
                </attribute>
 
2617
                <element name="diagnostic">
 
2618
                  <a:documentation>Field type</a:documentation>
 
2619
                  <ref name="diagnostic_scalar_field"/>
 
2620
                </element>
 
2621
              </element>
 
2622
            </optional>
 
2623
            <optional>
 
2624
              <element name="scalar_field">
 
2625
                <a:documentation>Sediment bedload erosion rate diagnostic.
 
2626
 
 
2627
The units are in unit distances as a depth of sediment.</a:documentation>
 
2628
                <attribute name="rank">
 
2629
                  <value>0</value>
 
2630
                </attribute>
 
2631
                <attribute name="name">
 
2632
                  <value>BedloadErosionRate</value>
 
2633
                </attribute>
 
2634
                <element name="diagnostic">
 
2635
                  <a:documentation>Field type</a:documentation>
 
2636
                  <ref name="diagnostic_scalar_field"/>
 
2637
                </element>
 
2638
              </element>
 
2639
            </optional>
 
2640
            <optional>
 
2641
              <element name="scalar_field">
 
2642
                <a:documentation>This is the unhindered sinking velocity of the sediment particles. 
 
2643
 
 
2644
With the sinking velocity field set to diagnostic, this field is used, along with the sediment 
 
2645
concentration, to calculate the hindered sinking velocity of sediment particles. 
 
2646
 
 
2647
This uses the equation developed by Richardson and Zaki [1954]. 
 
2648
 
 
2649
If the 'SinkingVelocity' is not set to diagnostic, this field will not be used.
 
2650
 
 
2651
As with the sinking velocity, this velocity is in the direction of gravity so if the substance
 
2652
floats upwards, this field should be negative.</a:documentation>
 
2653
                <attribute name="name">
 
2654
                  <value>UnhinderedSinkingVelocity</value>
 
2655
                </attribute>
 
2656
                <attribute name="rank">
 
2657
                  <value>0</value>
 
2658
                </attribute>
 
2659
                <element name="prescribed">
 
2660
                  <ref name="prescribed_scalar_field"/>
 
2661
                </element>
 
2662
              </element>
 
2663
            </optional>
 
2664
            <element name="submerged_specific_gravity">
 
2665
              <a:documentation>This is the submerged specific gravity, R, of this sediment. 
 
2666
It will be used with the sediment concentration in the equation
 
2667
of state, as well as in erosion algorithms.
 
2668
 
 
2669
R = (rho_s - rho_a)/(rho_a)
 
2670
 
 
2671
Where: rho_s is the sediment density and rho_a is the ambient fluid density</a:documentation>
 
2672
              <ref name="real"/>
 
2673
            </element>
 
2674
            <optional>
 
2675
              <element name="diameter">
 
2676
                <a:documentation>This is the diameter of the grain.
2227
2677
Diameter must be specified here or under each sediment class.</a:documentation>
2228
 
            <ref name="real"/>
2229
 
          </element>
2230
 
        </optional>
2231
 
        <optional>
2232
 
          <element name="porosity">
2233
 
            <a:documentation>Set porosity to use. Default is 0.3. 1.0 is a sold material.</a:documentation>
2234
 
            <ref name="real"/>
2235
 
          </element>
2236
 
        </optional>
2237
 
        <optional>
2238
 
          <element name="erodability">
2239
 
            <a:documentation>Erodability of the sediment grain. A value of one means that only the
 
2678
                <ref name="real"/>
 
2679
              </element>
 
2680
            </optional>
 
2681
            <optional>
 
2682
              <element name="bed_porosity">
 
2683
                <a:documentation>Set porosity to use. Default is 0.3. 1.0 is a sold material.</a:documentation>
 
2684
                <ref name="real"/>
 
2685
              </element>
 
2686
            </optional>
 
2687
            <optional>
 
2688
              <element name="erodability">
 
2689
                <a:documentation>Erodability of the sediment grain. A value of one means that only the
2240
2690
critical shear stress is used to determine if a grain can be put into 
2241
2691
suspension. A value of zero means these grains can never be resuspended.
2242
2692
Default is 1.</a:documentation>
2243
 
            <ref name="real"/>
2244
 
          </element>
2245
 
        </optional>
2246
 
        <optional>
2247
 
          <element name="critical_shear_stress">
2248
 
            <a:documentation>Critical shear stress of a grain. If not switched on a value
 
2693
                <ref name="real"/>
 
2694
              </element>
 
2695
            </optional>
 
2696
            <optional>
 
2697
              <element name="critical_shear_stress">
 
2698
                <a:documentation>Critical shear stress of a grain. If not switched on a value
2249
2699
will be computed according to the particle Reynolds number and Shield's
2250
 
criterion. Otherwise inoput a value in Nm-1</a:documentation>
2251
 
            <ref name="real"/>
2252
 
          </element>
2253
 
        </optional>
2254
 
      </element>
2255
 
      <element name="scalar_field">
2256
 
        <a:documentation>This field is the template for the sediment flux
2257
 
diagnostic which records the flux of sediment through the
2258
 
domain boundary.</a:documentation>
2259
 
        <attribute name="rank">
2260
 
          <value>0</value>
2261
 
        </attribute>
2262
 
        <attribute name="name">
2263
 
          <value>SedimentFluxTemplate</value>
2264
 
        </attribute>
2265
 
        <element name="diagnostic">
2266
 
          <a:documentation>Field type</a:documentation>
2267
 
          <element name="surface_ids">
2268
 
            <a:documentation>Surface ids over which to calculate the flux:</a:documentation>
2269
 
            <ref name="integer_vector"/>
2270
 
          </element>
2271
 
          <ref name="velocity_mesh_choice"/>
2272
 
          <ref name="diagnostic_scalar_field"/>
2273
 
        </element>
2274
 
      </element>
2275
 
      <oneOrMore>
2276
 
        <element name="sediment_class">
 
2700
criterion.</a:documentation>
 
2701
                <ref name="real"/>
 
2702
              </element>
 
2703
            </optional>
 
2704
          </element>
 
2705
        </element>
 
2706
      </zeroOrMore>
 
2707
      <element name="scalar_field">
 
2708
        <a:documentation>The median sediment diameter in the active layer of the bed. 
 
2709
Required for some reentrainment algorithms.</a:documentation>
 
2710
        <attribute name="rank">
 
2711
          <value>0</value>
 
2712
        </attribute>
 
2713
        <attribute name="name">
 
2714
          <value>SedimentBedActiveLayerD50</value>
 
2715
        </attribute>
 
2716
        <element name="diagnostic">
 
2717
          <element name="surface_ids">
 
2718
            <a:documentation>Surface ids over which to calculate the bedload:</a:documentation>
 
2719
            <ref name="integer_vector"/>
 
2720
          </element>
 
2721
          <ref name="internal_algorithm"/>
 
2722
          <ref name="velocity_mesh_choice"/>
 
2723
          <ref name="diagnostic_scalar_field"/>
 
2724
        </element>
 
2725
      </element>
 
2726
      <element name="scalar_field">
 
2727
        <a:documentation>The standard deviation of sediment in the active layer of the
 
2728
bed. Required for some reentrainment algorithms</a:documentation>
 
2729
        <attribute name="rank">
 
2730
          <value>0</value>
 
2731
        </attribute>
 
2732
        <attribute name="name">
 
2733
          <value>SedimentBedActiveLayerSigma</value>
 
2734
        </attribute>
 
2735
        <element name="diagnostic">
 
2736
          <element name="surface_ids">
 
2737
            <a:documentation>Surface ids over which to calculate the bedload:</a:documentation>
 
2738
            <ref name="integer_vector"/>
 
2739
          </element>
 
2740
          <ref name="internal_algorithm"/>
 
2741
          <ref name="velocity_mesh_choice"/>
 
2742
          <ref name="diagnostic_scalar_field"/>
 
2743
        </element>
 
2744
      </element>
 
2745
      <optional>
 
2746
        <element name="tensor_field">
 
2747
          <a:documentation>ZeroSedimentConcentrationViscosity field:
 
2748
 
 
2749
Field for the viscosity of this a fluid with zero 
 
2750
concentration of sediment.
 
2751
Required if using a diagnostic viscosity
 
2752
in a sediment problem where sediment concentration
 
2753
dependent viscosity is required.</a:documentation>
 
2754
          <attribute name="rank">
 
2755
            <value>2</value>
 
2756
          </attribute>
2277
2757
          <attribute name="name">
2278
 
            <data type="string"/>
 
2758
            <value>ZeroSedimentConcentrationViscosity</value>
2279
2759
          </attribute>
2280
 
          <zeroOrMore>
2281
 
            <ref name="initial_condition_scalar"/>
2282
 
          </zeroOrMore>
2283
 
          <zeroOrMore>
2284
 
            <ref name="scalar_boundary_conditions"/>
2285
 
          </zeroOrMore>
2286
 
          <optional>
2287
 
            <element name="tensor_field">
2288
 
              <a:documentation>Diffusivity for sediment class</a:documentation>
2289
 
              <attribute name="name">
2290
 
                <value>Diffusivity</value>
2291
 
              </attribute>
2292
 
              <attribute name="rank">
2293
 
                <value>2</value>
2294
 
              </attribute>
2295
 
              <choice>
2296
 
                <element name="prescribed">
2297
 
                  <optional>
2298
 
                    <ref name="mesh_choice"/>
2299
 
                  </optional>
2300
 
                  <ref name="prescribed_tensor_field_no_adapt"/>
2301
 
                </element>
2302
 
                <element name="diagnostic">
2303
 
                  <ref name="tensor_python_diagnostic_algorithm"/>
2304
 
                  <ref name="diagnostic_tensor_field"/>
2305
 
                </element>
2306
 
              </choice>
2307
 
            </element>
2308
 
          </optional>
2309
 
          <optional>
2310
 
            <element name="scalar_field">
2311
 
              <a:documentation>Velocity at which this sediment sinks through the water column.
2312
 
 
2313
 
This velocity is in the direction of gravity so if the substance
2314
 
floats upwards, this field should be negative.</a:documentation>
2315
 
              <attribute name="name">
2316
 
                <value>SinkingVelocity</value>
2317
 
              </attribute>
2318
 
              <attribute name="rank">
2319
 
                <value>0</value>
2320
 
              </attribute>
2321
 
              <element name="prescribed">
2322
 
                <ref name="prescribed_scalar_field_no_adapt"/>
2323
 
              </element>
2324
 
            </element>
2325
 
          </optional>
2326
 
          <optional>
2327
 
            <element name="density">
2328
 
              <a:documentation>This is the density of this sediment. It will be used
2329
 
with the sediment concentration in the equation of state.</a:documentation>
2330
 
              <ref name="real"/>
2331
 
            </element>
2332
 
          </optional>
2333
 
          <optional>
2334
 
            <element name="diameter">
2335
 
              <a:documentation>This is the diamter of the grain in mm</a:documentation>
2336
 
              <ref name="real"/>
2337
 
            </element>
2338
 
          </optional>
2339
 
          <optional>
2340
 
            <element name="erodability">
2341
 
              <a:documentation>Erodability of the sediment grain. A value of one means that only the
2342
 
critical shear stress is used to determine if a grain can be put into 
2343
 
suspension. A value of zero means these grains can never be resuspended.
2344
 
Default is 1.</a:documentation>
2345
 
              <ref name="real"/>
2346
 
            </element>
2347
 
          </optional>
2348
 
          <optional>
2349
 
            <element name="critical_shear_stress">
2350
 
              <a:documentation>Critical shear stress of a grain. If not switched on a value
2351
 
will be computed according to the particle Reynolds number and Shield's
2352
 
criterion. Otherwise inoput a value in Nm-1</a:documentation>
2353
 
              <ref name="real"/>
2354
 
            </element>
2355
 
          </optional>
 
2760
          <choice>
 
2761
            <element name="prescribed">
 
2762
              <ref name="velocity_mesh_choice"/>
 
2763
              <ref name="prescribed_tensor_field"/>
 
2764
            </element>
 
2765
            <element name="aliased">
 
2766
              <ref name="generic_aliased_field"/>
 
2767
            </element>
 
2768
          </choice>
2356
2769
        </element>
2357
 
      </oneOrMore>
 
2770
      </optional>
2358
2771
    </element>
2359
2772
  </define>
2360
2773
  <define name="prognostic_density_field">
2861
3274
    <element name="density">
2862
3275
      <ref name="real"/>
2863
3276
    </element>
2864
 
    <element name="drag_coefficient">
2865
 
      <ref name="real"/>
 
3277
    <element name="calculation_method">
 
3278
      <a:documentation>Three options for calculation of bed shear stress are available:</a:documentation>
 
3279
      <choice>
 
3280
        <element name="drag_coefficient">
 
3281
          <a:documentation>density*drag_coeff*|u|*u 
 
3282
This is calculated at all boundaries</a:documentation>
 
3283
          <ref name="real"/>
 
3284
        </element>
 
3285
        <element name="velocity_gradient">
 
3286
          <a:documentation>velocity_gradient - nu * grad(u)
 
3287
This uses the velocity gradient at the boundaries to calculate the 
 
3288
bed shear stress. Valid for non parameterised velocity boundaries</a:documentation>
 
3289
          <empty/>
 
3290
        </element>
 
3291
        <element name="wall_treatment">
 
3292
          <a:documentation>This diagnostic can only be used in conjunction with a near-wall treatment
 
3293
velocity boundary condition. It is calculated at the same time as that boundary condition.
 
3294
The shear stress depends upon parameters set for the near-wall treatment algorithm.</a:documentation>
 
3295
          <empty/>
 
3296
        </element>
 
3297
      </choice>
2866
3298
    </element>
2867
3299
    <ref name="diagnostic_output_options"/>
2868
3300
    <ref name="diagnostic_vector_stat_options"/>
4955
5387
        </choice>
4956
5388
      </element>
4957
5389
      <element name="scalar_field">
 
5390
        <a:documentation>Buoyancy Adjustment diffusivity
 
5391
 
 
5392
The element-wise diffusion applied
 
5393
in the buoyancy adjustment by vertical mixing
 
5394
scheme available for tracer fields.
 
5395
 
 
5396
This is an element-wise P0 field, so it is best
 
5397
calculated in a discontinuous function space.</a:documentation>
 
5398
        <attribute name="rank">
 
5399
          <value>0</value>
 
5400
        </attribute>
 
5401
        <attribute name="name">
 
5402
          <value>BuoyancyAdjustmentDiffusivity</value>
 
5403
        </attribute>
 
5404
        <choice>
 
5405
          <element name="diagnostic">
 
5406
            <ref name="internal_algorithm"/>
 
5407
            <ref name="velocity_mesh_choice"/>
 
5408
            <ref name="diagnostic_scalar_field"/>
 
5409
          </element>
 
5410
          <element name="aliased">
 
5411
            <ref name="generic_aliased_field"/>
 
5412
          </element>
 
5413
        </choice>
 
5414
      </element>
 
5415
      <element name="scalar_field">
4958
5416
        <a:documentation>The equilibrium pressure perturbation 
4959
5417
 
4960
5418
Further details to be added
5935
6393
          </element>
5936
6394
        </element>
5937
6395
      </element>
 
6396
      <element name="scalar_field">
 
6397
        <a:documentation>CompressibleContinuityResidual
 
6398
 
 
6399
Computes the residual of the continuity equation used in compressible multiphase flow simulations
 
6400
i.e. vfrac_c*d(rho_c)/dt + div(rho_c*vfrac_c*u_c) + \sum_i{ rho_c*div(vfrac_i*u_i) }
 
6401
where _c and _i denote the compressible and incompressible phases respectively.</a:documentation>
 
6402
        <attribute name="rank">
 
6403
          <value>0</value>
 
6404
        </attribute>
 
6405
        <attribute name="name">
 
6406
          <value>CompressibleContinuityResidual</value>
 
6407
        </attribute>
 
6408
        <element name="diagnostic">
 
6409
          <ref name="velocity_mesh_choice"/>
 
6410
          <ref name="internal_algorithm"/>
 
6411
          <ref name="diagnostic_scalar_field_no_adapt"/>
 
6412
          <element name="solver">
 
6413
            <ref name="linear_solver_options_sym"/>
 
6414
          </element>
 
6415
        </element>
 
6416
      </element>
5938
6417
    </choice>
5939
6418
    <!--
5940
6419
      Insert new diagnostic scalar fields here using the template: