diff --git a/ProcessLib/LiquidFlow/Tests.cmake b/ProcessLib/LiquidFlow/Tests.cmake index f687102840498c816326ea1acf201f2f2ea28881..cef3da27d11d28bd60c2a54ebf6b32e4a9ef28e0 100644 --- a/ProcessLib/LiquidFlow/Tests.cmake +++ b/ProcessLib/LiquidFlow/Tests.cmake @@ -755,3 +755,16 @@ AddTest( DIFF_DATA fine_raster_heterogeneous_Subsurface_ts_02_t_2.000000.vtu fine_raster_heterogeneous_Subsurface_ts_02_t_2.000000.vtu p p 1e-14 1e-14 ) + +AddTest( + NAME LiquidFlow_GasFlow + PATH Parabolic/LiquidFlow/GasFlow + EXECUTABLE ogs + EXECUTABLE_ARGS gas_flow.prj + RUNTIME 1 + WRAPPER time + TESTER vtkdiff + REQUIREMENTS NOT OGS_USE_MPI + DIFF_DATA + gas_flow_ts_1000_t_100.000000.vtu gas_flow_ts_1000_t_100.000000.vtu pressure pressure 1e-5 5e-6 +) diff --git a/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow.prj b/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow.prj new file mode 100644 index 0000000000000000000000000000000000000000..0e932cdaea64261bfa669097526a45c41f6b0fea --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow.prj @@ -0,0 +1,174 @@ +<?xml version='1.0' encoding='ISO-8859-1'?> +<OpenGeoSysProject> + <meshes> + <mesh>square_1x1_quad8_1e2.vtu</mesh> + <mesh>square_1x1_geometry_left.vtu</mesh> + </meshes> + + <processes> + <process> + <name>LF_GAS</name> + <type>LIQUID_FLOW</type> + <integration_order>3</integration_order> + <equation_balance_type>mass</equation_balance_type> + <process_variables> + <process_variable>pressure</process_variable> + </process_variables> + <secondary_variables> + <secondary_variable internal_name="darcy_velocity" output_name="v"/> + </secondary_variables> + <specific_body_force>0 0</specific_body_force> + </process> + </processes> + <media> + <medium> + <phases> + <phase> + <type>Gas</type> + <properties> + <property> + <name>viscosity</name> + <type>Constant</type> + <value>1e-5</value> + </property> + <property> + <name>density</name> + <type>IdealGasLaw</type> + </property> + <property> + <name>molar_mass</name> + <type>Constant</type> + <value>0.028964397787206768</value> + </property> + </properties> + </phase> + <phase> + <type>Solid</type> + <properties> + <property> + <name>density</name> + <type>Constant</type> + <value>2.17e3</value> + </property> + </properties> + </phase> + </phases> + <properties> + <property> + <name>porosity</name> + <type>Constant</type> + <value>0.03</value> + </property> + <property> + <name>reference_temperature</name> + <type>Constant</type> + <value>293.15</value> + </property> + <property> + <name>permeability</name> + <type>Constant</type> + <value>1e-4</value> + </property> + <property> + <name>storage</name> + <type>Constant</type> + <value> 0.0 </value> + </property> + + </properties> + </medium> + </media> + <time_loop> + <processes> + <process ref="LF_GAS"> + <nonlinear_solver>basic_picard</nonlinear_solver> + <convergence_criterion> + <type>DeltaX</type> + <norm_type>NORM2</norm_type> + <reltol>1.e-6</reltol> + </convergence_criterion> + <time_discretization> + <type>BackwardEuler</type> + </time_discretization> + <time_stepping> + <type>FixedTimeStepping</type> + <t_initial>0</t_initial> + <t_end>100</t_end> + <timesteps> + <pair> + <repeat>1</repeat> + <delta_t>0.1</delta_t> + </pair> + </timesteps> + </time_stepping> + </process> + </processes> + <output> + <type>VTK</type> + <prefix>gas_flow</prefix> + <timesteps> + <pair> + <repeat>1</repeat> + <each_steps>1000</each_steps> + </pair> + </timesteps> + <variables> + <variable>pressure</variable> + <variable>velocity</variable> + </variables> + <suffix>_ts_{:timestep}_t_{:time}</suffix> + </output> + </time_loop> + <parameters> + <parameter> + <name>pressure0</name> + <type>Constant</type> + <values>1e5</values> + </parameter> + <parameter> + <name>zero</name> + <type>Constant</type> + <value>0</value> + </parameter> + <parameter> + <name>flux</name> + <type>Constant</type> + <value>1e-3</value> + </parameter> + </parameters> + <process_variables> + <process_variable> + <name>pressure</name> + <components>1</components> + <order>2</order> + <initial_condition>pressure0</initial_condition> + <boundary_conditions> + <boundary_condition> + <mesh>square_1x1_geometry_left</mesh> + <type>Neumann</type> + <parameter>flux</parameter> + </boundary_condition> + </boundary_conditions> + </process_variable> + </process_variables> + <nonlinear_solvers> + <nonlinear_solver> + <name>basic_picard</name> + <type>Picard</type> + <max_iter>100</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 ilu -tol 1e-16 -maxiter 10000</lis> + <eigen> + <solver_type>BiCGSTAB</solver_type> + <precon_type>ILUT</precon_type> + <max_iteration_step>3000</max_iteration_step> + <error_tolerance>1e-18</error_tolerance> + </eigen> + </linear_solver> + </linear_solvers> +</OpenGeoSysProject> diff --git a/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow_ts_1000_t_100.000000.vtu b/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow_ts_1000_t_100.000000.vtu new file mode 100644 index 0000000000000000000000000000000000000000..402916d078a9c7f12aa6f81265d1546e14e60393 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/GasFlow/gas_flow_ts_1000_t_100.000000.vtu @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Int8" Name="OGS_VERSION" NumberOfTuples="24" format="appended" RangeMin="45" RangeMax="121" offset="0" /> + </FieldData> + <Piece NumberOfPoints="341" NumberOfCells="100" > + <PointData> + <DataArray type="Float64" Name="pressure" format="appended" RangeMin="380514.46727" RangeMax="380514.46728" offset="88" /> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0" RangeMax="1.4142135624" offset="1276" /> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="2732" /> + <DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="4472" /> + <DataArray type="UInt8" Name="types" format="appended" RangeMin="" RangeMax="" offset="4740" /> + </Cells> + </Piece> + </UnstructuredGrid> + <AppendedData encoding="base64"> + _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eF4TF6c9AADGKQj9 + </AppendedData> +</VTKFile> diff --git a/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_geometry_left.vtu b/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_geometry_left.vtu new file mode 100644 index 0000000000000000000000000000000000000000..745def4647e54e942bcc58eb3dbbd69fa35a8d38 --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_geometry_left.vtu @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64"> + <UnstructuredGrid> + <Piece NumberOfPoints="21" NumberOfCells="10" > + <PointData> + <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0" RangeMax="311" offset="0" /> + </PointData> + <CellData> + <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0" RangeMax="90" offset="236" /> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0" RangeMax="1" offset="356" /> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="1040" /> + <DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="1372" /> + <DataArray type="UInt8" Name="types" format="appended" RangeMin="" RangeMax="" offset="1492" /> + </Cells> + </Piece> + </UnstructuredGrid> + <AppendedData encoding="base64"> + _qAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAFgAAAAAAAAAhAAAAAAAAACwAAAAAAAAANwAAAAAAAABCAAAAAAAAAE0AAAAAAAAAWAAAAAAAAABjAAAAAAAAAG4AAAAAAAAAegAAAAAAAACPAAAAAAAAAKQAAAAAAAAAuQAAAAAAAADOAAAAAAAAAOMAAAAAAAAA+AAAAAAAAAANAQAAAAAAACIBAAAAAAAANwEAAAAAAAA=UAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAAeAAAAAAAAACgAAAAAAAAAMgAAAAAAAAA8AAAAAAAAAEYAAAAAAAAAUAAAAAAAAABaAAAAAAAAAA==+AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqZmZmZmbk/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmck/AAAAAAAAAAAAAAAAAAAAADMzMzMzM9M/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmdk/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOA/AAAAAAAAAAAAAAAAAAAAADMzMzMzM+M/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZuY/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmek/AAAAAAAAAAAAAAAAAAAAAM3MzMzMzOw/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmak/AAAAAAAAAAAAAAAAAAAAADQzMzMzM8M/AAAAAAAAAAAAAAAAAAAAAAAAAAAAANA/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZtY/AAAAAAAAAAAAAAAAAAAAAM3MzMzMzNw/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmeE/AAAAAAAAAAAAAAAAAAAAAMzMzMzMzOQ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOg/AAAAAAAAAAAAAAAAAAAAADQzMzMzM+s/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZu4/AAAAAAAAAAA=8AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAACwAAAAAAAAABAAAAAAAAAAIAAAAAAAAADAAAAAAAAAACAAAAAAAAAAMAAAAAAAAADQAAAAAAAAADAAAAAAAAAAQAAAAAAAAADgAAAAAAAAAEAAAAAAAAAAUAAAAAAAAADwAAAAAAAAAFAAAAAAAAAAYAAAAAAAAAEAAAAAAAAAAGAAAAAAAAAAcAAAAAAAAAEQAAAAAAAAAHAAAAAAAAAAgAAAAAAAAAEgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAEwAAAAAAAAAJAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAA=UAAAAAAAAAADAAAAAAAAAAYAAAAAAAAACQAAAAAAAAAMAAAAAAAAAA8AAAAAAAAAEgAAAAAAAAAVAAAAAAAAABgAAAAAAAAAGwAAAAAAAAAeAAAAAAAAAA==CgAAAAAAAAAVFRUVFRUVFRUV + </AppendedData> +</VTKFile> diff --git a/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_quad8_1e2.vtu b/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_quad8_1e2.vtu new file mode 120000 index 0000000000000000000000000000000000000000..50ed4394207d099eb7b63ff029eab6e210c0158e --- /dev/null +++ b/Tests/Data/Parabolic/LiquidFlow/GasFlow/square_1x1_quad8_1e2.vtu @@ -0,0 +1 @@ +../../../HydroMechanics/IdealGas/flow_no_strain/square_1x1_quad8_1e2.vtu \ No newline at end of file