OGS
fractureflow.prj
<
OpenGeoSysProject
>
<
meshes
>
<
mesh
>fractureflow.vtu</mesh>
<
mesh
>fractureflow_left.vtu</mesh>
<
mesh
>fractureflow_top.vtu</mesh>
<
mesh
>fractureflow_bottom.vtu</mesh>
</meshes>
<
processes
>
<
process
>
<
name
>HMPhaseField</name>
<
type
>
HM_PHASE_FIELD
</type>
<
coupling_scheme
>staggered</coupling_scheme>
<
fixed_stress_stabilization_parameter
>0.0</fixed_stress_stabilization_parameter>
<
spatial_stabilization_parameter
>0.0</spatial_stabilization_parameter>
<
integration_order
>2</integration_order>
<
phasefield_model
>AT1</phasefield_model>
<
energy_split_model
>Isotropic</energy_split_model>
<
irreversible_threshold
>0.1</irreversible_threshold>
<constitutive_relation>
<type>
LinearElasticIsotropic
</type>
<
youngs_modulus
>E</youngs_modulus>
<
poissons_ratio
>nu</poissons_ratio>
</constitutive_relation>
<
phasefield_parameters
>
<
residual_stiffness
>k</residual_stiffness>
<
crack_resistance
>gc</crack_resistance>
<
crack_length_scale
>ls</crack_length_scale>
</phasefield_parameters>
<
width_init
>w_ini</width_init>
<
fluid_compressibility
>4.55e-10</fluid_compressibility>
<
diffused_range_parameter
>2</diffused_range_parameter>
<
fracture_threshold
>0.05</fracture_threshold>
<
fracture_permeability_parameter
>10.</fracture_permeability_parameter>
<
process_variables
>
<
phasefield
>phasefield</phasefield>
<
pressure
>pressure</pressure>
<
displacement
>displacement</displacement>
</process_variables>
<
secondary_variables
>
<
secondary_variable
name="sigma" />
<
secondary_variable
name="epsilon" />
</secondary_variables>
<
specific_body_force
>0 0</specific_body_force>
<
specific_fracture_direction
>0 1</specific_fracture_direction>
</process>
</processes>
<
media
>
<
medium
>
<
phases
>
<
phase
>
<
type
>
AqueousLiquid
</type>
<
properties
>
<
property
>
<
name
>viscosity</name>
<
type
>
Constant
</type>
<
value
>1e-3</value>
</property>
<
property
>
<
name
>density</name>
<
type
>
Constant
</type>
<
value
>1e3</value>
</property>
</properties>
</phase>
<
phase
>
<
type
>
Solid
</type>
<
properties
>
<
property
>
<
name
>density</name>
<
type
>
Constant
</type>
<
value
>2.7e3</value>
</property>
<
property
>
<
name
>biot_coefficient</name>
<
type
>
Constant
</type>
<
value
>0.0</value>
</property>
</properties>
</phase>
</phases>
<
properties
>
<
property
>
<
name
>reference_temperature</name>
<
type
>
Constant
</type>
<
value
>293.15</value>
</property>
<
property
>
<
name
>porosity</name>
<
type
>
Constant
</type>
<
value
>0.0</value>
</property>
<
property
>
<
name
>permeability</name>
<
type
>
Constant
</type>
<
value
>1e-20</value>
</property>
</properties>
</medium>
</media>
<
time_loop
>
<
global_process_coupling
>
<
max_iter
>1000</max_iter>
<
convergence_criteria
>
<
convergence_criterion
>
<type>
DeltaX
</type>
<norm_type>NORM2</norm_type>
<abstol>1.e-11</abstol>
<reltol>1.e-10</reltol>
</convergence_criterion>
<
convergence_criterion
>
<type>
DeltaX
</type>
<norm_type>NORM2</norm_type>
<abstol>1.e-11</abstol>
<reltol>1.e-10</reltol>
</convergence_criterion>
<
convergence_criterion
>
<type>
DeltaX
</type>
<norm_type>NORM2</norm_type>
<abstol>1.e-11</abstol>
<reltol>1.e-10</reltol>
</convergence_criterion>
</convergence_criteria>
</global_process_coupling>
<
processes
>
<
process
ref
="HMPhaseField">
<
nonlinear_solver
>petsc_snes</nonlinear_solver>
<
convergence_criterion
>
<
type
>
DeltaX
</type>
<
norm_type
>NORM2</norm_type>
<
abstol
>1e-12</abstol>
<
reltol
>1.e-10</reltol>
</convergence_criterion>
<
time_discretization
>
<
type
>
BackwardEuler
</type>
</time_discretization>
<
time_stepping
>
<
type
>
FixedTimeStepping
</type>
<
t_initial
>0</t_initial>
<
t_end
>6.82e-3</t_end>
<
timesteps
>
<
pair
>
<
repeat
>1</repeat>
<
delta_t
>6.82e-4</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<
process
ref
="HMPhaseField">
<
process_name
>pressure</process_name>
<
nonlinear_solver
>basic_newton_p</nonlinear_solver>
<
convergence_criterion
>
<
type
>
DeltaX
</type>
<
norm_type
>NORM2</norm_type>
<
abstol
>1e-12</abstol>
<
reltol
>1.e-10</reltol>
</convergence_criterion>
<
time_discretization
>
<
type
>
BackwardEuler
</type>
</time_discretization>
<
time_stepping
>
<
type
>
FixedTimeStepping
</type>
<
t_initial
>0</t_initial>
<
t_end
>6.82e-3</t_end>
<
timesteps
>
<
pair
>
<
repeat
>1</repeat>
<
delta_t
>6.82e-4</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<
process
ref
="HMPhaseField">
<
process_name
>displacement</process_name>
<
nonlinear_solver
>basic_newton_u</nonlinear_solver>
<
convergence_criterion
>
<
type
>
DeltaX
</type>
<
norm_type
>NORM2</norm_type>
<
abstol
>1e-12</abstol>
<
reltol
>1.e-10</reltol>
</convergence_criterion>
<
time_discretization
>
<
type
>
BackwardEuler
</type>
</time_discretization>
<
time_stepping
>
<
type
>
FixedTimeStepping
</type>
<
t_initial
>0</t_initial>
<
t_end
>6.82e-3</t_end>
<
timesteps
>
<
pair
>
<
repeat
>1</repeat>
<
delta_t
>6.82e-4</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
</processes>
<
output
>
<
type
>
VTK
</type>
<
prefix
>fractureflow</prefix>
<
variables
>
<
variable
>displacement</variable>
<
variable
>phasefield</variable>
<
variable
>pressure</variable>
<
variable
>sigma</variable>
<
variable
>epsilon</variable>
<
variable
>damage</variable>
<
variable
>width</variable>
<
variable
>initial_width</variable>
</variables>
<
output_iteration_results
>false</output_iteration_results>
<
timesteps
>
<
pair
>
<
repeat
>1</repeat>
<
each_steps
>1</each_steps>
</pair>
</timesteps>
</output>
</time_loop>
<
parameters
>
<
parameter
>
<
name
>E</name>
<
type
>
Constant
</type>
<
value
>20e9</value>
</parameter>
<
parameter
>
<
name
>nu</name>
<
type
>
Constant
</type>
<
value
>0.2</value>
</parameter>
<
parameter
>
<
name
>k</name>
<
type
>
Constant
</type>
<
value
>1e-8</value>
</parameter>
<
parameter
>
<
name
>gc</name>
<
type
>
Constant
</type>
<
value
>300</value>
</parameter>
<
parameter
>
<
name
>ls</name>
<
type
>
Constant
</type>
<
value
>0.02</value>
</parameter>
<
parameter
>
<
name
>displacement0</name>
<
type
>
Constant
</type>
<
values
>0 0</values>
</parameter>
<
parameter
>
<
name
>phasefield_ic</name>
<
type
>
MeshNode
</type>
<
field_name
>pf-ic</field_name>
</parameter>
<
parameter
>
<
name
>phasefield_bc</name>
<
type
>
Constant
</type>
<
value
>1.</value>
</parameter>
<
parameter
>
<
name
>pressure_ic</name>
<
type
>
Constant
</type>
<
value
>0.</value>
</parameter>
<
parameter
>
<
name
>pressure_bc</name>
<
type
>
Constant
</type>
<
value
>9.5e6</value>
</parameter>
<
parameter
>
<
name
>dirichlet0</name>
<
type
>
Constant
</type>
<
value
>0</value>
</parameter>
<
parameter
>
<
name
>w_ini</name>
<
type
>
MeshElement
</type>
<
field_name
>initial_width</field_name>
</parameter>
</parameters>
<
process_variables
>
<
process_variable
>
<
name
>phasefield</name>
<
components
>1</components>
<
order
>1</order>
<
initial_condition
>phasefield_ic</initial_condition>
<
boundary_conditions
>
<
boundary_condition
>
<
mesh
>fractureflow_top</mesh>
<
type
>
Dirichlet
</type>
<
component
>0</component>
<
parameter
>phasefield_bc</parameter>
</boundary_condition>
<
boundary_condition
>
<
mesh
>fractureflow_bottom</mesh>
<
type
>
Dirichlet
</type>
<
component
>0</component>
<
parameter
>phasefield_bc</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<
process_variable
>
<
name
>pressure</name>
<
components
>1</components>
<
order
>1</order>
<
initial_condition
>pressure_ic</initial_condition>
<
boundary_conditions
>
<
boundary_condition
>
<
mesh
>fractureflow_left</mesh>
<
type
>
Dirichlet
</type>
<
component
>0</component>
<
parameter
>pressure_bc</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<
process_variable
>
<
name
>displacement</name>
<
components
>2</components>
<
order
>1</order>
<
initial_condition
>displacement0</initial_condition>
<
boundary_conditions
>
<
boundary_condition
>
<
mesh
>fractureflow</mesh>
<
type
>
Dirichlet
</type>
<
component
>0</component>
<
parameter
>dirichlet0</parameter>
</boundary_condition>
<
boundary_condition
>
<
mesh
>fractureflow</mesh>
<
type
>
Dirichlet
</type>
<
component
>1</component>
<
parameter
>dirichlet0</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
</process_variables>
<
nonlinear_solvers
>
<
nonlinear_solver
>
<
name
>petsc_snes</name>
<
type
>
PETScSNES
</type>
<
max_iter
>50</max_iter>
<
linear_solver
>linear_solver_d</linear_solver>
</nonlinear_solver>
<
nonlinear_solver
>
<
name
>basic_newton_u</name>
<
type
>
Newton
</type>
<
max_iter
>100</max_iter>
<
linear_solver
>linear_solver_u</linear_solver>
</nonlinear_solver>
<
nonlinear_solver
>
<
name
>basic_newton_p</name>
<
type
>
Newton
</type>
<
max_iter
>500</max_iter>
<
linear_solver
>linear_solver_p</linear_solver>
</nonlinear_solver>
</nonlinear_solvers>
<
linear_solvers
>
<
linear_solver
>
<
name
>linear_solver_d</name>
<
eigen
>
<
solver_type
>BiCGSTAB</solver_type>
<
precon_type
>ILUT</precon_type>
<
max_iteration_step
>100</max_iteration_step>
<
error_tolerance
>1e-16</error_tolerance>
</eigen>
<
petsc
>
<
parameters
>-ksp_type bcgs -pc_type bjacobi -ksp_atol 1e-15 -ksp_rtol 1e-15 -snes_type vinewtonrsls -snes_linesearch_type l2 -snes_atol 1.e-12 -snes_rtol 1.e-10 -snes_max_it 1000 -snes_monitor</parameters>
</petsc>
</linear_solver>
<
linear_solver
>
<
name
>linear_solver_u</name>
<
eigen
>
<
solver_type
>BiCGSTAB</solver_type>
<
precon_type
>ILUT</precon_type>
<
max_iteration_step
>10000</max_iteration_step>
<
error_tolerance
>1e-16</error_tolerance>
</eigen>
<
petsc
>
<
prefix
>u</prefix>
<
parameters
>-u_ksp_type bcgs -u_pc_type hypre -u_pc_hypre_type boomeramg -u_pc_hypre_boomeramg_strong_threshold 0.7 -u_ksp_atol 1e-12 -u_ksp_rtol 1e-10</parameters>
</petsc>
</linear_solver>
<
linear_solver
>
<
name
>linear_solver_p</name>
<
eigen
>
<
solver_type
>BiCGSTAB</solver_type>
<
precon_type
>ILUT</precon_type>
<
max_iteration_step
>10000</max_iteration_step>
<
error_tolerance
>1e-16</error_tolerance>
</eigen>
<
petsc
>
<
prefix
>p</prefix>
<
parameters
>-p_ksp_type bcgs -p_pc_type hypre -p_pc_hypre_type boomeramg -p_pc_hypre_boomeramg_strong_threshold 0.7 -p_ksp_atol 1e-8 -p_ksp_rtol 1e-10</parameters>
</petsc>
</linear_solver>
</linear_solvers>
<
test_definition
>
<
vtkdiff
>
<
file
>fractureflow_ts_10_t_0.006820.vtu</file>
<
field
>pressure</field>
<
absolute_tolerance
>1e-11</absolute_tolerance>
<
relative_tolerance
>1e-10</relative_tolerance>
</vtkdiff>
</test_definition>
</OpenGeoSysProject>
OGS CTests—Project Files
HMPhaseField
LiquidFlowInFracture
Generated by
1.14.0