Commit 81e5bd5c authored by GILLES Sebastien's avatar GILLES Sebastien

#1443 Add for Elasticity model the from partitioned data test.

parent 2ec170c3
......@@ -3748,6 +3748,10 @@
BE510D821CB3D44900E953FE /* Component.doxygen */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Component.doxygen; sourceTree = "<group>"; };
BE5275222498C02500507228 /* demo.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = demo.lua; sourceTree = "<group>"; };
BE5275232498EA5000507228 /* demo_from_prepartitioned_data.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = demo_from_prepartitioned_data.lua; sourceTree = "<group>"; };
BE5275242499002700507228 /* demo_3d_binary_from_prepartitioned_data.lua */ = {isa = PBXFileReference; lastKnownFileType = text; path = demo_3d_binary_from_prepartitioned_data.lua; sourceTree = "<group>"; };
BE5275252499002700507228 /* demo_2d_binary_from_prepartitioned_data.lua */ = {isa = PBXFileReference; lastKnownFileType = text; path = demo_2d_binary_from_prepartitioned_data.lua; sourceTree = "<group>"; };
BE5275262499002700507228 /* demo_3d_from_prepartitioned_data.lua */ = {isa = PBXFileReference; lastKnownFileType = text; path = demo_3d_from_prepartitioned_data.lua; sourceTree = "<group>"; };
BE5275272499002800507228 /* demo_2d_from_prepartitioned_data.lua */ = {isa = PBXFileReference; lastKnownFileType = text; path = demo_2d_from_prepartitioned_data.lua; sourceTree = "<group>"; };
BE5301441E774418004CA0BA /* ApplySetCauchyGreenTensor.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = ApplySetCauchyGreenTensor.hpp; path = Internal/ApplySetCauchyGreenTensor.hpp; sourceTree = "<group>"; };
BE5301451E774418004CA0BA /* ApplySetCauchyGreenTensor.hxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = ApplySetCauchyGreenTensor.hxx; path = Internal/ApplySetCauchyGreenTensor.hxx; sourceTree = "<group>"; };
BE5389FB1C897FE400D80749 /* Mpi.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Mpi.hpp; sourceTree = "<group>"; };
......@@ -8202,6 +8206,10 @@
BE6EA61F1EC32FFB0085E651 /* demo_2d.lua */,
BE7ABCE822DCDF0100238C51 /* demo_3d_binary.lua */,
BE7ABCE922DCDF0100238C51 /* demo_2d_binary.lua */,
BE5275252499002700507228 /* demo_2d_binary_from_prepartitioned_data.lua */,
BE5275272499002800507228 /* demo_2d_from_prepartitioned_data.lua */,
BE5275242499002700507228 /* demo_3d_binary_from_prepartitioned_data.lua */,
BE5275262499002700507228 /* demo_3d_from_prepartitioned_data.lua */,
BE4478861AA740F800665010 /* main.cpp */,
BECF3E3022E8D3A400FF951A /* main_update_lua_file.cpp */,
BE3B35FB1D91792500DB81A3 /* main_ensight_output.cpp */,
......@@ -42,7 +42,8 @@ add_test(ElasticityModel3D
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3D PROPERTIES TIMEOUT 50)
......@@ -53,16 +54,31 @@ add_test(ElasticityModel3D-mpi
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3D-mpi PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3D-mpi-from-prepartitioned-data
${OPEN_MPI_INCL_DIR}/../bin/mpirun
--oversubscribe
-np 4 MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d_from_prepartitioned_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3D-mpi-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2D
MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2D PROPERTIES TIMEOUT 50)
......@@ -73,15 +89,30 @@ add_test(ElasticityModel2D-mpi
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2D-mpi PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2D-mpi-from-prepartitioned-data
${OPEN_MPI_INCL_DIR}/../bin/mpirun
--oversubscribe
-np 4 MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d_from_prepartitioned_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2D-mpi-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3DEnsightOutput
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3DEnsightOutput PROPERTIES TIMEOUT 50)
......@@ -89,15 +120,26 @@ add_test(ElasticityModel3DEnsightOutput-mpi
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3DEnsightOutput-mpi PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3DEnsightOutput-mpi-from-prepartitioned-data
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel3DEnsightOutput-mpi-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2DEnsightOutput
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2DEnsightOutput PROPERTIES TIMEOUT 50)
......@@ -105,16 +147,27 @@ add_test(ElasticityModel2DEnsightOutput-mpi
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2DEnsightOutput-mpi PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2DEnsightOutput-mpi-from-prepartitioned-data
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Ascii
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Ascii)
set_tests_properties(ElasticityModel2DEnsightOutput-mpi-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3D-bin
MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d_binary.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3D-bin PROPERTIES TIMEOUT 50)
......@@ -125,16 +178,30 @@ add_test(ElasticityModel3D-mpi-bin
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d_binary.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3D-mpi-bin PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3D-mpi-bin-from-prepartitioned-data
${OPEN_MPI_INCL_DIR}/../bin/mpirun
--oversubscribe
-np 4 MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_3d_binary_from_prepartitioned_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3D-mpi-bin-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2D-bin
MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d_binary.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel2D-bin PROPERTIES TIMEOUT 50)
......@@ -145,15 +212,29 @@ add_test(ElasticityModel2D-mpi-bin
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d_binary.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel2D-mpi-bin PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2D-mpi-bin-from-prepartitioned-data
${OPEN_MPI_INCL_DIR}/../bin/mpirun
--oversubscribe
-np 4 MoReFEM4Elasticity
--overwrite_directory
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_ROOT}/Sources/ModelInstances/Elasticity/demo_2d_binary_from_prepartitioned_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel2D-mpi-bin-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3DEnsightOutput-bin
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3DEnsightOutput-bin PROPERTIES TIMEOUT 50)
......@@ -161,15 +242,26 @@ add_test(ElasticityModel3DEnsightOutput-mpi-bin
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3DEnsightOutput-mpi-bin PROPERTIES TIMEOUT 50)
add_test(ElasticityModel3DEnsightOutput-mpi-bin-from-prepartitioned-data
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary/Elasticity/3D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3DEnsightOutput-mpi-from-prepartitioned-data PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2DEnsightOutput-bin
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Seq/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel2DEnsightOutput-bin PROPERTIES TIMEOUT 50)
......@@ -177,10 +269,20 @@ add_test(ElasticityModel2DEnsightOutput-mpi-bin
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary)
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel2DEnsightOutput-mpi-bin PROPERTIES TIMEOUT 50)
add_test(ElasticityModel2DEnsightOutput-mpi-bin-from-prepartitioned-data
MoReFEM4ElasticityEnsightOutput
-e MOREFEM_ROOT=${MOREFEM_ROOT}
-i ${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary/Elasticity/2D/Rank_0/input_data.lua
-e MOREFEM_RESULT_DIR=${MOREFEM_TEST_OUTPUT_DIR}/Mpi4_FromPrepartitionedData/Binary
-e MOREFEM_PREPARTITIONED_DATA_DIR=${MOREFEM_TEST_OUTPUT_DIR}/PrepartitionedData/Binary)
set_tests_properties(ElasticityModel3DEnsightOutput-mpi-bin-from-prepartitioned-data PROPERTIES TIMEOUT 50)
morefem_install(MoReFEM4ElasticityEnsightOutput)
add_executable(MoReFEM4ElasticityCheckResults ${CMAKE_CURRENT_LIST_DIR}/test_results.cpp)
......
......@@ -26,6 +26,7 @@
# include "Core/InputData/Instances/TimeManager/TimeManager.hpp"
# include "Core/InputData/Instances/Geometry/Mesh.hpp"
# include "Core/InputData/Instances/Solver/Petsc.hpp"
# include "Core/InputData/Instances/Parallelism/Parallelism.hpp"
# include "FormulationSolver/Crtp/VolumicAndSurfacicSource.hpp"
......@@ -130,6 +131,7 @@ namespace MoReFEM
InputDataNS::VectorialTransientSource<EnumUnderlyingType(SourceIndex::volumic)>,
InputDataNS::VectorialTransientSource<EnumUnderlyingType(SourceIndex::surfacic)>,
InputDataNS::Parallelism,
InputDataNS::Result
>;
......
......@@ -525,6 +525,30 @@ TransientSource2 = {
} -- TransientSource2
Parallelism = {
-- What should be done for a parallel run. There are 4 possibilities:
-- 'Precompute': Precompute the data for a later parallel run and stop once it's done.
-- 'ParallelNoWrite': Run the code in parallel without using any pre-processed data and do not write down
-- the processed data.
-- 'Parallel': Run the code in parallel without using any pre-processed data and write down the processed
-- data.
-- 'RunFromPreprocessed': Run the code in parallel using pre-processed data.
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'Precompute', 'ParallelNoWrite', 'Parallel', 'RunFromPreprocessed'})
policy = 'Parallel',
-- Directory in which parallelism data will be written or read (depending on the policy).
-- Expected format: "VALUE"
directory = '${MOREFEM_PREPARTITIONED_DATA_DIR}/Elasticity/2D'
}
Result = {
......
......@@ -412,6 +412,28 @@ TransientSource2 = {
} -- TransientSource2
Parallelism = {
-- What should be done for a parallel run. There are 4 possibilities:
-- 'Precompute': Precompute the data for a later parallel run and stop once it's done.
-- 'ParallelNoWrite': Run the code in parallel without using any pre-processed data and do not write down
-- the processed data.
-- 'Parallel': Run the code in parallel without using any pre-processed data and write down the processed
-- data.
-- 'RunFromPreprocessed': Run the code in parallel using pre-processed data.
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'Precompute', 'ParallelNoWrite', 'Parallel', 'RunFromPreprocessed'})
policy = 'Parallel',
-- Directory in which parallelism data will be written or read (depending on the policy).
-- Expected format: "VALUE"
directory = '${MOREFEM_PREPARTITIONED_DATA_DIR}/Elasticity/2D'
}
-- Result
Result = {
-- Directory in which all the results will be written. This path may use the environment variable
......
......@@ -4,12 +4,6 @@
-- transient
transient = {
-- Tells which policy is used to describe time evolution.
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'constant_time_step', 'variable_time_step'}})
time_evolution_policy = "constant_time_step",
-- Time at the beginning of the code (in seconds).
-- Expected format: VALUE
-- Constraint: v >= 0.
......@@ -19,16 +13,12 @@ transient = {
-- Expected format: VALUE
-- Constraint: v > 0.
timeStep = 0.1,
-- Minimum time step between two iterations, in seconds.
-- Expected format: VALUE
-- Constraint: v > 0.
minimum_time_step = 0.1,
-- Maximum time, if set to zero run a static case.
-- Expected format: VALUE
-- Constraint: v >= 0.
timeMax = 0.
timeMax = 0.5
}
......@@ -49,8 +39,6 @@ NumberingSubset1 = {
}
-- Unknown1: displacement.
Unknown1 = {
-- Name of the unknown (used for displays in output).
......@@ -329,116 +317,58 @@ Solid = {
VolumicMass = {
-- How is given the parameter (as a constant, as a Lua function, per quadrature point, etc...)
-- How is given the Young modulus (as a constant, as a Lua function, per quadrature point, etc...)
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'at_quadrature_point', 'piecewise_constant_by_domain'})
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'piecewise_constant_by_domain'})
nature = "constant",
-- Value of the volumic mass in the case nature is 'constant'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: VALUE
-- Constraint: v > 0.
scalar_value = 1.,
-- Value of the volumic mass in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- The value for the parameter, which type depends directly on the nature chosen:
-- If nature is 'constant', expected format is VALUE
-- If nature is 'piecewise_constant_by_domain', expected format is {[KEY1] = VALUE1, [KEY2] = VALUE2, ...}
-- If nature is 'lua_function', expected format is a Lua function with prototype function(x, y, z)
-- return x + y - z
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function = none,
-- Domain indices of the parameter in the case nature is 'piecewise_constant_by_domain'. The various
-- domains given here must not intersect.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_id = { },
-- Value of the parameter in the case nature is 'piecewise_constant_by_domain'.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_value = { }
-- where x, y and z are global coordinates. sin, cos, tan, exp and so forth require a 'math.' preffix.
value = 1.3
}, -- VolumicMass
PoissonRatio = {
-- How is given the parameter (as a constant, as a Lua function, per quadrature point, etc...)
-- How is given the Young modulus (as a constant, as a Lua function, per quadrature point, etc...)
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'at_quadrature_point', 'piecewise_constant_by_domain'})
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'piecewise_constant_by_domain'})
nature = "constant",
-- Value of the volumic mass in the case nature is 'constant'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: VALUE
-- Constraint: v > 0.
scalar_value = 0.3,
-- Value of the volumic mass in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- The value for the parameter, which type depends directly on the nature chosen:
-- If nature is 'constant', expected format is VALUE
-- If nature is 'piecewise_constant_by_domain', expected format is {[KEY1] = VALUE1, [KEY2] = VALUE2, ...}
-- If nature is 'lua_function', expected format is a Lua function with prototype function(x, y, z)
-- return x + y - z
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function = none,
-- Domain indices of the parameter in the case nature is 'piecewise_constant_by_domain'. The various
-- domains given here must not intersect.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_id = {},
-- Value of the parameter in the case nature is 'piecewise_constant_by_domain'.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_value = {},
-- where x, y and z are global coordinates. sin, cos, tan, exp and so forth require a 'math.' preffix.
value = 0.03846150295857715,
}, -- PoissonRatio
YoungModulus = {
-- How is given the parameter (as a constant, as a Lua function, per quadrature point, etc...)
--- How is given the Young modulus (as a constant, as a Lua function, per quadrature point, etc...)
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'at_quadrature_point', 'piecewise_constant_by_domain'})
nature = 'constant',
-- Value of the volumic mass in the case nature is 'constant'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: VALUE
-- Constraint: v > 0.
scalar_value = 3.e7,
-- Value of the volumic mass in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function', 'piecewise_constant_by_domain'})
nature = "constant",
-- The value for the parameter, which type depends directly on the nature chosen:
-- If nature is 'constant', expected format is VALUE
-- If nature is 'piecewise_constant_by_domain', expected format is {[KEY1] = VALUE1, [KEY2] = VALUE2, ...}
-- If nature is 'lua_function', expected format is a Lua function with prototype function(x, y, z)
-- return x + y - z
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function = none,
-- Domain indices of the parameter in the case nature is 'piecewise_constant_by_domain'. The various
-- domains given here must not intersect.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_id = {},
-- Value of the parameter in the case nature is 'piecewise_constant_by_domain'.
-- Expected format: {VALUE1, VALUE2, ...}
piecewise_constant_domain_value = {},
-- where x, y and z are global coordinates. sin, cos, tan, exp and so forth require a 'math.' preffix.
value = 8307692.023668617,
}, -- YoungModulus
} -- Solid
......@@ -446,130 +376,78 @@ Solid = {
TransientSource1 = {
-- How is given the transient source value (as a constant, as a Lua function, per quadrature point, etc...)
-- Expected format: {"VALUE1", "VALUE2", ...}
-- Expected format: "VALUE"
-- Constraint: value_in(v, {'ignore', 'constant', 'lua_function'})
nature = {"ignore", "ignore", "ignore"},
-- Value of the transient source in the case nature is 'constant'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Expected format: {VALUE1, VALUE2, ...}
scalar_value = { 0. , -0.0001, 0.},
-- Value of the transient source in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Function expects as arguments global coordinates (coordinates in the mesh).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function_x = none,
-- Value of the transient source in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Function expects as arguments global coordinates (coordinates in the mesh).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function_y = none,
-- Value of the transient source in the case nature is 'lua_function'(and also initial value if nature is
-- 'at_quadrature_point'; irrelevant otherwise).
-- Function expects as arguments global coordinates (coordinates in the mesh).
-- Expected format: Function in Lua language, for instance:
-- -- function(arg1, arg2, arg3)
-- return arg1 + arg2 -
-- arg3
-- end
-- sin, cos and tan require a 'math.'
-- preffix.
-- If you do not wish to provide one, put anything you want (e.g. 'none'): the
-- content is not interpreted by LuaOptionFile until an actual use of the underlying function.
lua_function_z = none
nature = { 'ignore', 'ignore', 'ignore'},
-- The value for the parameter, which type depends directly on the nature chosen:
-- If nature is 'constant', expected format is VALUE
-- If nature is 'piecewise_constant_by_domain', expected format is {[KEY1] = VALUE1, [KEY2] = VALUE2, ...}
-- If nature is 'lua_function', expected format is a Lua function with prototype function(x, y, z)
-- return x + y - z
-- end
-- where x, y and z are global coordinates. sin, cos, tan, exp and so forth require a 'math.' preffix.
value = { 0., 0., 0. }
} -- TransientSource1
-- Surfacic source
TransientSource2 = {