OGS
|
<OpenGeoSysProject>
<meshes>
<mesh>RadionuclideSorption.vtu</mesh>
<mesh>RadionuclideSorption_ReactiveDomain.vtu</mesh>
<mesh>RadionuclideSorption_left.vtu</mesh>
<mesh>RadionuclideSorption_right.vtu</mesh>
</meshes>
<processes>
<process>
<name>hc</name>
<type>ComponentTransport</type>
<integration_order>2</integration_order>
<coupling_scheme>staggered</coupling_scheme>
<process_variables>
<concentration>Na</concentration>
<concentration>Cl</concentration>
<concentration>Ca</concentration>
<concentration>C(4)</concentration>
<concentration>H</concentration>
<concentration>U(6)</concentration>
<pressure>pressure</pressure>
</process_variables>
<specific_body_force>0</specific_body_force>
<secondary_variables>
<secondary_variable internal_name="darcy_velocity" output_name="darcy_velocity" />
</secondary_variables>
</process>
</processes>
<media>
<medium id="0">
<phases>
<phase>
<type>AqueousLiquid</type>
<components>
<component>
<name>Na</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
<component>
<name>Cl</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
<component>
<name>Ca</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
<component>
<name>C(4)</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
<component>
<name>H</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
<component>
<name>U(6)</name>
<properties>
<property>
<name>pore_diffusion</name>
<type>Constant</type>
<value>1e-9</value>
</property>
<property>
<name>retardation_factor</name>
<type>Constant</type>
<value>1</value>
</property>
<property>
<name>decay_rate</name>
<type>Parameter</type>
<parameter_name>decay</parameter_name>
</property>
</properties>
</component>
</components>
<properties>
<property>
<name>density</name>
<type>Constant</type>
<value>1e3</value>
</property>
<property>
<name>viscosity</name>
<type>Constant</type>
<value>1e-3</value>
</property>
</properties>
</phase>
<phase>
<type>Solid</type>
<components>
<component>
<name>Calcite</name>
<properties>
<property>
<name>molality</name>
<type>Constant</type>
<value>10</value>
</property>
</properties>
</component>
</components>
</phase>
</phases>
<properties>
<property>
<name>permeability</name>
<type>Parameter</type>
<parameter_name>kappa</parameter_name>
</property>
<property>
<name>porosity</name>
<type>Parameter</type>
<parameter_name>porosity</parameter_name>
</property>
<property>
<name>longitudinal_dispersivity</name>
<type>Constant</type>
<value>0.2</value>
</property>
<property>
<name>transversal_dispersivity</name>
<type>Constant</type>
<value>0.2</value>
</property>
</properties>
</medium>
</media>
<time_loop>
<global_process_coupling>
<max_iter>6</max_iter>
<convergence_criteria>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
</convergence_criteria>
</global_process_coupling>
<processes>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="hc">
<nonlinear_solver>basic_picard</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<reltol>1e-14</reltol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial>0.0</t_initial>
<t_end>115000</t_end>
<timesteps>
<pair>
<repeat>115</repeat>
<delta_t>1000</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
</processes>
<output>
<type>VTK</type>
<prefix>RadionuclideSorption</prefix>
<suffix>ts{:timestep}_t_{:time}</suffix>
<timesteps>
<pair>
<repeat>5</repeat>
<each_steps>23</each_steps>
</pair>
</timesteps>
<variables>
<variable>Na</variable>
<variable>Cl</variable>
<variable>Ca</variable>
<variable>C(4)</variable>
<variable>H</variable>
<variable>U(6)</variable>
<variable>pressure</variable>
<variable>darcy_velocity</variable>
</variables>
</output>
</time_loop>
<chemical_system chemical_solver="Phreeqc">
<mesh>RadionuclideSorption_ReactiveDomain</mesh>
<linear_solver>general_linear_solver</linear_solver>
<database>PSINA_12_07_110615_DAV_s_hzdr.dat</database>
<solution>
<temperature>14</temperature>
<pressure>1</pressure>
<pe>4</pe>
<components>
<component>Na</component>
<component>Cl</component>
<component>Ca</component>
<component>C(4)</component>
<component>U(6)</component>
</components>
</solution>
<equilibrium_reactants>
<phase_component>
<name>Calcite</name>
<saturation_index>0.0</saturation_index>
</phase_component>
</equilibrium_reactants>
<surface site_unit="density">
<site>
<name>QzOH</name>
<site_density>2.31</site_density>
<specific_surface_area>0.007</specific_surface_area>
<mass>9010</mass>
</site>
<site>
<name>AlbOH</name>
<site_density>2.31</site_density>
<specific_surface_area>0.21</specific_surface_area>
<mass>1060</mass>
</site>
<site>
<name>MusOH</name>
<site_density>2.31</site_density>
<specific_surface_area>1.72</specific_surface_area>
<mass>53</mass>
</site>
<site>
<name>HemOH</name>
<site_density>2.31</site_density>
<specific_surface_area>0.26</specific_surface_area>
<mass>53</mass>
</site>
<site>
<name>GibbOH</name>
<site_density>2.31</site_density>
<specific_surface_area>0.11</specific_surface_area>
<mass>53</mass>
</site>
<site>
<name>KaoOH</name>
<site_density>2.31</site_density>
<specific_surface_area>0.07</specific_surface_area>
<mass>159</mass>
</site>
</surface>
<user_punch>
<headline>Kd_U(6)</headline>
<statement>k1=(mol("QzOUO2CO3-") + mol("QzOUO2+")+ mol("QzOUO2(OH)"))</statement>
<statement>k2=(mol("AlbOUO2+"))</statement>
<statement>k3=(mol("MusOUO2+") + mol("MusOUO2CO3-"))</statement>
<statement>k4=(mol("HemOUO2CO3-") + mol("HemOUO2+"))</statement>
<statement>k5=(mol("(GibbO)2UO2") + mol("GibbOUO2(OH)")+ mol("GibbO(UO2)3(OH)5") + mol("GibbOUO2+"))</statement>
<statement>k6=(mol("KaoOUO2+") + mol("KaoOUO2(OH)") + mol("KaoOUO2CO3-"))</statement>
<statement>g_Tot=10388 # Kd = (mol_sorb/g_tot)/(mol_aq) --> Kd in l/g = m³/kg</statement>
<statement>if TOT("U(6)") > 0 then kd_U(6) = ((k1+k2+k3+k4+k5+k6)/TOT("U(6)")/g_tot) else kd_U(6) = 0</statement>
<statement>PUNCH kd_U(6)</statement>
</user_punch>
<knobs>
<max_iter>250</max_iter>
<relative_convergence_tolerance>1e-6</relative_convergence_tolerance>
<tolerance>1e-20</tolerance>
<step_size>5</step_size>
<scaling>1</scaling>
</knobs>
</chemical_system>
<parameters>
<parameter>
<name>kappa</name>
<type>Constant</type>
<values>1.019368e-11</values>
</parameter>
<parameter>
<name>porosity</name>
<type>Constant</type>
<value>0.2</value>
</parameter>
<parameter>
<name>retardation</name>
<type>Constant</type>
<value>1</value>
</parameter>
<parameter>
<name>decay</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>p0</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>p_Neumann_left</name>
<type>Constant</type>
<value>3e-2</value>
</parameter>
<parameter>
<name>p_Dirichlet_right</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>c0_Na</name>
<type>Constant</type>
<value>1e-3</value>
</parameter>
<parameter>
<name>c0_Cl</name>
<type>Constant</type>
<value>6e-2</value>
</parameter>
<parameter>
<name>c0_Ca</name>
<type>Constant</type>
<value>2.502e-2</value>
</parameter>
<parameter>
<name>c0_C(4)</name>
<type>Constant</type>
<value>1e-3</value>
</parameter>
<parameter>
<name>c0_H</name>
<type>Constant</type>
<value>1e-7</value>
</parameter>
<parameter>
<name>c0</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>c_left_Na</name>
<type>Constant</type>
<value>1e-3</value>
</parameter>
<parameter>
<name>c_left_Cl</name>
<type>Constant</type>
<value>6e-2</value>
</parameter>
<parameter>
<name>c_left_Ca</name>
<type>Constant</type>
<value>2.502e-2</value>
</parameter>
<parameter>
<name>c_left_C(4)</name>
<type>Constant</type>
<value>1e-3</value>
</parameter>
<parameter>
<name>c_left_H</name>
<type>Constant</type>
<value>1e-7</value>
</parameter>
<parameter>
<name>c_spatial</name>
<type>Constant</type>
<value>1</value>
</parameter>
<parameter>
<name>c_left_default</name>
<type>CurveScaled</type>
<curve>c_temporal_default</curve>
<parameter>c_spatial</parameter>
</parameter>
</parameters>
<curves>
<curve>
<name>c_temporal_default</name>
<coords>0 10000 10000.001 115000</coords>
<values>1e-8 1e-8 0 0</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>
<mesh>RadionuclideSorption_left</mesh>
<type>Neumann</type>
<parameter>p_Neumann_left</parameter>
</boundary_condition>
<boundary_condition>
<mesh>RadionuclideSorption_right</mesh>
<type>Dirichlet</type>
<parameter>p_Dirichlet_right</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>Na</name>
<components>1</components>
<order>1</order>
<initial_condition>c0_Na</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_Na</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>Cl</name>
<components>1</components>
<order>1</order>
<initial_condition>c0_Cl</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_Cl</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>Ca</name>
<components>1</components>
<order>1</order>
<initial_condition>c0_Ca</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_Ca</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>C(4)</name>
<components>1</components>
<order>1</order>
<initial_condition>c0_C(4)</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_C(4)</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>H</name>
<components>1</components>
<order>1</order>
<initial_condition>c0_H</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_H</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>U(6)</name>
<components>1</components>
<order>1</order>
<initial_condition>c0</initial_condition>
<boundary_conditions>
<boundary_condition>
<mesh>RadionuclideSorption_left</mesh>
<type>Dirichlet</type>
<parameter>c_left_default</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
</process_variables>
<nonlinear_solvers>
<nonlinear_solver>
<name>basic_picard</name>
<type>Picard</type>
<max_iter>10</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 ilut -tol 1e-8 -maxiter 20000</lis>
<eigen>
<solver_type>BiCGSTAB</solver_type>
<precon_type>ILUT</precon_type>
<max_iteration_step>10000</max_iteration_step>
<error_tolerance>1e-12</error_tolerance>
</eigen>
<petsc>
<prefix>hc</prefix>
<parameters>-hc_ksp_type bcgs -hc_pc_type bjacobi -hc_ksp_rtol 1e-8 -hc_ksp_max_it 20000</parameters>
</petsc>
</linear_solver>
</linear_solvers>
<test_definition>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>pressure</field>
<absolute_tolerance>1e-6</absolute_tolerance>
<relative_tolerance>1e-10</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>darcy_velocity</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-6</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>Na</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>Cl</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>Ca</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>C(4)</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>H</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
<vtkdiff>
<regex>RadionuclideSorption_ts_[0-9]*_t_[0-9]*.000000.vtu</regex>
<field>U(6)</field>
<absolute_tolerance>1e-10</absolute_tolerance>
<relative_tolerance>1e-16</relative_tolerance>
</vtkdiff>
</test_definition>
</OpenGeoSysProject>