OGS
diffusion.prj
<OpenGeoSysProject>
  <meshes>
    <mesh axially_symmetric="false">domain.vtu</mesh>
    <mesh axially_symmetric="false">boundary_left.vtu</mesh>
    <mesh axially_symmetric="false">boundary_right.vtu</mesh>
    <mesh axially_symmetric="false">boundary_top.vtu</mesh>
    <mesh axially_symmetric="false">boundary_bottom.vtu</mesh>
  </meshes>
  <processes>
    <process>
      <name>TH2M</name>
      <type>TH2M</type>
      <integration_order>2</integration_order>
      <constitutive_relation>
        <type>LinearElasticIsotropic</type>
        <youngs_modulus>E</youngs_modulus>
        <poissons_ratio>nu</poissons_ratio>
      </constitutive_relation>
      <jacobian_assembler>
        <type>CentralDifferences</type>
        <component_magnitudes>1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0</component_magnitudes>
        <relative_epsilons>1e-02 1e-02 1e-02 1e-02 1e-02 1e-02 1e-02 1e-02 1e-06 1e-06 1e-06 1e-06 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08</relative_epsilons>
      </jacobian_assembler>
      <reference_temperature>temperature_ic</reference_temperature>
      <process_variables>
        <gas_pressure>gas_pressure</gas_pressure>
        <capillary_pressure>capillary_pressure</capillary_pressure>
        <temperature>temperature</temperature>
        <displacement>displacement</displacement>
      </process_variables>
      <secondary_variables>
        <secondary_variable internal_name="velocity_gas" output_name="velocity_gas" />
        <secondary_variable internal_name="velocity_liquid" output_name="velocity_liquid" />
        <secondary_variable internal_name="diffusion_velocity_vapour_gas" output_name="d_WG" />
        <secondary_variable internal_name="diffusion_velocity_gas_gas" output_name="d_CG" />
        <secondary_variable internal_name="diffusion_velocity_solute_liquid" output_name="d_CL" />
        <secondary_variable internal_name="diffusion_velocity_liquid_liquid" output_name="d_WL" />
        <secondary_variable internal_name="sigma" output_name="sigma" />
        <secondary_variable internal_name="epsilon" output_name="epsilon" />
        <secondary_variable internal_name="liquid_density" output_name="liquid_density" />
        <secondary_variable internal_name="gas_density" output_name="gas_density" />
        <secondary_variable internal_name="porosity" output_name="porosity" />
        <secondary_variable internal_name="saturation" output_name="saturation" />
        <secondary_variable internal_name="vapour_pressure" output_name="vapour_pressure" />
        <secondary_variable internal_name="mole_fraction_gas" output_name="xnCG" />
        <secondary_variable internal_name="mass_fraction_gas" output_name="xmCG" />
        <secondary_variable internal_name="mass_fraction_liquid" output_name="xmWL" />
      </secondary_variables>
      <specific_body_force>0 0</specific_body_force>
      <mass_lumping>false</mass_lumping>
    </process>
  </processes>
  <media>
    <medium>
      <phases>
        <phase>
          <type>AqueousLiquid</type>
          <components>
            <component>
              <name>A</name>
              <properties>
                <property>
                  <name>specific_heat_capacity</name>
                  <type>Constant</type>
                  <value>733</value>
                </property>
                <property>
                  <name>henry_coefficient</name>
                  <type>Constant</type>
                  <value>7.65e-6</value>
                </property>
                <property>
                  <name>diffusion</name>
                  <type>Constant</type>
                  <value>1e-9</value>
                </property>
                <property>
                  <name>specific_latent_heat</name>
                  <type>Constant</type>
                  <value>0</value>
                </property>
              </properties>
            </component>
            <component>
              <name>W</name>
              <properties>
                <property>
                  <name>specific_heat_capacity</name>
                  <type>Constant</type>
                  <value>4187</value>
                </property>
              </properties>
            </component>
          </components>
          <properties>
            <property>
              <name>thermal_conductivity</name>
              <type>Constant</type>
              <value>0.6</value>
            </property>
            <property>
              <name>density</name>
              <type>Linear</type>
              <reference_value>1000</reference_value>
              <independent_variable>
                <variable_name>concentration</variable_name>
                <reference_condition>0</reference_condition>
                <slope>2.e-6</slope>
              </independent_variable>
            </property>
            <property>
              <name>viscosity</name>
              <type>Constant</type>
              <value>1.e-3</value>
            </property>
          </properties>
        </phase>
        <phase>
          <type>Gas</type>
          <components>
            <component>
              <name>A</name>
              <properties>
                <property>
                  <name>molar_mass</name>
                  <type>Constant</type>
                  <value>0.002</value>
                </property>
                <property>
                  <name>specific_heat_capacity</name>
                  <type>Constant</type>
                  <value>733</value>
                </property>
              </properties>
            </component>
            <component>
              <name>W</name>
              <properties>
                <property>
                  <name>molar_mass</name>
                  <type>Constant</type>
                  <value>0.01</value>
                </property>
                <property>
                  <name>specific_heat_capacity</name>
                  <type>Constant</type>
                  <value>4187</value>
                </property>
                <property>
                  <name>specific_latent_heat</name>
                  <type>Constant</type>
                  <value>2258000</value>
                </property>
                <property>
                  <name>vapour_pressure</name>
                  <type>Constant</type>
                  <value>0.0</value>
                </property>
                <property>
                  <name>diffusion</name>
                  <type>Constant</type>
                  <value>0.0</value>
                </property>
              </properties>
            </component>
          </components>
          <properties>
            <property>
              <name>thermal_conductivity</name>
              <type>Constant</type>
              <value>0.6</value>
            </property>
            <property>
              <name>density</name>
              <type>Constant</type>
              <value>1</value>
            </property>
            <property>
              <name>viscosity</name>
              <type>Constant</type>
              <value>9.e-6</value>
            </property>
          </properties>
        </phase>
        <phase>
          <type>Solid</type>
          <properties>
            <property>
              <name>density</name>
              <type>Constant</type>
              <value>2.e3</value>
            </property>
            <property>
              <name>thermal_conductivity</name>
              <type>Constant</type>
              <value>1.838</value>
            </property>
            <property>
              <name>specific_heat_capacity</name>
              <type>Constant</type>
              <value>917.654</value>
            </property>
            <property>
              <name>thermal_expansivity</name>
              <type>Constant</type>
              <value>0</value>
            </property>
          </properties>
        </phase>
      </phases>
      <properties>
        <property>
          <name>permeability</name>
          <type>Constant</type>
          <value>5.e-20</value>
        </property>
        <property>
          <name>biot_coefficient</name>
          <type>Constant</type>
          <value>1.0</value>
        </property>
        <property>
          <name>saturation</name>
          <type>SaturationVanGenuchten</type>
          <residual_liquid_saturation>0.4</residual_liquid_saturation>
          <residual_gas_saturation>0.0</residual_gas_saturation>
          <p_b>2.e6</p_b>
          <exponent>0.3288591</exponent>
        </property>
        <property>
          <name>relative_permeability_nonwetting_phase</name>
          <type>RelativePermeabilityNonWettingPhaseVanGenuchtenMualem</type>
          <residual_liquid_saturation>0.4</residual_liquid_saturation>
          <residual_gas_saturation>0.0</residual_gas_saturation>
          <exponent>0.3288591</exponent>
          <min_relative_permeability>1e-9</min_relative_permeability>
        </property>
        <property>
          <name>relative_permeability</name>
          <type>RelativePermeabilityVanGenuchten</type>
          <residual_liquid_saturation>0.4</residual_liquid_saturation>
          <residual_gas_saturation>0.0</residual_gas_saturation>
          <exponent>0.3288591</exponent>
          <minimum_relative_permeability_liquid>1e-12</minimum_relative_permeability_liquid>
        </property>
        <property>
          <name>porosity</name>
          <type>Constant</type>
          <value>0.15</value>
        </property>
        <property>
          <name>tortuosity</name>
          <type>Constant</type>
          <value>1</value>
        </property>
        <property>
          <name>thermal_conductivity</name>
          <type>EffectiveThermalConductivityPorosityMixing</type>
        </property>
        <property>
          <name>bishops_effective_stress</name>
          <type>BishopsPowerLaw</type>
          <exponent>1</exponent>
        </property>
      </properties>
    </medium>
  </media>
  <time_loop>
    <processes>
      <process ref="TH2M">
        <nonlinear_solver>basic_newton</nonlinear_solver>
        <convergence_criterion>
          <type>PerComponentDeltaX</type>
          <norm_type>NORM2</norm_type>
          <abstols>1e-10 1e-10 1e-10 1e-10 1e-10</abstols>
          <reltols>1e-10 1e-10 1e-16 1e-16 1e-16</reltols>
        </convergence_criterion>
        <time_discretization>
          <type>BackwardEuler</type>
        </time_discretization>
        <time_stepping>
          <type>FixedTimeStepping</type>
          <t_initial>0</t_initial>
          <t_end>1e7</t_end>
          <timesteps>
            <pair>
              <repeat>1</repeat>
              <delta_t>5e5</delta_t>
            </pair>
          </timesteps>
        </time_stepping>
      </process>
    </processes>
    <output>
      <type>VTK</type>
      <prefix>result_diffusion</prefix>
      <suffix>t{:gtime}</suffix>
      <timesteps>
        <pair>
          <repeat>1</repeat>
          <each_steps>100000</each_steps>
        </pair>
      </timesteps>
      <variables>
        <variable>gas_pressure</variable>
        <variable>gas_pressure_interpolated</variable>
        <variable>capillary_pressure</variable>
        <variable>capillary_pressure_interpolated</variable>
        <variable>liquid_pressure_interpolated</variable>
        <variable>temperature</variable>
        <variable>temperature_interpolated</variable>
        <variable>displacement</variable>
        <variable>sigma</variable>
        <variable>epsilon</variable>
        <variable>velocity_gas</variable>
        <variable>velocity_liquid</variable>
        <variable>liquid_density</variable>
        <variable>gas_density</variable>
        <variable>porosity</variable>
        <variable>saturation</variable>
        <variable>vapour_pressure</variable>
        <variable>xnCG</variable>
        <variable>xmCG</variable>
        <variable>xmWL</variable>
      </variables>
      <fixed_output_times>1e6 2e6 4e6 6e6 8e6 1e7</fixed_output_times>
    </output>
  </time_loop>
  <parameters>
    <parameter>
      <name>E</name>
      <type>Constant</type>
      <value>5e9</value>
    </parameter>
    <parameter>
      <name>nu</name>
      <type>Constant</type>
      <value>.3</value>
    </parameter>
    <parameter>
      <name>sigma0</name>
      <type>Function</type>
      <expression>101235</expression>
      <expression>101235</expression>
      <expression>0</expression>
      <expression>0</expression>
    </parameter>
    <parameter>
      <name>displacement0</name>
      <type>Constant</type>
      <values>0 0</values>
    </parameter>
    <parameter>
      <name>zero</name>
      <type>Constant</type>
      <value>0</value>
    </parameter>
    <parameter>
      <name>sigma_xx</name>
      <type>Constant</type>
      <value>-100000.</value>
    </parameter>
    <parameter>
      <name>sigma_yy</name>
      <type>Constant</type>
      <value>-100000.</value>
    </parameter>
    <parameter>
      <name>temperature_ic</name>
      <type>Constant</type>
      <value>300</value>
    </parameter>
    <parameter>
      <name>gas_pressure_ic</name>
      <type>Constant</type>
      <value>100000</value>
    </parameter>
    <parameter>
      <name>gas_pressure_left</name>
      <type>Constant</type>
      <value>900000</value>
    </parameter>
    <parameter>
      <name>gas_pressure_right</name>
      <type>Constant</type>
      <value>100000</value>
    </parameter>
    <parameter>
      <name>capillary_pressure_ic</name>
      <type>Constant</type>
      <value>-9e5</value>
    </parameter>
    <parameter>
      <name>capillary_pressure_left</name>
      <type>Constant</type>
      <value>-1e5</value>
    </parameter>
    <parameter>
      <name>capillary_pressure_right</name>
      <type>Constant</type>
      <value>-9e5</value>
    </parameter>
    <parameter>
      <name>gas_production_rate</name>
      <type>Constant</type>
      <value>1.0</value>
    </parameter>
  </parameters>
  <process_variables>
    <process_variable>
      <name>displacement</name>
      <components>2</components>
      <order>1</order>
      <initial_condition>displacement0</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <mesh>domain</mesh>
          <type>Dirichlet</type>
          <component>1</component>
          <parameter>zero</parameter>
        </boundary_condition>
        <boundary_condition>
          <mesh>domain</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>zero</parameter>
        </boundary_condition>
      </boundary_conditions>
    </process_variable>
    <process_variable>
      <name>gas_pressure</name>
      <components>1</components>
      <order>1</order>
      <initial_condition>gas_pressure_ic</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <mesh>boundary_right</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>gas_pressure_right</parameter>
        </boundary_condition>
        <boundary_condition>
          <mesh>boundary_left</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>gas_pressure_left</parameter>
        </boundary_condition>
      </boundary_conditions>
    </process_variable>
    <process_variable>
      <name>capillary_pressure</name>
      <components>1</components>
      <order>1</order>
      <initial_condition>capillary_pressure_ic</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <mesh>boundary_left</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>capillary_pressure_left</parameter>
        </boundary_condition>
        <boundary_condition>
          <mesh>boundary_right</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>capillary_pressure_right</parameter>
        </boundary_condition>
      </boundary_conditions>
    </process_variable>
    <process_variable>
      <name>temperature</name>
      <components>1</components>
      <order>1</order>
      <initial_condition>temperature_ic</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <mesh>domain</mesh>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>temperature_ic</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>
      <eigen>
        <solver_type>SparseLU</solver_type>
        <scaling>true</scaling>
      </eigen>
      <petsc>
        <prefix>sd</prefix>
        <parameters>-ksp_diagonal_scale -ksp_diagonal_scale_fix -ksp_type gmres -ksp_gmres_restart 1000 -ksp_gmres_modifiedgramschmidt -pc_type none -ksp_rtol 1.e-8 -ksp_atol 1.e-8 -ksp_max_it 4000</parameters>
      </petsc>
    </linear_solver>
  </linear_solvers>
  <test_definition>
    <vtkdiff>
      <regex>result_diffusion_t_.*.vtu</regex>
      <field>gas_pressure</field>
      <absolute_tolerance>7e-5</absolute_tolerance>
      <relative_tolerance>0</relative_tolerance>
    </vtkdiff>
    <vtkdiff>
      <regex>result_diffusion_t_.*.vtu</regex>
      <field>capillary_pressure</field>
      <absolute_tolerance>7e-5</absolute_tolerance>
      <relative_tolerance>0</relative_tolerance>
    </vtkdiff>
    <vtkdiff>
      <regex>result_diffusion_t_.*.vtu</regex>
      <field>xmWL</field>
      <absolute_tolerance>1e-9</absolute_tolerance>
      <relative_tolerance>0</relative_tolerance>
    </vtkdiff>
  </test_definition>
</OpenGeoSysProject>