Skip to content
Snippets Groups Projects
Commit 4c88ef16 authored by wenqing's avatar wenqing
Browse files

[Test] Added a new test to solve the HT monolithic test with the staggered scheme

and removed the tests for the staggered scheme from LiquidFlow temporarily.
parent 3943c5b4
No related branches found
No related tags found
No related merge requests found
......@@ -11,7 +11,21 @@ AddTest(
VIS ConstViscosityThermalConvection_pcs_0_ts_149_t_50000000000.000000.vtu
)
# MPI tests
AddTest(
NAME LARGE_2D_ThermalConvection_constviscosityStaggeredScheme
PATH Parabolic/HT/StaggeredCoupling/ConstViscosity
EXECUTABLE ogs
EXECUTABLE_ARGS square_5500x5500_staggered_scheme.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT (OGS_USE_LIS OR OGS_USE_MPI)
DIFF_DATA
square_5500x5500.vtu ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000.000000.vtu T_ref T 1e-16 1.e-16
square_5500x5500.vtu ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000.000000.vtu p_ref p 1e-16 1.e-16
VIS ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000.000000.vtu
)
# MPI/PETSc tests
AddTest(
NAME Parallel_LARGE_2D_ThermalConvection_constviscosity
PATH Parabolic/HT/ConstViscosity
......@@ -30,3 +44,17 @@ AddTest(
ConstViscosityThermalConvection_pcs_0_ts_149_t_50000000000_000000_2.vtu ConstViscosityThermalConvection_pcs_0_ts_149_t_50000000000_000000_2.vtu T T 1e-15 1e-14
ConstViscosityThermalConvection_pcs_0_ts_149_t_50000000000_000000_3.vtu ConstViscosityThermalConvection_pcs_0_ts_149_t_50000000000_000000_3.vtu T T 1e-15 1e-14
)
AddTest(
NAME LARGE_2D_ThermalConvection_constviscosityStaggeredScheme
PATH Parabolic/HT/StaggeredCoupling/ConstViscosity
EXECUTABLE_ARGS square_5500x5500_staggered_scheme.prj
WRAPPER mpirun
WRAPPER_ARGS -np 1
TESTER vtkdiff
REQUIREMENTS OGS_USE_MPI
DIFF_DATA
square_5500x5500.vtu ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000_000000_0.vtu T_ref T 1e-14 1.e-14
square_5500x5500.vtu ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000_000000_0.vtu p_ref p 1e-14 1.e-14
VIS ConstViscosityThermalConvection_pcs_1_ts_149_t_50000000000.000000_0.vtu
)
......@@ -70,61 +70,6 @@ AddTest(
hex.vtu isotropic_gravity_driven3D_pcs_0_ts_1_t_1.000000.vtu analytic_pressure pressure 1e-6 1e-6
)
# Coupling
AddTest(
NAME StaggeredTH_ThermalDensityDrivenFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalDensityDrivenFlow2D
EXECUTABLE ogs
EXECUTABLE_ARGS thermal_gravity_driven_flow2d.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300.000000.vtu OGS5_PRESSURE1 pressure 1.1 1e-7
mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300.000000.vtu OGS5_TEMPERATURE1 temperature 1.1 1e-7
mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300.000000.vtu v_ref v 1.1 1e-7
)
AddTest(
NAME Adaptive_dt_StaggeredTH_ThermalDensityDrivenFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalDensityDrivenFlow2D
EXECUTABLE ogs
EXECUTABLE_ARGS thermal_gravity_driven_flow2d_adaptive_dt.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
mesh2D.vtu gravity_driven_adaptive_dt_pcs_1_ts_10_t_300.000000.vtu OGS5_PRESSURE1 pressure 1.1 1e-6
mesh2D.vtu gravity_driven_adaptive_dt_pcs_1_ts_10_t_300.000000.vtu OGS5_TEMPERATURE1 temperature 1.1 1e-6
mesh2D.vtu gravity_driven_adaptive_dt_pcs_1_ts_10_t_300.000000.vtu v_ref v 1.1 1e-6
)
AddTest(
NAME Adaptive_dt_ThermalConvectionFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalConvection2D
EXECUTABLE ogs
EXECUTABLE_ARGS quad_5500x5500_adaptive_dt.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
ThermalConvection_pcs_1_ts_232_t_50000000000.000000_non_const_mu.vtu ThermalConvection_pcs_1_ts_223_t_50000000000.000000.vtu pressure pressure 1.e-3 1e-10
ThermalConvection_pcs_1_ts_232_t_50000000000.000000_non_const_mu.vtu ThermalConvection_pcs_1_ts_223_t_50000000000.000000.vtu temperature temperature 1.e-3 1e-10
)
AddTest(
NAME Adaptive_dt_ThermalConvectionFlow2D_Constant_Viscosity
PATH StaggeredCoupledProcesses/TH/ThermalConvection2D
EXECUTABLE ogs
EXECUTABLE_ARGS quad_5500x5500_adaptive_dt_constant_viscosity.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu pressure pressure 1.e-16 1e-9
ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu temperature temperature 1.e-16 1e-9
)
#===============================================================================
# PETSc/MPI
AddTest(
......@@ -196,60 +141,3 @@ AddTest(
DIFF_DATA
hex.vtu isotropic_gravity_driven3D_pcs_0_ts_1_t_1_000000_0.vtu analytic_pressure pressure 1e-6 1e-6
)
# Coupling
AddTest(
NAME StaggeredTH_ThermalDensityDrivenFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalDensityDrivenFlow2D
EXECUTABLE_ARGS thermal_gravity_driven_flow2d.prj
WRAPPER mpirun
WRAPPER_ARGS -np 1
TESTER vtkdiff
REQUIREMENTS OGS_USE_MPI
DIFF_DATA
mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300_000000_0.vtu OGS5_PRESSURE1 pressure 1.1 1e-7
mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300_000000_0.vtu OGS5_TEMPERATURE1 temperature 1.1 1e-7
# To be activated when the output of velocity is correct under PETSc version.
# mesh2D.vtu gravity_driven_pcs_1_ts_10_t_300_000000_0.vtu v_ref v 1.1 1e-7
)
AddTest(
NAME Adaptive_dt_StaggeredTH_ThermalDensityDrivenFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalDensityDrivenFlow2D
EXECUTABLE_ARGS thermal_gravity_driven_flow2d_adaptive_dt.prj
WRAPPER mpirun
WRAPPER_ARGS -np 1
TESTER vtkdiff
REQUIREMENTS OGS_USE_MPI
DIFF_DATA
mesh2D.vtu gravity_driven_adaptive_dt_pcs_1_ts_10_t_300_000000_0.vtu OGS5_PRESSURE1 pressure 1.1 1e-7
mesh2D.vtu gravity_driven_adaptive_dt_pcs_1_ts_10_t_300_000000_0.vtu OGS5_TEMPERATURE1 temperature 1.1 1e-7
# To be activated when the output of velocity is correct under PETSc version.
# mesh2D.vtu gravity_driven_pcs_1_ts_5_t_300_000000_0.vtu v_ref v 1.1 1e-7
)
AddTest(
NAME Adaptive_dt_ThermalConvectionFlow2D
PATH StaggeredCoupledProcesses/TH/ThermalConvection2D
EXECUTABLE_ARGS quad_5500x5500_adaptive_dt.prj
WRAPPER mpirun
WRAPPER_ARGS -np 1
TESTER vtkdiff
REQUIREMENTS OGS_USE_MPI
DIFF_DATA
ThermalConvection_pcs_1_ts_232_t_50000000000.000000_non_const_mu.vtu ThermalConvection_pcs_1_ts_223_t_50000000000_000000_0.vtu pressure pressure 1.e-3 1e-10
ThermalConvection_pcs_1_ts_232_t_50000000000.000000_non_const_mu.vtu ThermalConvection_pcs_1_ts_223_t_50000000000_000000_0.vtu temperature temperature 1.e-3 1e-10
)
AddTest(
NAME Adaptive_dt_ThermalConvectionFlow2D_Constant_Viscosity
PATH StaggeredCoupledProcesses/TH/ThermalConvection2D
EXECUTABLE_ARGS quad_5500x5500_adaptive_dt_constant_viscosity.prj
WRAPPER mpirun
WRAPPER_ARGS -np 1
TESTER vtkdiff
REQUIREMENTS OGS_USE_MPI
DIFF_DATA
ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000_000000_0.vtu pressure pressure 1.e-9 1e-9
ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000.000000.vtu ConstViscosityThermalConvection_pcs_1_ts_137_t_50000000000_000000_0.vtu temperature temperature 1.e-9 1e-9
)
Source diff could not be displayed: it is stored in LFS. Options to address this: view the blob.
File added
<?xml version="1.0" encoding="ISO-8859-1"?>
<OpenGeoSysProject>
<mesh>square_5500x5500.vtu</mesh>
<geometry>square_5500x5500.gml</geometry>
<processes>
<process>
<name>ConstViscosityThermalConvection</name>
<type>HT</type>
<coupling_scheme>staggered</coupling_scheme>
<integration_order>2</integration_order>
<process_variables>
<temperature>T</temperature>
<pressure>p</pressure>
</process_variables>
<fluid>
<density>
<type>TemperatureDependent</type>
<rho0>1000</rho0>
<temperature0>20</temperature0>
<beta>4.3e-4</beta>
</density>
<viscosity>
<type>Constant</type>
<value>1.0e-3</value>
</viscosity>
<specific_heat_capacity>
<type>Constant</type>
<value>4200</value>
</specific_heat_capacity>
</fluid>
<porous_medium>
<porous_medium id="0">
<permeability>
<permeability_tensor_entries>kappa1</permeability_tensor_entries>
<type>Constant</type>
</permeability>
<porosity>
<type>Constant</type>
<porosity_parameter>constant_porosity_parameter</porosity_parameter>
</porosity>
<storage>
<type>Constant</type>
<value>0.0</value>
</storage>
</porous_medium>
</porous_medium>
<density_solid>rho_solid</density_solid>
<specific_heat_capacity_solid>c_solid</specific_heat_capacity_solid>
<thermal_conductivity_solid>lambda_solid</thermal_conductivity_solid>
<thermal_conductivity_fluid>lambda_fluid</thermal_conductivity_fluid>
<specific_body_force>0 -9.81</specific_body_force>
<secondary_variables>
<secondary_variable type="static" internal_name="darcy_velocity" output_name="darcy_velocity"/>
</secondary_variables>
</process>
</processes>
<time_loop>
<global_process_coupling>
<max_iter> 6 </max_iter>
<convergence_criterion>
<type>Residual</type>
<norm_type>NORM2</norm_type>
<reltol>1.e-10</reltol>
</convergence_criterion>
</global_process_coupling>
<processes>
<process ref="ConstViscosityThermalConvection">
<nonlinear_solver>picard_T</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<abstol>1.e-3</abstol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<output>
<variables>
<variable>T</variable>
<variable>darcy_velocity</variable>
</variables>
</output>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial> 0.0 </t_initial>
<t_end> 5e10 </t_end>
<timesteps>
<pair>
<repeat>1</repeat>
<delta_t>1e-7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-3</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>10</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>100</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e8</delta_t>
</pair>
<pair>
<repeat>100</repeat>
<delta_t>4e8</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
<process ref="ConstViscosityThermalConvection">
<nonlinear_solver>picard_H</nonlinear_solver>
<convergence_criterion>
<type>DeltaX</type>
<norm_type>NORM2</norm_type>
<abstol>1.e-3</abstol>
</convergence_criterion>
<time_discretization>
<type>BackwardEuler</type>
</time_discretization>
<output>
<variables>
<variable>p</variable>
</variables>
</output>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial> 0.0 </t_initial>
<t_end> 5e10 </t_end>
<timesteps>
<pair>
<repeat>1</repeat>
<delta_t>1e-7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-3</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e-1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>10</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>100</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e4</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e5</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>8e6</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>1e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>4e7</delta_t>
</pair>
<pair>
<repeat>1</repeat>
<delta_t>2e8</delta_t>
</pair>
<pair>
<repeat>100</repeat>
<delta_t>4e8</delta_t>
</pair>
</timesteps>
</time_stepping>
</process>
</processes>
<output>
<type>VTK</type>
<prefix>ConstViscosityThermalConvection</prefix>
<timesteps>
<pair>
<repeat> 1 </repeat>
<each_steps> 149 </each_steps>
</pair>
</timesteps>
</output>
</time_loop>
<parameters>
<parameter>
<name>rho_solid</name>
<type>Constant</type>
<value>0.0</value>
</parameter>
<parameter>
<name>rho_fluid</name>
<type>Constant</type>
<value>1000</value>
</parameter>
<parameter>
<name>lambda_solid</name>
<type>Constant</type>
<value>3.0</value>
</parameter>
<parameter>
<name>lambda_fluid</name>
<type>Constant</type>
<value>0.65</value>
</parameter>
<parameter>
<name>alpha_l</name>
<type>Constant</type>
<value>0.0</value>
</parameter>
<parameter>
<name>alpha_t</name>
<type>Constant</type>
<value>0.0</value>
</parameter>
<parameter>
<name>c_solid</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>T0</name>
<type>MeshNode</type>
<field_name>initial_temperature</field_name>
</parameter>
<parameter>
<name>P0</name>
<type>MeshNode</type>
<field_name>initial_pressure</field_name>
</parameter>
<parameter>
<name>p_Dirichlet_topleft</name>
<type>Constant</type>
<value>0</value>
</parameter>
<parameter>
<name>t_Dirichlet_bottom</name>
<type>Constant</type>
<value>170</value>
</parameter>
<parameter>
<name>t_Dirichlet_top</name>
<type>Constant</type>
<value>20</value>
</parameter>
<parameter>
<name>constant_porosity_parameter</name>
<type>Constant</type>
<value>0.001</value>
</parameter>
<parameter>
<name>kappa1</name>
<type>Constant</type>
<values>1.e-14 0 0 1.e-14</values>
</parameter>
</parameters>
<process_variables>
<process_variable>
<name>T</name>
<components>1</components>
<order>1</order>
<initial_condition>T0</initial_condition>
<boundary_conditions>
<boundary_condition>
<geometrical_set>square_1x1_geometry</geometrical_set>
<geometry>bottom</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_bottom</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>square_1x1_geometry</geometrical_set>
<geometry>top</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_top</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
<process_variable>
<name>p</name>
<components>1</components>
<order>1</order>
<initial_condition>P0</initial_condition>
<boundary_conditions>
<boundary_condition>
<geometrical_set>square_1x1_geometry</geometrical_set>
<geometry>topleft</geometry>
<type>Dirichlet</type>
<parameter>p_Dirichlet_topleft</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
</process_variables>
<nonlinear_solvers>
<nonlinear_solver>
<name>picard_T</name>
<type>Picard</type>
<max_iter>20</max_iter>
<linear_solver>linear_solver_T</linear_solver>
</nonlinear_solver>
<nonlinear_solver>
<name>picard_H</name>
<type>Picard</type>
<max_iter>20</max_iter>
<linear_solver>linear_solver_H</linear_solver>
</nonlinear_solver>
</nonlinear_solvers>
<linear_solvers>
<linear_solver>
<name>linear_solver_T</name>
<lis>-i bicgstab -p ilu -tol 1e-20 -maxiter 10000</lis>
<eigen>
<solver_type>BiCGSTAB</solver_type>
<precon_type>ILUT</precon_type>
<max_iteration_step>10000</max_iteration_step>
<error_tolerance>1e-20</error_tolerance>
</eigen>
<petsc>
<prefix>T</prefix>
<parameters>-T_ksp_type bcgs -T_pc_type bjacobi -T_ksp_rtol 1e-16 -T_ksp_max_it 10000</parameters>
</petsc>
</linear_solver>
<linear_solver>
<name>linear_solver_H</name>
<lis>-i bicgstab -p jacobi -tol 1e-14 -maxiter 10000</lis>
<eigen>
<solver_type>BiCGSTAB</solver_type>
<precon_type>DIAGONAL</precon_type>
<max_iteration_step>10000</max_iteration_step>
<error_tolerance>1e-14</error_tolerance>
</eigen>
<petsc>
<prefix>H</prefix>
<parameters>-H_ksp_type bcgs -H_pc_type mg -H_ksp_rtol 1e-12 -H_ksp_max_it 10000</parameters>
</petsc>
</linear_solver>
</linear_solvers>
</OpenGeoSysProject>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment