Skip to content

Commit

Permalink
Merge branch 'master' into 645-tfel-material-add-eshelby-tensor-in-an…
Browse files Browse the repository at this point in the history
…isotropic-medium
  • Loading branch information
antoinecea authored Feb 3, 2025
2 parents d65445d + e3f5765 commit 381aba9
Show file tree
Hide file tree
Showing 200 changed files with 6,259 additions and 2,801 deletions.
3 changes: 3 additions & 0 deletions cmake/modules/tfel.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,7 @@ $<TARGET_FILE_DIR:TFELConfig>;\
$<TARGET_FILE_DIR:TFELUnicodeSupport>;\
%PATH%"
COMMAND "${mfront_executable}"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/${dir}"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/models"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/behaviours"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/properties"
Expand All @@ -332,6 +333,7 @@ $<TARGET_FILE_DIR:TFELUnicodeSupport>;\
add_custom_command(
OUTPUT ${output_files}
COMMAND "${mfront_executable}"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/${dir}"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/models"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/behaviours"
ARGS "--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/properties"
Expand All @@ -343,6 +345,7 @@ $<TARGET_FILE_DIR:TFELUnicodeSupport>;\
if(CMAKE_VERSION AND (${CMAKE_VERSION} GREATER "2.8.2"))
add_test(NAME mfront-${file}-${interface}
COMMAND ${mfront_executable}
--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/${dir}
--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/models
--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/behaviours
--search-path=${PROJECT_SOURCE_DIR}/mfront/tests/properties
Expand Down
379 changes: 379 additions & 0 deletions docs/mfront/BehaviourVariable.md

Large diffs are not rendered by default.

20 changes: 20 additions & 0 deletions docs/mfront/BehaviourVariableFactory.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
The `@BehaviourVariableFactory` keyword allows to define an object able
to create a behaviour variable.

## Example of usage

~~~~{cxx}
@BehaviourVariableFactory f1 {
file: "BehaviourVariablePlasticity.mfront",
variables_suffix: "1",
external_names_prefix: "FirstPhase",
store_gradients: true,
store_thermodynamic_forces: true,
shared_external_state_variables: {".+"}
};
@Integrator{
auto b1 = f1.make();
...
}
~~~~
2 changes: 2 additions & 0 deletions docs/mfront/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,8 @@ install_mfront_desc(AuxiliaryStateVar)
install_mfront_desc(AuxiliaryStateVariable)
install_mfront_desc(AxialGrowth)
install_mfront_desc(Behaviour)
install_mfront_desc(BehaviourVariable)
install_mfront_desc(BehaviourVariableFactory)
install_mfront_desc(Bounds)
install_mfront_desc(Brick)
install_mfront_desc(Coef)
Expand Down
17 changes: 11 additions & 6 deletions docs/mfront/Model.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
The `@Model` keyword is used to call an external model from a
behaviour. This model is called before any code block defining the
behaviour.
The `@Model` keyword is used to call an external point-wise model from a
behaviour. Those models can be implemented using the following DSLs:
`Model`, `DefaultModel`, `RungeKuttaModel` and `ImplicitModel`.

This model is called before any code block defining the behaviour.

This model is meant to make evolve one or more state variables of the
material.

From the behaviour point of view, those state variables are declared
as additional auxiliary state variables, but their values and their
From the behaviour point of view, those state variables are declared as
additional auxiliary state variables, but their values and their
increments over the time step are known. *Those variables are meant to
be used like external state variables*.
be used like external state variables*. However, those variables are
updated after computing the final thermodynamic forces and updating the
(standard) state variables of the behaviour **before** any code defined
by the user through the `@UpdateAuxiliaryStateVariables`.

## Note

Expand Down
14 changes: 14 additions & 0 deletions docs/mfront/TFELLibraries.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
The `@TFELLibraries` keyword let the user specify TFEL libraries to link
with. This keyword must be followed by an array of strings.

The following libraries are available: `Config`, `Exception`,
`Glossary`, `Tests`, `UnicodeSupport`, `Utilities`, `System`, `Math`,
`MathCubicSpline`, `MathKriging`, `MathParser`, `NUMODIS`, `Material`,
`MFront`, `MTest`.

## Example

~~~~{.cpp}
@TFELLibraries {"MathParser"};
~~~~

20 changes: 12 additions & 8 deletions docs/mfront/UpdateAuxiliaryStateVariables.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
The `UpdateAuxiliaryStateVariables` introduces a code block meant to
The `@UpdateAuxiliaryStateVariables` introduces a code block meant to
update the auxiliary state variables after integration.

In implicit domain specific languages, the code declared by
`UpdateAuxiliaryStateVariables` is called once the integration
variables (including state variables) and stresses (see the
`@ComputeFinalStress` keyword) have been updated. The external state
variables are not updated.
In the `Default` and `Implicit` domain specific languages, the code
declared by `UpdateAuxiliaryStateVariables` is called once the
integration variables (including state variables) and stresses (see the
`@ComputeFinalStress` keyword) have been updated. If external point-wise
models were declared (see the `@Model` keyword), the associated
auxiliary states are also updated. The external state variables are not
updated.

In Runge-Kutta domain specific languages, the code declared by
`UpdateAuxiliaryStateVariables` is called after each successful time
Expand All @@ -14,8 +16,10 @@ substeppings: in this case, the code declared by
`UpdateAuxiliaryStateVariables` may be called several time during the
behaviour integration. An additional variable called `dt_`, which is
lower than the total time step increment `dt` if substeppings is
performed, gives the current time increment. The external state
variables are set to their values at the current date.
performed, gives the current time increment. If external point-wise
models were declared (see the `@Model` keyword), the associated
auxiliary states are set to their values at the current date. The
external state variables are set to their values at the current date.

## Example (Implicit dsl)

Expand Down
4 changes: 4 additions & 0 deletions docs/web/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ add_custom_target(website)
add_dependencies(doc website)

pandoc_html(index "-c css/slideshow.css")
pandoc_html(behaviour-variable)
pandoc_html(initializers)
pandoc_html(post-processings)
pandoc_html(associated-projects "--toc")
Expand Down Expand Up @@ -126,6 +127,7 @@ pandoc_html(release-notes-3.0.11 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.0.12 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.0.13 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.0.14 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.0.15 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.1 "--toc" "--toc-depth=2" "--number-sections" "-c css/slideshow.css")
pandoc_html(release-notes-3.1.1 "--toc" "--toc-depth=2")
pandoc_html(release-notes-3.1.2 "--toc" "--toc-depth=2")
Expand Down Expand Up @@ -173,10 +175,12 @@ pandoc_html(release-notes-4.0.1 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.0.2 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.0.3 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.0.4 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.0.5 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.1 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.1.1 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.1.2 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.1.3 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.1.4 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.2 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.2.1 "--toc" "--toc-depth=2" "--number-sections")
pandoc_html(release-notes-4.2.2 "--toc" "--toc-depth=2" "--number-sections")
Expand Down
Loading

0 comments on commit 381aba9

Please sign in to comment.