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.
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:
[x] #12646
[ ] In the MaterialParameters.json files add an input field for OCR and POP (OCR already available, POP available on draft pull request).
[ ] In the K0 procedure determine where these should be handled. (@WPK4FEM has made this more concrete on the draft pull request)
[ ] Determine the order of importance of the input fields and document that in the README for the processes (prepared on the draft pull request).
[ ] Write tests for the new features ( already some available at the draft pull request, Jon is also adding ).
[x] #12694
After trying with applications\GeoMechanicsApplication\tests\test_k0_procedure_process\test_k0_procedure_k0_nc_ocr by:
remove the set_parameter_field_process
add OCR in MaterialParameters1.json
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).
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:
MaterialParameters.json
files add an input field for OCR and POP (OCR already available, POP available on draft pull request).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).