From 2b9f6a8f9c5b8ba698283cb1bde739c75ba01ab2 Mon Sep 17 00:00:00 2001 From: Thomas Fischer <thomas.fischer@ufz.de> Date: Mon, 13 Jan 2020 17:48:23 +0100 Subject: [PATCH] [T/LF] 2D-test for flux computation. --- ProcessLib/LiquidFlow/Tests.cmake | 17 +- ...aceflux_pcs_0_ts_1_t_0.432000_expected.vtu | 3 + ...aceflux_pcs_0_ts_2_t_0.864000_expected.vtu | 3 + .../2D/square_1e1_calculatesurfaceflux.prj | 177 ++++++++++++++++++ .../Flux/2D/square_1x1_quad_1e1.vtu | 3 + .../square_1x1_quad_1e1_complete_surface.vtu | 3 + ...hlet_specific_flux_t_0.432000_expected.vtu | 3 + ...hlet_specific_flux_t_0.864000_expected.vtu | 3 + .../Flux/2D/square_1x1_quad_1e1_left.vtu | 3 + .../Flux/2D/square_1x1_quad_1e1_right.vtu | 3 + 10 files changed, 217 insertions(+), 1 deletion(-) create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1e1_calculatesurfaceflux.prj create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000_expected.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000_expected.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_left.vtu create mode 100644 Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_right.vtu diff --git a/ProcessLib/LiquidFlow/Tests.cmake b/ProcessLib/LiquidFlow/Tests.cmake index 8b394628e14..bc1354b31c7 100644 --- a/ProcessLib/LiquidFlow/Tests.cmake +++ b/ProcessLib/LiquidFlow/Tests.cmake @@ -366,7 +366,7 @@ AddTest( ) AddTest( - NAME LiquidFlow_Flux + NAME LiquidFlow_Flux_3D PATH Parabolic/LiquidFlow/Flux EXECUTABLE ogs EXECUTABLE_ARGS cube_1e3_calculatesurfaceflux.prj @@ -379,3 +379,18 @@ AddTest( LF_cube_1e3_calculatesurfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu LF_cube_1e3_calculatesurfaceflux_pcs_0_ts_1_t_0.432000.vtu pressure pressure 1e-7 1e-13 LF_cube_1e3_calculatesurfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu LF_cube_1e3_calculatesurfaceflux_pcs_0_ts_2_t_0.864000.vtu pressure pressure 1e-7 1e-13 ) + +AddTest( + NAME LiquidFlow_Flux_2D + PATH Parabolic/LiquidFlow/Flux/2D + EXECUTABLE ogs + EXECUTABLE_ARGS square_1e1_calculatesurfaceflux.prj + WRAPPER time + TESTER vtkdiff + REQUIREMENTS NOT OGS_USE_MPI + DIFF_DATA + square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000_expected.vtu square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000.vtu specific_flux specific_flux 1e-7 1e-13 + square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000_expected.vtu square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000.vtu specific_flux specific_flux 1e-7 1e-13 + LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000.vtu pressure pressure 1e-7 1e-13 + LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000.vtu pressure pressure 1e-7 1e-13 +) diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu new file mode 100644 index 00000000000..7e3987acfb3 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_1_t_0.432000_expected.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a09fca3e1cf6cc900db49ed46c6bb874a291a41cead6e334b24f35504003510b +size 3284 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu new file mode 100644 index 00000000000..92c9ace5027 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/LF_square_1e1_surfaceflux_pcs_0_ts_2_t_0.864000_expected.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:960089f24280fbce95e7f376a4fb9a1caa3da98457fcc83ed4b3736e19c3df54 +size 3256 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1e1_calculatesurfaceflux.prj b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1e1_calculatesurfaceflux.prj new file mode 100644 index 00000000000..4cf7d704cad --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1e1_calculatesurfaceflux.prj @@ -0,0 +1,177 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<OpenGeoSysProject> + <meshes> + <mesh>square_1x1_quad_1e1.vtu</mesh> + <mesh>square_1x1_quad_1e1_complete_surface.vtu</mesh> + <mesh>square_1x1_quad_1e1_left.vtu</mesh> + <mesh>square_1x1_quad_1e1_right.vtu</mesh> + </meshes> + <processes> + <process> + <name>LiquidFlow</name> + <type>LIQUID_FLOW</type> + <integration_order>2</integration_order> + <darcy_gravity> + <!-- axis_id: 0, 1, or the dimension of space minus one --> + <axis_id>0</axis_id> + <!-- g>=0. g=0: non gravity term --> + <g>0.</g> + </darcy_gravity> + <process_variables> + <process_variable>pressure</process_variable> + </process_variables> + <secondary_variables> + <secondary_variable internal_name="darcy_velocity" output_name="v"/> + </secondary_variables> + <calculatesurfaceflux> + <mesh>square_1x1_quad_1e1_complete_surface</mesh> + <property_name>specific_flux</property_name> + <output_mesh>square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux.vtu</output_mesh> + </calculatesurfaceflux> + <material_property> + <fluid> + <density> + <type>Constant</type> + <value> 78.68 </value> + </density> + <viscosity> + <type>Constant</type> + <value> 1.295e-4 </value> + </viscosity> + </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> 8.05e-10 </value> + </storage> + </porous_medium> + </porous_medium> + </material_property> + </process> + </processes> + <time_loop> + <processes> + <process ref="LiquidFlow"> + <nonlinear_solver>basic_picard</nonlinear_solver> + <convergence_criterion> + <type>DeltaX</type> + <norm_type>NORM2</norm_type> + <abstol>1.e-10</abstol> + </convergence_criterion> + <time_discretization> + <type>BackwardEuler</type> + </time_discretization> + <time_stepping> + <type>FixedTimeStepping</type> + <t_initial> 0.0 </t_initial> + <t_end> 0.864 </t_end> + <timesteps> + <pair> + <repeat>2</repeat> + <delta_t>0.432</delta_t> + </pair> + </timesteps> + </time_stepping> + </process> + </processes> + <output> + <type>VTK</type> + <prefix>LF_square_1e1_surfaceflux</prefix> + <timesteps> + <pair> + <repeat> 1 </repeat> + <each_steps> 1 </each_steps> + </pair> + </timesteps> + <variables> + <variable> pressure </variable> + <variable> v </variable> + </variables> + </output> + </time_loop> + <parameters> + <parameter> + <name>p0</name> + <type>Constant</type> + <value>5e6</value> + </parameter> + <parameter> + <name>p_Dirichlet_left</name> + <type>Constant</type> + <value>1e7</value> + </parameter> + <parameter> + <name>p_Dirichlet_right</name> + <type>Constant</type> + <value>1e6</value> + </parameter> + <parameter> + <name>constant_porosity_parameter</name> + <type>Constant</type> + <value>1</value> + </parameter> + <parameter> + <name>kappa1</name> + <type>Constant</type> + <values>9.2e-12 0 0 9.2e-12</values> + </parameter> + <parameter> + <name>p_spatial</name> + <type>Constant</type> + <value>1</value> + </parameter> + </parameters> + <process_variables> + <process_variable> + <name>pressure</name> + <components>1</components> + <order>1</order> + <initial_condition>p0</initial_condition> + <boundary_conditions> + <boundary_condition> + <mesh>square_1x1_quad_1e1_left</mesh> + <type>Dirichlet</type> + <parameter>p_Dirichlet_left</parameter> + </boundary_condition> + <boundary_condition> + <mesh>square_1x1_quad_1e1_right</mesh> + <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>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 cg -p jacobi -tol 1e-16 -maxiter 10000</lis> + <eigen> + <solver_type>CG</solver_type> + <precon_type>DIAGONAL</precon_type> + <max_iteration_step>10000</max_iteration_step> + <error_tolerance>1e-16</error_tolerance> + </eigen> + <petsc> + <prefix>lf</prefix> + <parameters>-lf_ksp_type cg -lf_pc_type bjacobi -lf_ksp_rtol 1e-16 -lf_ksp_max_it 10000</parameters> + </petsc> + </linear_solver> + </linear_solvers> +</OpenGeoSysProject> diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1.vtu new file mode 100644 index 00000000000..830ecc4b558 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16b826f3e01dafe34f447332b39a2a01cfa9e330c9ff7706190d0f420570c364 +size 2276 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface.vtu new file mode 100644 index 00000000000..2098258b30e --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17da3e834d5c3aa33c7bcd5f69eeffe45226d10070ec1efde9d0b1d515f6c892 +size 3535 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000_expected.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000_expected.vtu new file mode 100644 index 00000000000..f80be5ffeb5 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.432000_expected.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf38c54df6739ac7ab831bf2605ed356f0519e3d382a31dfb49d08bddffea466 +size 4030 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000_expected.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000_expected.vtu new file mode 100644 index 00000000000..b271da6628e --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_complete_surface_left_right_dirichlet_specific_flux_t_0.864000_expected.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c2583ec787a3ee56c18217b09b34bdda1de66008c9f4ecd9e0c653dd187cb8a +size 4030 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_left.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_left.vtu new file mode 100644 index 00000000000..5bb68bcde16 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_left.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb3a7aa685ad561fdf455dd462467cab1e124fedc44e6c0f14befe33d83e6cd5 +size 3637 diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_right.vtu b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_right.vtu new file mode 100644 index 00000000000..4dacd3f1682 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/Flux/2D/square_1x1_quad_1e1_right.vtu @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e39f78e2cabffd2f4f1313b774ca9464b8ffdf7fc97aa94b66bae80d162c850 +size 3659 -- GitLab