OGS
|
<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>
<python_script>neumann.py</python_script>
<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>1e5 1e5 1e5 1e5 1e5 1e5 1e5 1e5 1e2 1e2 1e2 1e2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2</component_magnitudes>
<relative_epsilons>1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08</relative_epsilons>
</jacobian_assembler>
<reference_temperature>T_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="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="solid_density" output_name="solid_density" />
<secondary_variable internal_name="vapour_pressure" output_name="vapour_pressure" />
<secondary_variable internal_name="porosity" output_name="porosity" />
<secondary_variable internal_name="saturation" output_name="saturation" />
<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_variable internal_name="relative_permeability_gas" output_name="k_rel_G" />
<secondary_variable internal_name="relative_permeability_liquid" output_name="k_rel_L" />
</secondary_variables>
<specific_body_force>0 0</specific_body_force>
</process>
</processes>
<media>
<medium id="0">
<phases>
<phase>
<type>Gas</type>
<properties>
<property>
<name>specific_heat_capacity</name>
<type>Constant</type>
<value>1000</value>
</property>
<property>
<name>thermal_conductivity</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>molar_mass</name>
<type>Constant</type>
<value>0.01</value>
</property>
<property>
<name>density</name>
<type>Constant</type>
<value>0.01</value>
</property>
<property>
<name>viscosity</name>
<type>Constant</type>
<value>1.0e-5</value>
</property>
</properties>
</phase>
<phase>
<type>AqueousLiquid</type>
<properties>
<property>
<name>molar_mass</name>
<type>Constant</type>
<value>0.01</value>
</property>
<property>
<name>specific_heat_capacity</name>
<type>Constant</type>
<value>2000.0</value>
</property>
<property>
<name>thermal_conductivity</name>
<type>Constant</type>
<value>2.2</value>
</property>
<property>
<name>density</name>
<type>Constant</type>
<value>1000</value>
</property>
<property>
<name>viscosity</name>
<type>Constant</type>
<value>1.e-3</value>
</property>
</properties>
</phase>
<phase>
<type>Solid</type>
<properties>
<property>
<name>density</name>
<type>Constant</type>
<value>1000.0</value>
</property>
<property>
<name>thermal_conductivity</name>
<type>Constant</type>
<value>2.2</value>
</property>
<property>
<name>specific_heat_capacity</name>
<type>Constant</type>
<value>2000</value>
</property>
<property>
<name>thermal_expansivity</name>
<type>Constant</type>
<value>0.0</value>
</property>
</properties>
</phase>
</phases>
<properties>
<property>
<name>permeability</name>
<type>Constant</type>
<value>3e-12</value>
</property>
<property>
<name>biot_coefficient</name>
<type>Constant</type>
<value>1.0</value>
</property>
<property>
<name>saturation</name>
<type>Constant</type>
<value>1.</value>
</property>
<property>
<name>relative_permeability</name>
<type>Constant</type>
<value>1.0</value>
</property>
<property>
<name>relative_permeability_nonwetting_phase</name>
<type>Constant</type>
<value>1.0</value>
</property>
<property>
<name>porosity</name>
<type>Constant</type>
<value>0.15</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-12 1e-12 1e-12 1e-12 1e-12</abstols>
<reltols>1e-12 1e-12 1e-10 1e-15 1e-15</reltols>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0</t_initial>
<t_end>864000</t_end>
<timesteps>
<pair>
<repeat>20</repeat>
<delta_t>43200</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
</processes>
<output>
<type>VTK</type>
<prefix>result_ogata-banks</prefix>
<timesteps>
<pair>
<repeat>1</repeat>
<each_steps>10</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>solid_density</variable>
<variable>vapour_pressure</variable>
<variable>porosity</variable>
<variable>saturation</variable>
<variable>xnGC</variable>
<variable>xmGC</variable>
<variable>xmWL</variable>
<variable>rhoG_hG_dot</variable>
<variable>rhoL_hL_dot</variable>
<variable>k_rel_G</variable>
<variable>k_rel_L</variable>
</variables>
</output>
</time_loop>
<parameters>
<parameter>
<name>E</name>
<type>Constant</type>
<value>21.e6</value>
</parameter>
<parameter>
<name>nu</name>
<type>Constant</type>
<value>0.3</value>
</parameter>
<parameter>
<name>T_ic</name>
<type>Constant</type>
<value>300</value>
</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>pGR_ic</name>
<type>Constant</type>
<value>200000</value>
</parameter>
<parameter>
<name>pCap_ic</name>
<type>Constant</type>
<value>100000</value>
</parameter>
<parameter>
<name>pGR_left</name>
<type>Constant</type>
<value>300000</value>
</parameter>
<parameter>
<name>pCap_left</name>
<type>Constant</type>
<value>100000</value>
</parameter>
<parameter>
<name>T_left</name>
<type>Constant</type>
<value>330</value>
</parameter>
<parameter>
<name>neumann_correction</name>
<type>Function</type>
<expression>-1000*4000*300*1.5e-9</expression>
</parameter>
</parameters>
<curves>
<curve>
<name>timeRamp</name>
<coords>0 10 1e99</coords>
<values>0 1 1</values>
</curve>
</curves>
<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>0</component>
<parameter>zero</parameter>
</boundary_condition>
<boundary_condition>
<mesh>domain</mesh>
<type>Dirichlet</type>
<component>1</component>
<parameter>zero</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>gas_pressure</name>
<components>1</components>
<order>1</order>
<initial_condition>pGR_ic</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>boundary_left</mesh>
<type>Dirichlet</type>
<component>0</component>
<parameter>pGR_left</parameter>
</boundary_condition>
<boundary_condition>
<mesh>boundary_right</mesh>
<type>Dirichlet</type>
<component>0</component>
<parameter>pGR_ic</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>capillary_pressure</name>
<components>1</components>
<order>1</order>
<initial_condition>pCap_ic</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>boundary_left</mesh>
<type>Dirichlet</type>
<component>0</component>
<parameter>pCap_left</parameter>
</boundary_condition>
<boundary_condition>
<mesh>boundary_right</mesh>
<type>Dirichlet</type>
<component>0</component>
<parameter>pCap_ic</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>temperature</name>
<components>1</components>
<order>1</order>
<initial_condition>T_ic</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>boundary_left</mesh>
<type>Dirichlet</type>
<component>0</component>
<parameter>T_left</parameter>
</boundary_condition>
<boundary_condition>
<mesh>boundary_right</mesh>
<type>Python</type>
<bc_object>neumann_correction</bc_object>
</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 10000</lis>
<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_ogata-banks_ts_.*.vtu</regex>
<field>gas_pressure_interpolated</field>
<absolute_tolerance>1e-06</absolute_tolerance>
<relative_tolerance>0</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>result_ogata-banks_ts_.*.vtu</regex>
<field>capillary_pressure_interpolated</field>
<absolute_tolerance>1e-5</absolute_tolerance>
<relative_tolerance>0</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>result_ogata-banks_ts_.*.vtu</regex>
<field>temperature_interpolated</field>
<absolute_tolerance>2e-09</absolute_tolerance>
<relative_tolerance>0</relative_tolerance>
</vtkdiff>
</test_definition>
</OpenGeoSysProject>