From 03cc7c74447cea87dee0897c3c881e6f3bf0e3b6 Mon Sep 17 00:00:00 2001 From: Christoph Lehmann <christoph.lehmann@ufz.de> Date: Thu, 29 Aug 2024 07:53:07 +0200 Subject: [PATCH] [T/TRM] Added 0d confined compression test --- .../confined_compression.prj | 457 ++++++++++++++++++ ...confined_compression_ts_120_t_1.500000.vtu | 101 ++++ ...confined_compression_ts_160_t_2.000000.vtu | 101 ++++ ...confined_compression_ts_200_t_2.500000.vtu | 101 ++++ ...confined_compression_ts_240_t_3.000000.vtu | 101 ++++ ...confined_compression_ts_280_t_3.500000.vtu | 101 ++++ ...confined_compression_ts_320_t_4.000000.vtu | 101 ++++ ...confined_compression_ts_360_t_4.500000.vtu | 101 ++++ ...confined_compression_ts_400_t_5.000000.vtu | 101 ++++ .../confined_compression_ts_40_t_0.500000.vtu | 101 ++++ ...confined_compression_ts_440_t_5.500000.vtu | 101 ++++ ...confined_compression_ts_480_t_6.000000.vtu | 101 ++++ .../confined_compression_ts_80_t_1.000000.vtu | 101 ++++ .../generate-reference-solution.py | 120 +++++ .../0d_confined_compression/meshes | 1 + .../0d_confined_compression/ogs_and_mfront.py | 376 ++++++++++++++ 16 files changed, 2166 insertions(+) create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression.prj create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_120_t_1.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_160_t_2.000000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_200_t_2.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_240_t_3.000000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_280_t_3.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_320_t_4.000000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_360_t_4.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_400_t_5.000000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_40_t_0.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_440_t_5.500000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_480_t_6.000000.vtu create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_80_t_1.000000.vtu create mode 100755 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/generate-reference-solution.py create mode 120000 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/meshes create mode 100644 Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/ogs_and_mfront.py diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression.prj b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression.prj new file mode 100644 index 00000000000..17fcdfcb370 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression.prj @@ -0,0 +1,457 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<OpenGeoSysProject> + <meshes> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_whole_surface.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_x0.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_y0.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_z0.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_x1.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_y1.vtu</mesh> + <mesh axially_symmetric="false">meshes/cube_1e0_1x1x1_hex8_z1.vtu</mesh> + </meshes> + <processes> + <process> + <name>TRM</name> + <type>THERMO_RICHARDS_MECHANICS</type> + <subtype>StressSaturation_StrainPressureTemperature</subtype> + <integration_order>3</integration_order> + <constitutive_relation> + <type>MFront</type> + <behaviour>BentoniteBehaviour</behaviour> + <library path_is_relative_to_prj_file="false">libOgsMFrontBehaviourBentoniteGeneralModForCTestsOnly</library> + <initial_values> + <state_variable name="e" parameter="e0"/> + <state_variable name="em" parameter="em0"/> + <state_variable name="eM" parameter="eM0"/> + <state_variable name="SrM" parameter="SrM0"/> + <state_variable name="a_scan" parameter="a_scan0"/> + <state_variable name="re" parameter="re0"/> + </initial_values> + </constitutive_relation> + <process_variables> + <temperature>temperature</temperature> + <pressure>pressure</pressure> + <displacement>displacement</displacement> + </process_variables> + <secondary_variables> + <secondary_variable internal_name="sigma_total" output_name="sigma_total"/> + <secondary_variable internal_name="epsilon" output_name="epsilon"/> + </secondary_variables> + <specific_body_force>0 0 0</specific_body_force> + <initial_stress type="total">initial_stress</initial_stress> + </process> + </processes> + <media> + <medium id="0"> + <phases> + <phase> + <type>AqueousLiquid</type> + <properties> + <property> + <name>specific_heat_capacity</name> + <type>Constant</type> + <value>4280.0</value> + </property> + <property> + <name>thermal_conductivity</name> + <type>Constant</type> + <value>0.6</value> + </property> + <property> + <name>density</name> + <type>Constant</type> + <value>999.1</value> + </property> + <property> + <name>thermal_expansivity</name> + <type>Constant</type> + <value>1e-5</value> + </property> + <property> + <name>viscosity</name> + <type>Constant</type> + <value>1.e-3</value> + </property> + </properties> + </phase> + <phase> + <type>Solid</type> + <properties> + <property> + <name>density</name> + <type>Constant</type> + <value>2290</value> + </property> + <property> + <name>thermal_conductivity</name> + <type>Constant</type> + <value>1.838</value> + </property> + <property> + <name>specific_heat_capacity</name> + <type>Constant</type> + <value>917.654</value> + </property> + <property> + <name>thermal_expansivity</name> + <type>Constant</type> + <value>1e-5</value> + </property> + </properties> + </phase> + </phases> + <properties> + <property> + <name>saturation</name> + <type>Constant</type> + <value>0.345</value> + </property> + <property> + <name>relative_permeability</name> + <type>Constant</type> + <value>1</value> + </property> + <property> + <name>permeability</name> + <type>Constant</type> + <value>2e-20</value> + </property> + <property> + <name>porosity</name> + <type>Constant</type> + <value>0.16</value> + </property> + <property> + <name>bishops_effective_stress</name> + <type>BishopsPowerLaw</type> + <exponent>1.0</exponent> + </property> + <property> + <name>biot_coefficient</name> + <type>Constant</type> + <value>1.0</value> + </property> + <property> + <name>thermal_conductivity</name> + <type>EffectiveThermalConductivityPorosityMixing</type> + </property> + </properties> + </medium> + </media> + <time_loop> + <processes> + <process ref="TRM"> + <nonlinear_solver>basic_newton</nonlinear_solver> + <convergence_criterion> + <type>PerComponentDeltaX</type> + <norm_type>INFINITY_N</norm_type> + <abstols>1e-9 1e-6 1e-9 1e-9 1e-9</abstols> + </convergence_criterion> + <time_discretization> + <type>BackwardEuler</type> + </time_discretization> + <time_stepping> + <type>FixedTimeStepping</type> + <t_initial>0</t_initial> + <t_end>6</t_end> + <timesteps> + <pair> + <repeat>1</repeat> + <delta_t>0.0125</delta_t> + </pair> + </timesteps> + </time_stepping> + </process> + </processes> + <output> + <type>VTK</type> + <prefix>confined_compression</prefix> + <timesteps> + <pair> + <repeat>1</repeat> + <each_steps>1</each_steps> + </pair> + </timesteps> + <variables> + </variables> + <suffix>_ts_{:timestep}_t_{:time}</suffix> + </output> + </time_loop> + <parameters> + <parameter> + <mesh>cube_1e0_1x1x1_hex8</mesh> + <name>initial_stress</name> + <type>Function</type> + <expression>-2e6</expression> + <expression>-2e6</expression> + <expression>-2e6</expression> + <expression>0</expression> + <expression>0</expression> + <expression>0</expression> + </parameter> + <parameter> + <name>e0</name> + <type>Constant</type> + <value>0.9</value> + </parameter> + <parameter> + <name>em0</name> + <type>Constant</type> + <value>0.0</value> + </parameter> + <parameter> + <name>eM0</name> + <type>Constant</type> + <value>0.0</value> + </parameter> + <parameter> + <name>SrM0</name> + <type>Constant</type> + <value>0.0</value> + </parameter> + <parameter> + <name>a_scan0</name> + <type>Constant</type> + <value>0.0</value> + </parameter> + <parameter> + <name>re0</name> + <type>Constant</type> + <value>0.0</value> + </parameter> + <parameter> + <name>displacement0</name> + <type>Constant</type> + <values>0 0 0</values> + </parameter> + <parameter> + <name>pressure_ic</name> + <type>Constant</type> + <values>-110e6</values> + </parameter> + <parameter> + <name>temperature_ic</name> + <type>Constant</type> + <value>273.15</value> + </parameter> + <parameter> + <name>zero</name> + <type>Constant</type> + <value>0</value> + </parameter> + <parameter> + <name>one</name> + <type>Constant</type> + <value>1</value> + </parameter> + <parameter> + <name>pressure_bc</name> + <type>CurveScaled</type> + <curve>p_curve</curve> + <parameter>one</parameter> + </parameter> + <parameter> + <name>stress_xx</name> + <type>CurveScaled</type> + <curve>sigma_curve</curve> + <parameter>one</parameter> + </parameter> + </parameters> + <curves> + <curve> + <name>p_curve</name> + <coords>0.0 3.0</coords> + <values>-110e6 -110e6</values> + </curve> + <curve> + <name>sigma_curve</name> + <coords>0.0 6.0</coords> + <values>-2e6 -4e6</values> + </curve> + </curves> + <process_variables> + <process_variable> + <name>displacement</name> + <components>3</components> + <order>1</order> + <initial_condition>displacement0</initial_condition> + <boundary_conditions> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_x0</mesh> + <type>Dirichlet</type> + <component>0</component> + <parameter>zero</parameter> + </boundary_condition> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_y0</mesh> + <type>Dirichlet</type> + <component>1</component> + <parameter>zero</parameter> + </boundary_condition> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_z0</mesh> + <type>Dirichlet</type> + <component>2</component> + <parameter>zero</parameter> + </boundary_condition> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_x1</mesh> + <type>Neumann</type> + <component>0</component> + <parameter>stress_xx</parameter> + </boundary_condition> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_y1</mesh> + <type>Dirichlet</type> + <component>1</component> + <parameter>zero</parameter> + </boundary_condition> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_z1</mesh> + <type>Dirichlet</type> + <component>2</component> + <parameter>zero</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>cube_1e0_1x1x1_hex8_whole_surface</mesh> + <type>Dirichlet</type> + <component>0</component> + <parameter>pressure_bc</parameter> + </boundary_condition> + </boundary_conditions> + </process_variable> + <process_variable> + <name>temperature</name> + <components>1</components> + <order>1</order> + <initial_condition>temperature_ic</initial_condition> + <boundary_conditions> + <boundary_condition> + <mesh>cube_1e0_1x1x1_hex8_whole_surface</mesh> + <type>Dirichlet</type> + <component>0</component> + <parameter>temperature_ic</parameter> + </boundary_condition> + </boundary_conditions> + </process_variable> + </process_variables> + <nonlinear_solvers> + <nonlinear_solver> + <name>basic_newton</name> + <type>Newton</type> + <max_iter>50</max_iter> + <linear_solver>general_linear_solver</linear_solver> + </nonlinear_solver> + </nonlinear_solvers> + <linear_solvers> + <linear_solver> + <name>general_linear_solver</name> + <eigen> + <solver_type>SparseLU</solver_type> + <scaling>1</scaling> + </eigen> + <petsc> + <parameters>-ksp_type cg + -pc_type lu + -ksp_rtol 1.e-14 -ksp_atol 1.e-14 + -ksp_max_it 4000 + </parameters> + </petsc> + </linear_solver> + </linear_solvers> + <test_definition> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>epsilon_ip</field> + <absolute_tolerance>4e-09</absolute_tolerance> + <relative_tolerance>0.0 <!-- inf --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_RungeKutta_InternalStateVariables[0]_ip</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_RungeKutta_InternalStateVariables[1]_ip</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_RungeKutta_InternalStateVariables[2]_ip</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_RungeKutta_InternalStateVariables[3]_ip</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_SrM_ip</field> + <absolute_tolerance>1.5e-10</absolute_tolerance> + <relative_tolerance>0.0 <!-- 1.6e-08 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_a_scan_ip</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_eM_ip</field> + <absolute_tolerance>5.3e-09</absolute_tolerance> + <relative_tolerance>0.0 <!-- 1.2e-08 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_e_ip</field> + <absolute_tolerance>6.8e-09</absolute_tolerance> + <relative_tolerance>0.0 <!-- 8.1e-09 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_em_ip</field> + <absolute_tolerance>1.2e-10</absolute_tolerance> + <relative_tolerance>0.0 <!-- 4.3e-10 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>material_state_variable_re_ip</field> + <absolute_tolerance>8.9e-09</absolute_tolerance> + <relative_tolerance>0.0 <!-- 9.2e-09 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>pressure</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>saturation_ip</field> + <absolute_tolerance>2.6e-09</absolute_tolerance> + <relative_tolerance>0.0 <!-- 7.9e-09 --></relative_tolerance> + </vtkdiff> + <vtkdiff> + <regex>confined_compression_ts_.*_t_.*[.]vtu</regex> + <field>sigma_total_ip</field> + <absolute_tolerance>0.16</absolute_tolerance> + <relative_tolerance>0.0 <!-- inf --></relative_tolerance> + </vtkdiff> + </test_definition> +</OpenGeoSysProject> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_120_t_1.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_120_t_1.500000.vtu new file mode 100644 index 00000000000..470fdd6020b --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_120_t_1.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0121503782802162" RangeMax="0.0121503782802162"> + AQAAAACAAAAQBQAAMAAAAA==eJxTOHNcy+dRx36H62928vZ+t9ynzxnmbfDAkgEHUBhVP6p+VP2o+mGqHgCntDx4 + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.01215037828 + </Value> + <Value index="1"> + 0.01215037828 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3349098.003711932" RangeMax="3349098.003711932"> + AQAAAACAAAAQBQAAKAAAAA==eJzzsfn9/7yQ88G+ZYkxk7gt4DQDDuAzqn5U/aj6UfXDVD0ANBM1Zw== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3349098.0037 + </Value> + <Value index="1"> + 3349098.0037 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.305951624766487" RangeMax="0.305951624766487"> + AQAAAACAAADYAAAAFAAAAA==eJyb/Hah/LYpl+0nDzMaAOMDfHU= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.877053965259221" RangeMax="0.877053965259221"> + AQAAAACAAADYAAAAFAAAAA==eJz7vtG46rLAG/vvw4wGAGvgdnI= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263419138814884" RangeMax="0.263419138814884"> + AQAAAACAAADYAAAAFAAAAA==eJxTyp326fbtC/ZKw4wGAHEYgzU= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.485693787277066" RangeMax="0.485693787277066"> + AQAAAACAAADYAAAAFAAAAA==eJybl8OXOlv0vv28YUYDALKOWOo= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0080127977798302" RangeMax="0.0080127977798302"> + AQAAAACAAADYAAAAEwAAAA==eJwzb/dvZs5ssDcfZjQAQxlJug== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.961642589478859" RangeMax="0.961642589478859"> + AQAAAACAAADYAAAAFAAAAA==eJyTEOFYd+zoO3uJYUYDANLsYT8= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="480" RangeMax="480"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBOgeGYUYDAEa0FAs= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="120" RangeMax="120"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBOAeGYUYDAODWEKs= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_160_t_2.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_160_t_2.000000.vtu new file mode 100644 index 00000000000..bc4f43979c6 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_160_t_2.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0171439424437181" RangeMax="0.0171439424437181"> + AQAAAACAAAAQBQAAMAAAAA==eJxr0axu0OubuF/91Nn6jR6/LY9sLq/Jj+e2YsABWkbVj6ofVT+qfpiqBwALrTlp + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.017143942444 + </Value> + <Value index="1"> + 0.017143942444 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3415486.475383017" RangeMax="3415486.475383017"> + AQAAAACAAAAQBQAAKAAAAA==eJzLOx4QGhrhcvCyz9aWrWzmcJoBB8gbVT+qflT9qPphqh4AdFU6Jg== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3415486.4754 + </Value> + <Value index="1"> + 3415486.4754 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.309262589014138" RangeMax="0.309262589014138"> + AQAAAACAAADYAAAAFAAAAA==eJx77ZkT8PXUZfvXw4wGAG4cgFw= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.86770413981715" RangeMax="0.86770413981715"> + AQAAAACAAADYAAAAFAAAAA==eJxrPvW4wvrIa/vmYUYDADpAggw= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263406352316477" RangeMax="0.263406352316477"> + AQAAAACAAADYAAAAFAAAAA==eJw712gQuOz2Bftzw4wGABTCdiE= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.478308333872023" RangeMax="0.478308333872023"> + AQAAAACAAADYAAAAFAAAAA==eJwTm3ujb9ace/Ziw4wGAIY+d2U= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0081781860270721" RangeMax="0.0081781860270721"> + AQAAAACAAADYAAAAEwAAAA==eJxz5DHv2bm/wd5xmNEATkFYfg== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.949965989723768" RangeMax="0.949965989723768"> + AQAAAACAAADYAAAAFAAAAA==eJybs8BVWD7tnf2cYUYDAIB1WGM= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="640" RangeMax="640"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBFgeGYUYDAInIFK0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="160" RangeMax="160"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBFAeGYUYDACP5EU0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_200_t_2.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_200_t_2.500000.vtu new file mode 100644 index 00000000000..c49959d4fec --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_200_t_2.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0222665077690674" RangeMax="0.0222665077690674"> + AQAAAACAAAAQBQAAMAAAAA==eJzrNV/BxXF22v5p5oW6LSvv7by9I/HgP+99OxlwgN5R9aPqR9WPqh+m6gFfeGY8 + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.022266507769 + </Value> + <Value index="1"> + 0.022266507769 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3529014.7894975804" RangeMax="3529014.7894975804"> + AQAAAACAAAAQBQAAKAAAAA==eJzrkV226tZc14PSsulbpTebwWkGHKBnVP2o+lH1o+qHqXoA/nsfyA== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3529014.7895 + </Value> + <Value index="1"> + 3529014.7895 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.312677558540581" RangeMax="0.312677558540581"> + AQAAAACAAADYAAAAFAAAAA==eJzb8o99zwumK/ZbhhkNABcceAc= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.858161166538356" RangeMax="0.858161166538356"> + AQAAAACAAADYAAAAEwAAAA==eJxbEi6fwVf22n7JMKMBcfpWEQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.26335974382241" RangeMax="0.26335974382241"> + AQAAAACAAADYAAAAFAAAAA==eJzzMdt8+dGtC/Y+w4wGAA3ZgkI= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.470809225460201" RangeMax="0.470809225460201"> + AQAAAACAAADYAAAAEwAAAA==eJxjyW1g2at4z55lmNEAceJPUQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0083523298738888" RangeMax="0.0083523298738888"> + AQAAAACAAADYAAAAEwAAAA==eJzreGK1l0260b5jmNEApURYLQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.940974831655426" RangeMax="0.940974831655426"> + AQAAAACAAADYAAAAEwAAAA==eJzrN+NyKJd5Z98/zGgADcNL1g== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="800" RangeMax="800"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBTgeGYUYDAMGuFTQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="200" RangeMax="200"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBTAeGYUYDAFvfEdQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_240_t_3.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_240_t_3.000000.vtu new file mode 100644 index 00000000000..47d50bc04d6 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_240_t_3.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0273221074481206" RangeMax="0.0273221074481206"> + AQAAAACAAAAQBQAAMAAAAA==eJxTMz81PfjX7P1Lmj46PRfYvlO0e9dUSa8FOxlwALVR9aPqR9WPqh+m6gHme1oA + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.027322107448 + </Value> + <Value index="1"> + 0.027322107448 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3676480.794900353" RangeMax="3676480.794900353"> + AQAAAACAAAAQBQAAKAAAAA==eJx7ofb7f/xjt4Ppq+8Eyr4zg9MMOMCLUfWj6kfVj6ofpuoBNn11UQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3676480.7949 + </Value> + <Value index="1"> + 3676480.7949 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.31607255015969" RangeMax="0.31607255015969"> + AQAAAACAAADYAAAAEwAAAA==eJyTjGyL6bC6Yi85zGgAB+BVVA== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.848790754094743" RangeMax="0.848790754094743"> + AQAAAACAAADYAAAAEwAAAA==eJzbV2tv5a352n7fMKMBFmNZpw== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263285699437092" RangeMax="0.263285699437092"> + AQAAAACAAADYAAAAEwAAAA==eJwT6FN1XnPzgr3AMKMB9TNhPw== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.463477940568715" RangeMax="0.463477940568715"> + AQAAAACAAADYAAAAEwAAAA==eJwrt/NKnL/yrn35MKMB8ydlrQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0085289489019828" RangeMax="0.0085289489019828"> + AQAAAACAAADYAAAAFAAAAA==eJy7X39ZZUF5o/39YUYDAAO3cKU= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.934371667529744" RangeMax="0.934371667529744"> + AQAAAACAAADYAAAAFAAAAA==eJz7oOOdGf/srf2HYUYDAKfuctw= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="960" RangeMax="960"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBPgeGYUYDAPmUFbs= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="240" RangeMax="240"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBPAeGYUYDAJPFEls= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_280_t_3.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_280_t_3.500000.vtu new file mode 100644 index 00000000000..8f56ebb6685 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_280_t_3.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0322101579913121" RangeMax="0.0322101579913121"> + AQAAAACAAAAQBQAAMAAAAA==eJyzfxbed7N2wf5fB/Ynhoqt3nn9eFBk1ZGllgw4gP2o+lH1o+pH1Q9T9QAvQXSv + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.032210157991 + </Value> + <Value index="1"> + 0.032210157991 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3845942.04233518" RangeMax="3845942.04233518"> + AQAAAACAAAAQBQAAKAAAAA==eJzL/hEQ+lTD42BErdLWqh5zOM2AA2SPqh9VP6p+VP0wVQ8ArRc1Fg== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3845942.0423 + </Value> + <Value index="1"> + 3845942.0423 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.319384618142993" RangeMax="0.319384618142993"> + AQAAAACAAADYAAAAEwAAAA==eJzTcyzUO1NwxV5vmNEASpha0A== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.839775822179277" RangeMax="0.839775822179277"> + AQAAAACAAADYAAAAEwAAAA==eJxryGjvLrz/yr5hmNEA1u14Ig== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263192590404557" RangeMax="0.263192590404557"> + AQAAAACAAADYAAAAFAAAAA==eJz7NUl0j+qNC/a/hhkNAJkfdxQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.456449187383672" RangeMax="0.456449187383672"> + AQAAAACAAADYAAAAEwAAAA==eJyzCWBbXmZ2195mmNEAN3xRHA== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0087045108138138" RangeMax="0.0087045108138138"> + AQAAAACAAADYAAAAEwAAAA==eJxTkddftfpyo73KMKMBH6tafw== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.929531150548675" RangeMax="0.929531150548675"> + AQAAAACAAADYAAAAFAAAAA==eJzbxNEus2PfW/tNw4wGAJsua+Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1120" RangeMax="1120"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChokODMOMBgC/+COM + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="280" RangeMax="280"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChkIHhmFGAwBaKSAs + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_320_t_4.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_320_t_4.000000.vtu new file mode 100644 index 00000000000..d6ea247bcdf --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_320_t_4.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0368951162960415" RangeMax="0.0368951162960415"> + AQAAAACAAAAQBQAAMQAAAA==eJwr8dq/+tXjRft1jx1oWbdu/c53MSUrO6svWDLgACWj6kfVj6ofVT9M1QMAnGaO1w== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.036895116296 + </Value> + <Value index="1"> + 0.036895116296 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="4029130.1313941553" RangeMax="4029130.1313941553"> + AQAAAACAAAAQBQAAKAAAAA==eJxj/7p0VVae50GRx6qim7It4DQDDsA+qn5U/aj6UfXDVD0AHUghyQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 4029130.1314 + </Value> + <Value index="1"> + 4029130.1314 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.322591222355171" RangeMax="0.322591222355171"> + AQAAAACAAADYAAAAFAAAAA==eJz7Ule/PHTpFfsvw4wGAFSOfWg= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.831176708202593" RangeMax="0.831176708202593"> + AQAAAACAAADYAAAAFAAAAA==eJybvCr26f8Zr+wnDzMaABA4jaY= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263087093943485" RangeMax="0.263087093943485"> + AQAAAACAAADYAAAAEwAAAA==eJxT15J3yL52wV59mNEAA31RAQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.449762820466735" RangeMax="0.449762820466735"> + AQAAAACAAADYAAAAFAAAAA==eJzzUTD///LEHXufYUYDAHH+d5s= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.008877477269423" RangeMax="0.008877477269423"> + AQAAAACAAADYAAAAEwAAAA==eJzbkxhxJUqvyX7PMKMBEP9gZw== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.925887887018108" RangeMax="0.925887887018108"> + AQAAAACAAADYAAAAFAAAAA==eJzr0w5YdH/BW/u+YUYDAHv7dRM= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1280" RangeMax="1280"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBKQ4Mw4wGADy3Fl0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="320" RangeMax="320"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBEgeGYUYDANbZEv0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_360_t_4.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_360_t_4.500000.vtu new file mode 100644 index 00000000000..88299be904a --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_360_t_4.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0413729081452567" RangeMax="0.0413729081452567"> + AQAAAACAAAAQBQAAMAAAAA==eJyrtrmZd0Vv6f6PcoEbHi7stNQSuzvXfdZVSwYcoHpU/aj6UfWj6oepegD9K05L + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.041372908145 + </Value> + <Value index="1"> + 0.041372908145 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="4220881.897720567" RangeMax="4220881.897720567"> + AQAAAACAAAAQBQAAKAAAAA==eJzzePfr//vNXgfrQ1ktCkss4TQDDuAxqn5U/aj6UfXDVD0A3LY85A== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 4220881.8977 + </Value> + <Value index="1"> + 4220881.8977 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.325688855064697" RangeMax="0.325688855064697"> + AQAAAACAAADYAAAAFAAAAA==eJz7ou0tKHbjiv2XYUYDAOJKXhU= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.822995410873135" RangeMax="0.822995410873135"> + AQAAAACAAADYAAAAFAAAAA==eJzrW3mu4lfoK/u+YUYDANYPhdg= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.262973721248615" RangeMax="0.262973721248615"> + AQAAAACAAADYAAAAEwAAAA==eJyTlZDb3X/lgr3sMKMBuNdegQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.44341515568313" RangeMax="0.44341515568313"> + AQAAAACAAADYAAAAEwAAAA==eJyzzuX99jLhjr31MKMBSgBtlg== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0090473268269024" RangeMax="0.0090473268269024"> + AQAAAACAAADYAAAAEwAAAA==eJyLP7B5WXp7k338MKMBrlVwHg== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.923038990639337" RangeMax="0.923038990639337"> + AQAAAACAAADYAAAAEwAAAA==eJyLCtou0Nn51j5qmNEAI0ZjrA== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1440" RangeMax="1440"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChmkODMOMBgD33iQT + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="360" RangeMax="360"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChjIHhmFGAwCSDyCz + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_400_t_5.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_400_t_5.000000.vtu new file mode 100644 index 00000000000..d3d737ab072 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_400_t_5.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0456522319184799" RangeMax="0.0456522319184799"> + AQAAAACAAAAQBQAAMAAAAA==eJwznK6xbVf88v3mHqbbUrTuW84Ll4rg2PZoJwMOYDiqflT9qPpR9cNUPQAqFyfn + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.045652231918 + </Value> + <Value index="1"> + 0.045652231918 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="4418062.387371979" RangeMax="4418062.387371979"> + AQAAAACAAAAQBQAAKAAAAA==eJy7d9Y/tPSn98G9nNtsHk23gtMMOMC9UfWj6kfVj6ofpuoBQWdiiw== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 4418062.3874 + </Value> + <Value index="1"> + 4418062.3874 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.328681511932299" RangeMax="0.328681511932299"> + AQAAAACAAADYAAAAEwAAAA==eJw7oqysJ8d51f7IMKMBEJdCIg== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.815210891457185" RangeMax="0.815210891457185"> + AQAAAACAAADYAAAAEwAAAA==eJzjuHVEzVTslT3HMKMBNhpXwQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.2628553408075" RangeMax="0.2628553408075"> + AQAAAACAAADYAAAAFAAAAA==eJxbbi5mOv/SBfvlw4wGAMBkYtQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.437386240857765" RangeMax="0.437386240857765"> + AQAAAACAAADYAAAAEwAAAA==eJwzEuO9o/Tvtr3RMKMByvNcSg== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0092139853828133" RangeMax="0.0092139853828133"> + AQAAAACAAADYAAAAFAAAAA==eJybViuif+Jek/20YUYDAMFfZPA= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.920720951428483" RangeMax="0.920720951428483"> + AQAAAACAAADYAAAAEwAAAA==eJzTFH5yorvsrb3mMKMBjN5uOA== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1600" RangeMax="1600"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBmQ4Mw4wGAHSdFuQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="400" RangeMax="400"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBSgeGYUYDAA7OE4Q= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_40_t_0.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_40_t_0.500000.vtu new file mode 100644 index 00000000000..0c60d906bb9 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_40_t_0.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0034518189133083" RangeMax="0.0034518189133083"> + AQAAAACAAAAQBQAAMAAAAA==eJxLlGbV/uuWs//i5ncxl/4p7/q39WNOdpbQLgYcIHFU/aj6UfWj6oepegC9XmZy + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.0034518189133 + </Value> + <Value index="1"> + 0.0034518189133 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3380728.0896067005" RangeMax="3380728.0896067005"> + AQAAAACAAAAQBQAAJwAAAA==eJxjcAkMPdrucJBdyM/PiMEGTjPgAqPqR9WPqh9VP0zVAwDD/rzm + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3380728.0896 + </Value> + <Value index="1"> + 3380728.0896 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.300270608150788" RangeMax="0.300270608150788"> + AQAAAACAAADYAAAAEwAAAA==eJxL8ao1W2R+2T5lmNEArB9ZBQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.893452850416487" RangeMax="0.893452850416487"> + AQAAAACAAADYAAAAFAAAAA==eJyzvbgwT2v6G3vbYUYDAC3XbPQ= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263403843968065" RangeMax="0.263403843968065"> + AQAAAACAAADYAAAAFAAAAA==eJwT/3Tv9OzbF+zFhxkNAK5kjM4= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.498691696627872" RangeMax="0.498691696627872"> + AQAAAACAAADYAAAAFAAAAA==eJz7nP158oRX9+0/DzMaAOxllBU= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0077355535982182" RangeMax="0.0077355535982182"> + AQAAAACAAADYAAAAFAAAAA==eJz7k95xO2B9vf2fYUYDAOWDedI= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.990653597829993" RangeMax="0.990653597829993"> + AQAAAACAAADYAAAAFAAAAA==eJybzdatk7/5vf3sYUYDALTlYrk= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="160" RangeMax="160"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBFAeGYUYDACP5EU0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="40" RangeMax="40"> + AQAAAACAAADYAAAAEQAAAA==eJxjYAABFweGYUYDAL4bDe0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_440_t_5.500000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_440_t_5.500000.vtu new file mode 100644 index 00000000000..8bb8c77fbef --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_440_t_5.500000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.049746130832967" RangeMax="0.049746130832967"> + AQAAAACAAAAQBQAAMAAAAA==eJxzyeXXCq5YuX/98vMS2xYetczqz1JjOvVqJwMO4DKqflT9qPpR9cNUPQDF9zqt + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.049746130833 + </Value> + <Value index="1"> + 0.049746130833 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="4618761.146555092" RangeMax="4618761.146555092"> + AQAAAACAAAAQBQAAKAAAAA==eJzb0r5k1S8734PMinvcd52xhtMMOMCWUfWj6kfVj6ofpuoBhrlHiw== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 4618761.1466 + </Value> + <Value index="1"> + 4618761.1466 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.331575673233808" RangeMax="0.331575673233808"> + AQAAAACAAADYAAAAEwAAAA==eJzr4dPR6bS4at8zzGgArApK/g== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.807794792360223" RangeMax="0.807794792360223"> + AQAAAACAAADYAAAAFAAAAA==eJy7L/eorOTmS/v7w4wGANiigU8= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.262733748397606" RangeMax="0.262733748397606"> + AQAAAACAAADYAAAAFAAAAA==eJx7IGpttvDCBfsHw4wGAIzOaUM= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.431651600567573" RangeMax="0.431651600567573"> + AQAAAACAAADYAAAAFAAAAA==eJw7wPWWQ2/BbfsDw4wGANF6Yp4= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0093775607416103" RangeMax="0.0093775607416103"> + AQAAAACAAADYAAAAEwAAAA==eJzTnjPnaZdJs732MKMBXP9mGQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.918765564661541" RangeMax="0.918765564661541"> + AQAAAACAAADYAAAAEwAAAA==eJyrN5zL1Z721r5+mNEAQXNc0Q== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1760" RangeMax="1760"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChtkODMOMBgAv0ySa + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="440" RangeMax="440"> + AQAAAACAAADYAAAAEgAAAA==eJxjYACChmoHhmFGAwDJ9SE6 + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_480_t_6.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_480_t_6.000000.vtu new file mode 100644 index 00000000000..b7b0a970324 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_480_t_6.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0536684818647097" RangeMax="0.0536684818647097"> + AQAAAACAAAAQBQAAMQAAAA==eJy7tepeTn7V6v3vj3mXlnpvsmRaMvnrycnHLBlwgFuj6kfVj6ofVT9M1QMAl750Xg== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.053668481865 + </Value> + <Value index="1"> + 0.053668481865 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="4821795.350648436" RangeMax="4821795.350648436"> + AQAAAACAAAAQBQAAKAAAAA==eJybPvHX//oWv4ORjJIOiry2cJoBB5g+qn5U/aj6UfXDVD0Aj1rxbA== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 4821795.3506 + </Value> + <Value index="1"> + 4821795.3506 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.33437829409317" RangeMax="0.33437829409317"> + AQAAAACAAADYAAAAFAAAAA==eJz7dTXdvCTtqv2vYUYDAB0XdZo= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.800717874806085" RangeMax="0.800717874806085"> + AQAAAACAAADYAAAAFAAAAA==eJyTWLNZvHr+S3uJYUYDAIN+ZvE= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.262610072732056" RangeMax="0.262610072732056"> + AQAAAACAAADYAAAAFAAAAA==eJw7+b+uata5C/YnhxkNAOItjM4= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.426186843691185" RangeMax="0.426186843691185"> + AQAAAACAAADYAAAAFAAAAA==eJwTev5Cb6nbbXuhYUYDALRQbh0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0095382271205745" RangeMax="0.0095382271205745"> + AQAAAACAAADYAAAAEwAAAA==eJyzbY3WOd7RbG87zGgATfhafw== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.917065133616692" RangeMax="0.917065133616692"> + AQAAAACAAADYAAAAFAAAAA==eJxT+LD014yIt/YKw4wGAOO1gWo= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="1920" RangeMax="1920"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBeQ4Mw4wGAKyDF2s= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="480" RangeMax="480"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBOgeGYUYDAEa0FAs= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_80_t_1.000000.vtu b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_80_t_1.000000.vtu new file mode 100644 index 00000000000..897917704da --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/confined_compression_ts_80_t_1.000000.vtu @@ -0,0 +1,101 @@ +<?xml version="1.0"?> +<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"> + <UnstructuredGrid> + <FieldData> + <DataArray type="Float64" Name="epsilon_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="0.0075243833521511" RangeMax="0.0075243833521511"> + AQAAAACAAAAQBQAAMAAAAA==eJwr7dnh9vhi3f5738IMPf0kd3Wo/GPsWclixYADlI6qH1U/qn5U/TBVDwDA2D9R + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0.0075243833522 + </Value> + <Value index="1"> + 0.0075243833522 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="sigma_total_ip" NumberOfComponents="6" NumberOfTuples="27" format="binary" RangeMin="3338396.501585605" RangeMax="3338396.501585605"> + AQAAAACAAAAQBQAAKAAAAA==eJzLqVm2yuus40EFtfmlRw5ZwmkGHCBnVP2o+lH1o+qHqXoAQ5tElw== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 3338396.5016 + </Value> + <Value index="1"> + 3338396.5016 + </Value> + </InformationKey> + </DataArray> + <DataArray type="Float64" Name="saturation_ip" NumberOfTuples="27" format="binary" RangeMin="0.302913451504564" RangeMax="0.302913451504564"> + AQAAAACAAADYAAAAFAAAAA==eJx7evCd5Puky/ZPhxkNADY7iLE= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_e_ip" NumberOfTuples="27" format="binary" RangeMin="0.885757322639388" RangeMax="0.885757322639388"> + AQAAAACAAADYAAAAFAAAAA==eJy7sX3uXvmIN/Y3hhkNAD5Feqo= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_em_ip" NumberOfTuples="27" format="binary" RangeMin="0.263413933063356" RangeMax="0.263413933063356"> + AQAAAACAAADYAAAAFAAAAA==eJybHf5F5tjtC/azhxkNALvqfsc= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_eM_ip" NumberOfTuples="27" format="binary" RangeMin="0.492588670523552" RangeMax="0.492588670523552"> + AQAAAACAAADYAAAAFAAAAA==eJwrvj5x4aS2+/bFw4wGANJ8fsc= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_SrM_ip" NumberOfTuples="27" format="binary" RangeMin="0.0078636049826494" RangeMax="0.0078636049826494"> + AQAAAACAAADYAAAAEwAAAA==eJzz97hqeFqqwd5/mNEAS+9X3A== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_a_scan_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_re_ip" NumberOfTuples="27" format="binary" RangeMin="0.975596147171787" RangeMax="0.975596147171787"> + AQAAAACAAADYAAAAEwAAAA==eJzjn+2WKWrx3p5/mNEAPn1MXQ== + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[0]_ip" NumberOfTuples="27" format="binary" RangeMin="320" RangeMax="320"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBEgeGYUYDANbZEv0= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[1]_ip" NumberOfTuples="27" format="binary" RangeMin="80" RangeMax="80"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBEAeGYUYDAHEKD50= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[2]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_RungeKutta_InternalStateVariables[3]_ip" NumberOfTuples="27" format="binary" RangeMin="1" RangeMax="1"> + AQAAAACAAADYAAAAEQAAAA==eJxjYACBD/YMw4wGADZoH/Y= + </DataArray> + <DataArray type="Float64" Name="material_state_variable_stored energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + <DataArray type="Float64" Name="material_state_variable_disspated energy_ip" NumberOfTuples="27" format="binary" RangeMin="0" RangeMax="0"> + AQAAAACAAADYAAAADAAAAA==eJxjYBieAAAA2AAB + </DataArray> + </FieldData> + <Piece NumberOfPoints="8" NumberOfCells="1"> + <PointData Scalars="pressure"> + <DataArray type="Float64" Name="pressure" format="binary" RangeMin="-110000000" RangeMax="-110000000"> + AQAAAACAAABAAAAAEwAAAA==eJxjYGBguGc56yADmTQAVN4TkQ== + </DataArray> + </PointData> + <CellData> + </CellData> + <Points> + <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.7320508075688772"> + AQAAAACAAADAAAAAHAAAAA==eJxjYMAHPtjjlcaQh/GJ1YdLPy51mDQAp2EONQ== + <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"> + <Value index="0"> + 0 + </Value> + <Value index="1"> + 1.7320508076 + </Value> + </InformationKey> + </DataArray> + </Points> + <Cells> + <DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="7"> + AQAAAACAAABAAAAAHgAAAA==eJxjYIAARijNDKWZoDQLlGaF0uxQmg1KAwAC8AAd + </DataArray> + <DataArray type="Int64" Name="offsets" format="binary" RangeMin="8" RangeMax="8"> + AQAAAACAAAAIAAAACwAAAA==eJzjYIAAAABIAAk= + </DataArray> + <DataArray type="UInt8" Name="types" format="binary" RangeMin="12" RangeMax="12"> + AQAAAACAAAABAAAACQAAAA==eJzjAQAADQAN + </DataArray> + </Cells> + </Piece> + </UnstructuredGrid> +</VTKFile> diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/generate-reference-solution.py b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/generate-reference-solution.py new file mode 100755 index 00000000000..0637b20f49f --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/generate-reference-solution.py @@ -0,0 +1,120 @@ +#!/usr/bin/env python + +# invoke with +# LD_LIBRARY_PATH="<OGS_BUILD_DIR>/lib:$LD_LIBRARY_PATH" ./generate-reference-solution.py + + +from pathlib import Path + +import mtest +import numpy as np +import tfel.tests # noqa: F401 necessary for Boost.Python type converters +from ogs_and_mfront import ( + aggregate_ogs_results, + generate_reference_meshes, + plot, + read_mtest_results, + read_single_element_ogs_results, + report_and_plot_summary, + to_dataframes_with_mfront_names, + write_test_definition_snippet, +) + +if not Path("out").exists(): + Path("out").mkdir() + with Path("out/.gitignore").open("w") as fh: + fh.write("*\n") + +if not Path("out/plot_mtest").exists(): + Path("out/plot_mtest").mkdir() + +if not Path("out/plot_mtest_vs_ogs").exists(): + Path("out/plot_mtest_vs_ogs").mkdir() + +dt = 0.0125 +mtest_output_file = "out/confined_compression_mtest.res" +ogs_output_file = "out/ogs/confined_compression.pvd" # OGS must be run manually, e.g., run ctest and link ctest output dir +mesh_filename = "meshes/cube_1e0_1x1x1_hex8.vtu" + +check_times = np.arange(0.5, 6 + 0.5 / 2, 0.5) + +ref_mesh_filename_template = "confined_compression_ts_{ts}_t_{t:.6f}.vtu" + + +def exec_mtest(): + m = mtest.MTest() + m.setBehaviour( + "generic", + "libOgsMFrontBehaviourBentoniteGeneralModForCTestsOnly", + "BentoniteBehaviour", + ) + m.setScalarInternalStateVariableInitialValue("e", 0.9) + m.setScalarInternalStateVariableInitialValue("em", 0) + m.setScalarInternalStateVariableInitialValue("eM", 0) + m.setScalarInternalStateVariableInitialValue("SrM", 0) + m.setScalarInternalStateVariableInitialValue("a_scan", 0) + m.setScalarInternalStateVariableInitialValue("re", 0) + + # initial value of the gradients (strain+suction) + m.setGradientsInitialValues([0, 0, 0, 0, 0, 0, -110e6]) + # initial values of the thermodynamic forces (total stress+Saturation) + m.setThermodynamicForcesInitialValues([-2e6, -2e6, -2e6, 0, 0, 0, 0.345]) + + m.setImposedThermodynamicForce("StressXX", {0: -2e6, 6: -4e6}) + # m.setImposedGradient('StrainXX', 0) + m.setImposedGradient("StrainYY", 0) + m.setImposedGradient("StrainZZ", 0) + m.setImposedGradient("StrainXY", 0) + m.setImposedGradient("StrainXZ", 0) + m.setImposedGradient("StrainYZ", 0) + m.setImposedGradient("LiquidPressure", -110e6) + # + m.setExternalStateVariable("AirPressure", 0) + m.setExternalStateVariable("Temperature", 273.15) + + # output file + m.setOutputFileName(mtest_output_file) + m.setOutputFilePrecision(15) + + # // Imposing the time + time = np.arange( + 0, 6 + dt / 2, dt + ).tolist() # conversion to list necessary to satisfy mtest Python bindings + m.setTimes(time) + + print("## Executing MTest...") + m.execute() + + +exec_mtest() + +df_ref = read_mtest_results(mtest_output_file) + +report_and_plot_summary(df_ref, file_prefix="out/plot_mtest/") + +generate_reference_meshes( + mesh_filename, df_ref, check_times, ref_mesh_filename_template +) + +ts_ogs, recs_ogs = read_single_element_ogs_results(ogs_output_file) + +recs_ogs_agg = aggregate_ogs_results(recs_ogs) + +dfs_ogs_agg_mfront = to_dataframes_with_mfront_names(recs_ogs_agg, ts_ogs) + +print("\n## Plotting comparison between OGS and MTest...") +plot( + df_ref, + dfs_ogs_agg_mfront["min"], + dfs_ogs_agg_mfront["max"], + labels=["mtest", "ogs min", "ogs max"], + file_prefix="out/plot_mtest_vs_ogs/", + quantities="intersection", +) + +write_test_definition_snippet( + df_ref.columns.values, + dfs_ogs_agg_mfront["min"].columns.values, + "confined_compression", + "out/test_definition.xml", +) diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/meshes b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/meshes new file mode 120000 index 00000000000..a0acdbe4c66 --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/meshes @@ -0,0 +1 @@ +../meshes/ \ No newline at end of file diff --git a/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/ogs_and_mfront.py b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/ogs_and_mfront.py new file mode 100644 index 00000000000..8eccfed3eda --- /dev/null +++ b/Tests/Data/ThermoRichardsMechanics/MFront/BentoniteBehaviourGeneralMod/0d_confined_compression/ogs_and_mfront.py @@ -0,0 +1,376 @@ +import contextlib +import re +from pathlib import Path + +import matplotlib.pyplot as plt +import numpy as np +import pandas as pd +import pyvista as pv + +# ATM only for symmetric tensors. TODO extend +map_tensor_component_name_to_ogs_index = { + "XX": 0, + "YY": 1, + "ZZ": 2, + "XY": 3, + "YZ": 4, + "XZ": 5, +} + +map_ogs_index_to_component_name = { + 3: {0: "X", 1: "Y", 2: "Z"}, + 6: {index: name for name, index in map_tensor_component_name_to_ogs_index.items()}, + 9: {index: "XYZ"[index // 3] + "XYZ"[index % 3] for index in range(9)}, +} + + +map_mfront_name_to_ogs = { + "Strain": "epsilon_ip", + "Stress": "sigma_total_ip", + "LiquidPressure": "pressure", + "Saturation": "saturation_ip", +} + +map_ogs_name_to_mfront = {ogs: mfront for mfront, ogs in map_mfront_name_to_ogs.items()} + + +def parse_mtest_res_header(f): + multi_comp_re = re.compile(r"([0-9]+)th component of the (.*) [(](.*)[)]") + + names = [] + with Path(f).open() as fh: + for line in fh: + if not line.startswith("#"): + break + col, name = line.strip().split(": ") + + if m := multi_comp_re.match(name): + name = f"{m.group(3)}" + names.append(name) + return names + + +def read_mtest_results(mtest_output_file): + names = parse_mtest_res_header(mtest_output_file) + df_mtest = pd.read_csv( + mtest_output_file, sep=" ", comment="#", header=None, names=names, dtype=float + ) + df_mtest.index = df_mtest.index.rename("time_step") + return df_mtest + + +def read_single_element_ogs_results(pvd_file): + reader = pv.get_reader(pvd_file) + + recs = [] + ts = reader.time_values + + for ti, _t in enumerate(ts): + reader.set_active_time_point(ti) + mesh = reader.read()[0] + assert mesh.n_cells == 1 + if ti == 0: + N = mesh.n_points + else: + assert mesh.n_points == N + + rec = dict(mesh.point_data) + assert set(rec.keys()).isdisjoint(mesh.cell_data.keys()) + rec.update(mesh.cell_data) + assert set(rec.keys()).isdisjoint(mesh.field_data.keys()) + rec.update(mesh.field_data) + + recs.append(rec) + + assert len(recs) != 0 + + shapes = {field: value.shape for field, value in recs[0].items()} + + # assert same number of components and tuples for all timesteps + for rec in recs[1:]: + for field, value in rec.items(): + assert value.shape == shapes[field] + + return ts, recs + + +def aggregate(rec, f): + return {k: f(v, axis=0) for k, v in rec.items()} + + +def aggregate_ogs_results(recs): + names = ("min", "max", "mean", "std") + fs = (np.min, np.max, np.mean, np.std) + + return {n: [aggregate(rec, f) for rec in recs] for n, f in zip(names, fs)} + # recs_min = [ aggregate(rec, np.min) for rec in recs ] + # print(recs_min) + + +def to_dataframes_with_mfront_names(recs_ogs_agg, ts_ogs): + # suffix _mfront denotes MFront column naming scheme + recs_ogs_agg_mfront = { + agg: ogs_names_to_mfront(recs) for agg, recs in recs_ogs_agg.items() + } + dfs_ogs_agg_mfront = { + agg: pd.DataFrame.from_records(recs, index=pd.Index(ts_ogs, name="time")) + for agg, recs in recs_ogs_agg_mfront.items() + } + for df in dfs_ogs_agg_mfront.values(): + df["time"] = ts_ogs + + return dfs_ogs_agg_mfront + + +def ogs_names_to_mfront(recs_ogs): + def gen_mfront_keys_values(rec_ogs): + for field_ogs, v in rec_ogs.items(): + for comp_idx, comp_value in enumerate(np.atleast_1d(v)): + # print(ogs_name_to_mfront(field_ogs, comp_idx, np.size(v)), comp_value) + yield ogs_name_to_mfront(field_ogs, comp_idx, np.size(v)), comp_value + + recs_mfront = [] + for rec in recs_ogs: + recs_mfront.append(dict(gen_mfront_keys_values(rec))) + + return recs_mfront + + +def report_and_plot_summary(df_res, file_prefix): + df_agg = df_res.agg(["min", "max"]) + rec_max = df_agg.loc["max"] + + ser_range = (rec_max - df_agg.loc["min"]).drop("time") + + print( + "\n## The following quantities did not change over the course of the simulation:" + ) + for qty in ser_range[ser_range == 0].index.array: + print(f" {qty} (constant = {rec_max[qty]:g})") + + print("\n## Changing quantities are plotted...") + changing_quantities = ser_range[ser_range != 0].index.array + + plot(df_res, quantities=changing_quantities, file_prefix=file_prefix) + + +def common_columns(*dfs): + if not dfs: + return set() + + return set(dfs[0].columns.to_numpy()).intersection( + *(df.columns.to_numpy() for df in dfs[1:]) + ) + + +def plot( + *dfs, labels=None, quantities="union", file_prefix="", file_suffix="", diff=None +): + assert len(dfs) >= 1 + + if isinstance(quantities, str): + if quantities == "intersection": + quantities = common_columns(*dfs) + elif quantities == "union": + quantities = set(dfs[0].columns.to_numpy()).union( + *(df.columns.to_numpy() for df in dfs[1:]) + ) + else: + msg = f"Unknown magic value for quantities argument: '{quantities}'" + raise ValueError(msg) + + if diff is None: + diff = len(dfs) > 1 + + for qty in sorted(quantities): + if qty == "time": + continue + + if diff: + fig, (ax, ax_diff) = plt.subplots(2, sharex=True) + ax_last = ax_diff + ax_diff.set_ylabel("absolute difference") + + else: + fig, ax = plt.subplots() + ax_last = ax + # ax.set_ylabel(qty) + + for i, df in enumerate(dfs): + assert "time" in df.columns + try: + kwargs = {} + try: + kwargs["label"] = labels[i] + except TypeError: + if len(dfs) > 1: + kwargs["label"] = f"df #{i}" + + df.plot("time", qty, ax=ax, **kwargs) + except KeyError as e: + print(f"KeyError in dfs[{i}]:", e) + + if diff: + ax_diff.plot([], []) # plot nothing to skip first plot style + df_ref = dfs[0] + ax_abs_max_095 = 0 + ax_abs_max = 0 + some_below_0 = False + some_above_0 = False + + for i, df in enumerate(dfs[1:]): + ts = df["time"].to_numpy() + try: + assert np.allclose( + ts, df_ref["time"].to_numpy(), atol=1e-13, rtol=0 + ) + except AssertionError: + print(ts - df_ref["time"].to_numpy()) + raise + + kwargs = {} + with contextlib.suppress(TypeError): + kwargs["label"] = f"{labels[i+1]} $-$ {labels[0]}" + + ds = df[qty].to_numpy() - df_ref[qty].to_numpy() + + ax_diff.plot(ts, ds, **kwargs) + + ds_abs = np.abs(ds) + ax_abs_max_095 = max(ax_abs_max_095, np.quantile(ds_abs, 0.95)) + ax_abs_max = max(ax_abs_max, np.max(ds_abs)) + some_below_0 = some_below_0 or np.any(ds < 0) + some_above_0 = some_above_0 or np.any(ds > 0) + + ax_diff.legend() + if ax_abs_max != 0: + if ax_abs_max_095 != 0: + linthresh = ax_abs_max_095 + else: + linthresh = 1e-15 * ax_abs_max + + ax_diff.set_yscale("symlog", linthresh=linthresh) + if some_above_0: + ax_diff.axhline(linthresh, ls=":", color="gray") + if some_below_0: + ax_diff.axhline(-linthresh, ls=":", color="gray") + else: + ax_diff.annotate( + "all differences are zero", (0.05, 0.05), xycoords="axes fraction" + ) + ax_diff.axhline(0, ls=":", color="gray") + + ax.set_title(qty) + ax_last.set_xlabel("$t$ / s") + fig = ax.get_figure() + print(f" {file_prefix}{qty}{file_suffix}.png") + fig.savefig(f"{file_prefix}{qty}{file_suffix}.png") + plt.close(fig) + + +def mfront_to_ogs(rec): + ogs_rec = {} + + for k, v in rec.items(): + if k == "time_step": + continue + + name, comp = mfront_name_to_ogs(k) + + if comp is None: + ogs_rec[name] = np.array([v]) + elif name not in ogs_rec: + ogs_rec[name] = np.array([0] * (comp - 1) + [v]) + else: + arr = ogs_rec[name] + if len(arr) <= comp: + arr.resize(comp + 1, refcheck=False) + arr[comp] = v + + return ogs_rec + + +def mfront_name_to_ogs(k): + assert k != "time" + if k[-2:] in map_tensor_component_name_to_ogs_index: + name = k[:-2] + comp = map_tensor_component_name_to_ogs_index[k[-2:]] + else: + name = k + comp = None + + if name in map_mfront_name_to_ogs: + name = map_mfront_name_to_ogs[name] + else: + name = f"material_state_variable_{name}_ip" + + return name, comp + + +def ogs_name_to_mfront(name, comp, num_comps): + if name.startswith("material_state_variable_") and name.endswith("_ip"): + assert num_comps == 1 # other cases not yet implemented + return name[len("material_state_variable_") : -len("_ip")] + + if num_comps == 1: + comp_suffix = "" + else: + comp_suffix = map_ogs_index_to_component_name[num_comps][comp] + + name_mfront = map_ogs_name_to_mfront.get(name, name) + + return name_mfront + comp_suffix + + +def generate_reference_meshes( + input_mesh, df_res_mtest, time_steps, filename_template, num_int_pts +): + mesh_ic = pv.read(input_mesh) + mesh_ic.point_data.clear() + mesh_ic.cell_data.clear() + mesh_ic.field_data.clear() + N = mesh_ic.n_points + + df_res_t = df_res_mtest.copy(deep=False) + df_res_t["time_step"] = df_res_t.index + df_res_t = df_res_t.set_index("time") + + for t in time_steps: + mesh = mesh_ic.copy(deep=False) + rec = df_res_t.loc[t] + for k, v in mfront_to_ogs(rec).items(): + if k.endswith("_ip"): + mesh.field_data[k] = np.tile(v, (num_int_pts, 1)) + else: + mesh.point_data[k] = np.tile(v, (N, 1)) + + mesh.save(filename_template.format(t=t, ts=int(rec["time_step"]))) + + +def write_test_definition_snippet( + fields_mfront, fields_ogs_mfront, regex_prefix, output_file +): + fields1 = { + mfront_name_to_ogs(field)[0] for field in fields_mfront if field != "time" + } + fields2 = { + mfront_name_to_ogs(field)[0] for field in fields_ogs_mfront if field != "time" + } + + fields_ogs = fields1 & fields2 + + with Path(output_file).open("w") as fh: + fh.write(" <test_definition>") + + for field in sorted(fields_ogs): + fh.write( + f""" + <vtkdiff> + <regex>{regex_prefix}_ts_.*_t_.*[.]vtu</regex> + <field>{field}</field> + <absolute_tolerance>0.0</absolute_tolerance> + <relative_tolerance>0.0</relative_tolerance> + </vtkdiff>""" + ) + + fh.write("\n </test_definition>\n") -- GitLab