KratosMultiphysics / Kratos

Kratos Multiphysics (A.K.A Kratos) is a framework for building parallel multi-disciplinary simulation software. Modularity, extensibility and HPC are the main objectives. Kratos has BSD license and is written in C++ with extensive Python interface.
https://kratosmultiphysics.github.io/Kratos/
Other
1.04k stars 246 forks source link

[GeoMechanicsApplication] Standardization of K0 procedure #12645

Open indigocoral opened 2 months ago

indigocoral commented 2 months ago

From user story ; #59

User expectation of procedure (e.g. when using non-linear material)

User expectation in terms of provided parameters and K0, e.g. providing OCR value per layer, or providing user defined K0_xx, K0_yy, K0_zz when OCR is present.

Need to add logical procedure and/or error \ validation layer.

Also need to add mechanism to add the stress dependent effects of POP (see Marjan's documentation #12499 )

Also update the readme file for custom_processes to add K0 procedure (or refer to the docs)

Closed by:

After trying with applications\GeoMechanicsApplication\tests\test_k0_procedure_process\test_k0_procedure_k0_nc_ocr by:

The OCR per material ( and therefore per layer as each layer has its own material ) works already. To use a POP input from a material, Marjan shows that the integration point vertical stress is needed. Taking some care of zero vertical stress ( then the horizontal ones should probably zero and a zero division avoided ) The need for the vertical stress to compute an OCR value and from that the K0 directional values dictates that for POP the K0 value computation has to take place inside the integration point loop within ApplyK0ProcedureProcess::CalculateK0Stresses(Element& rElement).

rfaasse commented 1 month ago

We discussed in the refinement that issues with partially/unsaturated zones are out of scope for completing this issue and estimated accordingly

FYI @indigocoral @mcgicjn2