OGS
RichardsFlow_2d_compare_ogs5.prj
<OpenGeoSysProject>
  <mesh>Richards_2d.vtu</mesh>
  <geometry>Richards_2d.gml</geometry>
  <processes>
    <process>
      <name>GW23</name>
      <type>RICHARDS_FLOW</type>
      <integration_order>2</integration_order>
      <jacobian_assembler>
        <type>CentralDifferences</type>
        <component_magnitudes>1e4</component_magnitudes>
        <relative_epsilons>1e-6</relative_epsilons>
      </jacobian_assembler>
      <process_variables>
        <process_variable>pressure</process_variable>
      </process_variables>
      <secondary_variables>
        <secondary_variable internal_name="saturation" output_name="saturation" />
      </secondary_variables>
      <specific_body_force>0 -9.81</specific_body_force>
      <mass_lumping>true</mass_lumping>
    </process>
  </processes>
  <media>
    <medium id="0">
      <phases>
        <phase>
          <type>AqueousLiquid</type>
          <properties>
            <property>
              <name>viscosity</name>
              <type>Constant</type>
              <value>1.e-3</value>
            </property>
            <property>
              <name>density</name>
              <type>Constant</type>
              <value>1.e3</value>
            </property>
          </properties>
        </phase>
      </phases>
      <properties>
        <property>
          <name>storage</name>
          <type>Constant</type>
          <value>0.0</value>
        </property>
        <property>
          <name>porosity</name>
          <type>Constant</type>
          <value>0.38</value>
        </property>
        <property>
          <name>permeability</name>
          <type>Constant</type>
          <value>4.46e-13</value>
        </property>
        <property>
          <name>relative_permeability</name>
          <type>Curve</type>
          <independent_variable>liquid_saturation</independent_variable>
          <curve>relative_permeability</curve>
        </property>
        <property>
          <name>saturation</name>
          <type>Curve</type>
          <independent_variable>capillary_pressure</independent_variable>
          <curve>capillary_pressure</curve>
        </property>
        <property>
          <name>reference_temperature</name>
          <type>Constant</type>
          <value>293.15</value>
        </property>
      </properties>
    </medium>
  </media>
  <time_loop>
    <processes>
      <process ref="GW23">
        <nonlinear_solver>basic_newton</nonlinear_solver>
        <convergence_criterion>
          <type>DeltaX</type>
          <norm_type>NORM2</norm_type>
          <abstol>1e-11</abstol>
        </convergence_criterion>
        <time_discretization>
          <type>BackwardEuler</type>
        </time_discretization>
        <time_stepping>
          <type>FixedTimeStepping</type>
          <t_initial>0</t_initial>
          <t_end>100</t_end>
          <timesteps>
            <pair>
              <repeat>500</repeat>
              <delta_t>1</delta_t>
            </pair>
            <pair>
              <repeat>500</repeat>
              <delta_t>2</delta_t>
            </pair>
            <pair>
              <repeat>500</repeat>
              <delta_t>1</delta_t>
            </pair>
            <pair>
              <repeat>1300</repeat>
              <delta_t>2</delta_t>
            </pair>
            <pair>
              <repeat>500</repeat>
              <delta_t>1</delta_t>
            </pair>
          </timesteps>
        </time_stepping>
      </process>
    </processes>
    <output>
      <type>VTK</type>
      <prefix>richards</prefix>
      <timesteps>
        <pair>
          <repeat>1</repeat>
          <each_steps>100000000</each_steps>
        </pair>
      </timesteps>
      <output_iteration_results>false</output_iteration_results>
      <variables>
        <variable>pressure</variable>
        <variable>saturation</variable>
      </variables>
      <suffix>ts{:timestep}_t_{:time}</suffix>
    </output>
  </time_loop>
  <parameters>
    <parameter>
      <name>p0</name>
      <type>Constant</type>
      <value>-21500.</value>
    </parameter>
    <parameter>
      <name>p_Dirichlet_bottom</name>
      <type>Constant</type>
      <value>-21500.</value>
    </parameter>
    <parameter>
      <name>p_Dirichlet_top</name>
      <type>Constant</type>
      <value>0.0</value>
    </parameter>
  </parameters>
  <curves>
    <curve>
      <name>capillary_pressure</name>
      <coords>1421.99634 1707.55369 2050.45507 2462.21599 2892.29884 3232.80969 3590.71602 3988.24638 4429.78757 4920.21206 5464.93174 9238.24221 10261.0136 12658.7874 15616.8683 26399.6732 44627.5611</coords>
      <values>1 0.98684211 0.97368421 0.96052632 0.94894737 0.92105263 0.89473684 0.86842105 0.84210526 0.81578947 0.78947368 0.65789474 0.63157895 0.57894737 0.52631579 0.39473684 0.26315789</values>
    </curve>
    <curve>
      <name>relative_permeability</name>
      <coords>0.26315789 0.39473684 0.52631579 0.57894737 0.63157895 0.65789474 0.78947368 0.81578947 0.84210526 0.86842105 0.89473684 0.92105263 0.94894737 0.96052632 0.97368421 0.98684211 1</coords>
      <values>4.43E-05 0.00026547 0.00159003 0.00325358 0.00665757 0.00952343 0.05704014 0.08159396 0.11671736 0.16696017 0.23883078 0.34163922 0.49931406 0.58449912 0.69907308 0.8361059 1</values>
    </curve>
  </curves>
  <process_variables>
    <process_variable>
      <name>pressure</name>
      <components>1</components>
      <order>1</order>
      <initial_condition>p0</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <geometrical_set>Richards_2d_geometry</geometrical_set>
          <geometry>BOTTOM</geometry>
          <type>Dirichlet</type>
          <parameter>p_Dirichlet_bottom</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>Richards_2d_geometry</geometrical_set>
          <geometry>TOP</geometry>
          <type>Dirichlet</type>
          <parameter>p_Dirichlet_top</parameter>
        </boundary_condition>
      </boundary_conditions>
    </process_variable>
  </process_variables>
  <nonlinear_solvers>
    <nonlinear_solver>
      <name>basic_newton</name>
      <type>Newton</type>
      <max_iter>50</max_iter>
      <linear_solver>general_linear_solver</linear_solver>
    </nonlinear_solver>
  </nonlinear_solvers>
  <linear_solvers>
    <linear_solver>
      <name>general_linear_solver</name>
      <lis>-i bicgstab -p ilu -tol 1e-16 -maxiter 5000 -print mem</lis>
      <eigen>
        <solver_type>BiCGSTAB</solver_type>
        <precon_type>ILUT</precon_type>
        <max_iteration_step>5000</max_iteration_step>
        <error_tolerance>1e-16</error_tolerance>
      </eigen>
      <petsc>
        <prefix>r</prefix>
        <parameters>-r_ksp_type bicg -r_pc_type bjacobi -r_ksp_rtol 1e-16 -r_ksp_max_it 10000</parameters>
      </petsc>
    </linear_solver>
  </linear_solvers>
</OpenGeoSysProject>