Skip to content
Snippets Groups Projects
Commit 0be9c2ba authored by Tom Fischer's avatar Tom Fischer
Browse files

[PL/HT] Add tests for the balance/flux calculation.

parent 1d9aa9a1
No related branches found
No related tags found
No related merge requests found
Showing
with 627 additions and 0 deletions
......@@ -244,3 +244,37 @@ AddTest(
CoupledPressureParabolicTemperatureParabolic_ts_10_expected.vtu CoupledPressureParabolicTemperatureParabolic_pcs_0_ts_10_t_1.000000.vtu p p 1e-10 1e-16
CoupledPressureParabolicTemperatureParabolic_ts_10_expected.vtu CoupledPressureParabolicTemperatureParabolic_pcs_0_ts_10_t_1.000000.vtu darcy_velocity darcy_velocity 1e-10 1e-16
)
AddTest(
NAME HT_Balance
PATH Parabolic/HT/SimpleSynthetics
EXECUTABLE ogs
EXECUTABLE_ARGS balance_ht_cube_1e3.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
flux_1e3_t_0.000000_expected.vtu flux_1e3_t_0.000000.vtu flux flux 1e-10 1e-16
flux_1e3_t_0.000010_expected.vtu flux_1e3_t_0.000010.vtu flux flux 1e-10 1e-16
flux_1e3_t_0.001010_expected.vtu flux_1e3_t_0.001010.vtu flux flux 1e-10 1e-16
flux_1e3_t_0.101010_expected.vtu flux_1e3_t_0.101010.vtu flux flux 1e-10 1e-16
flux_1e3_t_1.101010_expected.vtu flux_1e3_t_1.101010.vtu flux flux 1e-10 1e-16
flux_1e3_t_10.000000_expected.vtu flux_1e3_t_10.000000.vtu flux flux 1e-10 1e-16
)
AddTest(
NAME LARGE_HT_Balance
PATH Parabolic/HT/SimpleSynthetics
EXECUTABLE ogs
EXECUTABLE_ARGS balance_ht_cube_1e4.prj
WRAPPER time
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
flux_1e4_t_0.000000_expected.vtu flux_1e4_t_0.000000.vtu flux flux 1e-10 1e-16
flux_1e4_t_0.000010_expected.vtu flux_1e4_t_0.000010.vtu flux flux 1e-10 1e-16
flux_1e4_t_0.001010_expected.vtu flux_1e4_t_0.001010.vtu flux flux 1e-10 1e-16
flux_1e4_t_0.101010_expected.vtu flux_1e4_t_0.101010.vtu flux flux 1e-10 1e-16
flux_1e4_t_1.101010_expected.vtu flux_1e4_t_1.101010.vtu flux flux 1e-10 1e-16
flux_1e4_t_10.000000_expected.vtu flux_1e4_t_10.000000.vtu flux flux 1e-10 1e-16
)
<?xml version="1.0" encoding="ISO-8859-1"?>
<OpenGeoSysProject>
<mesh>cube_1x1x1_hex_1e3.vtu</mesh>
<geometry>cube_1x1x1.gml</geometry>
<processes>
<process>
<name>SimpleThermalConvection</name>
<type>HT</type>
<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>
<thermal_dispersivity>
<longitudinal>alpha_l</longitudinal>
<transversal>alpha_t</transversal>
</thermal_dispersivity>
<specific_body_force>0 0 0</specific_body_force>
<secondary_variables>
<secondary_variable type="static" internal_name="darcy_velocity" output_name="darcy_velocity"/>
</secondary_variables>
<calculatesurfaceflux>
<mesh>cube_1x1x1_hex_1e3_complete_surface.vtu</mesh>
<property_name>flux</property_name>
<output_mesh>flux_1e3.vtu</output_mesh>
</calculatesurfaceflux>
</process>
</processes>
<time_loop>
<processes>
<process ref="SimpleThermalConvection">
<nonlinear_solver>basic_picard</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>p</variable>
<variable>darcy_velocity</variable>
</variables>
</output>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial> 0.0 </t_initial>
<t_end> 10 </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>
</timesteps>
</time_stepping>
</process>
</processes>
<output>
<type>VTK</type>
<prefix>ConstViscosityThermalConvection</prefix>
<timesteps>
<pair>
<repeat> 10 </repeat>
<each_steps> 1 </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>Constant</type>
<value>20</value>
</parameter>
<parameter>
<name>P0</name>
<type>Constant</type>
<value>2.99e7</value>
</parameter>
<parameter>
<name>p_Dirichlet_left</name>
<type>Constant</type>
<value>3e7</value>
</parameter>
<parameter>
<name>p_Dirichlet_right</name>
<type>Constant</type>
<value>2.99e7</value>
</parameter>
<parameter>
<name>t_Dirichlet_left</name>
<type>Constant</type>
<value>20</value>
</parameter>
<parameter>
<name>t_Dirichlet_right</name>
<type>Constant</type>
<value>10</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 0 1.e-14 0 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>cube_1x1x1_geometry</geometrical_set>
<geometry>left</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_left</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>cube_1x1x1_geometry</geometrical_set>
<geometry>right</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_right</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>cube_1x1x1_geometry</geometrical_set>
<geometry>left</geometry>
<type>Dirichlet</type>
<parameter>p_Dirichlet_left</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>cube_1x1x1_geometry</geometrical_set>
<geometry>right</geometry>
<type>Dirichlet</type>
<parameter>p_Dirichlet_right</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
</process_variables>
<nonlinear_solvers>
<nonlinear_solver>
<name>basic_picard</name>
<type>Picard</type>
<max_iter>1000</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 jacobi -tol 1e-12 -maxiter 10000</lis>
<petsc>
<prefix>T</prefix>
<parameters> -T_ksp_type bcgs -T_pc_type bjacobi -T_ksp_rtol 1e-16 -T_ksp_max_it 4000</parameters>
</petsc>
<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>
</linear_solver>
</linear_solvers>
</OpenGeoSysProject>
<?xml version="1.0" encoding="ISO-8859-1"?>
<OpenGeoSysProject>
<mesh>cube_1x1x1_hex_1e4.vtu</mesh>
<geometry>cube_1x1x1.gml</geometry>
<processes>
<process>
<name>SimpleThermalConvection</name>
<type>HT</type>
<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>
<thermal_dispersivity>
<longitudinal>alpha_l</longitudinal>
<transversal>alpha_t</transversal>
</thermal_dispersivity>
<specific_body_force>0 0 0</specific_body_force>
<secondary_variables>
<secondary_variable type="static" internal_name="darcy_velocity" output_name="darcy_velocity"/>
</secondary_variables>
<calculatesurfaceflux>
<mesh>cube_1x1x1_hex_1e4_complete_surface.vtu</mesh>
<property_name>flux</property_name>
<output_mesh>flux_1e4.vtu</output_mesh>
</calculatesurfaceflux>
</process>
</processes>
<time_loop>
<processes>
<process ref="SimpleThermalConvection">
<nonlinear_solver>basic_picard</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>p</variable>
<variable>darcy_velocity</variable>
</variables>
</output>
<time_stepping>
<type>FixedTimeStepping</type>
<t_initial> 0.0 </t_initial>
<t_end> 10 </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>
</timesteps>
</time_stepping>
</process>
</processes>
<output>
<type>VTK</type>
<prefix>ConstViscosityThermalConvection</prefix>
<timesteps>
<pair>
<repeat> 10 </repeat>
<each_steps> 1 </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>Constant</type>
<value>20</value>
</parameter>
<parameter>
<name>P0</name>
<type>Constant</type>
<value>2.99e7</value>
</parameter>
<parameter>
<name>p_Dirichlet_left</name>
<type>Constant</type>
<value>3e7</value>
</parameter>
<parameter>
<name>p_Dirichlet_right</name>
<type>Constant</type>
<value>2.99e7</value>
</parameter>
<parameter>
<name>t_Dirichlet_left</name>
<type>Constant</type>
<value>20</value>
</parameter>
<parameter>
<name>t_Dirichlet_right</name>
<type>Constant</type>
<value>10</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 0 1.e-14 0 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>cube_1x1x1_geometry</geometrical_set>
<geometry>left</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_left</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>cube_1x1x1_geometry</geometrical_set>
<geometry>right</geometry>
<type>Dirichlet</type>
<parameter>t_Dirichlet_right</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>cube_1x1x1_geometry</geometrical_set>
<geometry>left</geometry>
<type>Dirichlet</type>
<parameter>p_Dirichlet_left</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>cube_1x1x1_geometry</geometrical_set>
<geometry>right</geometry>
<type>Dirichlet</type>
<parameter>p_Dirichlet_right</parameter>
</boundary_condition>
</boundary_conditions>
</process_variable>
</process_variables>
<nonlinear_solvers>
<nonlinear_solver>
<name>basic_picard</name>
<type>Picard</type>
<max_iter>1000</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 jacobi -tol 1e-12 -maxiter 10000</lis>
<petsc>
<prefix>T</prefix>
<parameters> -T_ksp_type bcgs -T_pc_type bjacobi -T_ksp_rtol 1e-16 -T_ksp_max_it 4000</parameters>
</petsc>
<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>
</linear_solver>
</linear_solvers>
</OpenGeoSysProject>
Source diff could not be displayed: it is stored in LFS. Options to address this: view the blob.
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
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