Studies in Salome Meca


i have posted the same thread to the OT discourse but i was told to discuss it here too!
I would like to ask and discuss the methodology i use between studies in Salome Meca and Openturns.
The current procedure i use is the following:
I am creating the study in Aster_Study and define the parameters i want to see in OT environment. I proceed then to define the output with IMPR_TABLE in a numpy array so when i ask it to export the study in OT it can relate between the variables and the numpy array. From what i have seen i can define only one table to querry each time. So all the outputs i want to receive must be located in that table.
Now, once i have the variables and the outputs with some use of python lists i define the different columns and rows for the models definition. I proceed then to define the statistical model in which a design of experiments is done and evaluated.

In this part i want to ask if there is a way, to surpass the connection with that OT has with the YACS module to augment the velocity of the evaluation ?

Once i have the evaluation, i can proceed to define a metamodel and then turn the metamodel into a physical model, if the validation is high enough, which means it can reproduce (predict (?)) the outputs of the study correctly.

Is there a way to save the model outside the environment of OT ?
Under the hypothesis that i have received new outputs from an experiment, is it possible to query the metamodel so i can calibrate the initial parameters on the new information?

Thank you very much!

Hello, welcome to the community for your post.

About the use of Persalys within Salome and surpass the connection, I am not able to answer.

Building the metamodel indeed allows you to use it as a physical model. You must be careful about the domain definition of it to avoid the extrapolation, especially if you want to compute probability of failure.

As it is a polynomial chaos or a kriging, it is quite difficult to save the model outside OT environment. The easiest way might be to call Python and your saved model from the other software.
About the new outputs, if I understood well your request, you can use the calibration functionality in persalys to update the input value (assuming it is Gaussian).


i was wondering as far as my first question goes. Due to the C.A version 15.2 being more “pythonic” is it possible to call into the persalys GUI the aster environment to run analysis and get results to directly use them on optimization and calibration schemes?
I would like to do all the operations inside the persalys / OT environment although in 2018 and 2019 versions of salome meca i didnt find the “save as” option so i have always to get the .xml file from within the folders to do a backup of the operations i am performing.
Also to your knowledge are there references on the statistical models used in OT ? Meaning, i have read the beam example and different models are used for the elastic modulus, poisson ration, loading force etc. Where can i find references or which keywords should i use to search for these models?

Again, thank you very much!

For your first question, yes I think it is possible to create have your model defined in Persalys and optimize the parameters. The only issue might be the time that will be required to perform the calibration if your aster model is expensive.
About the distributions used to represent mechanical parameters, they usually come from real tests or expert assessment. Depending on materials, environments and others parameters, it can be different but it may exists references with test results. You can search for tensile test, shear test or fatigue test with the application field and material name.

Thank you very much for the swift and clear response to my questions! Persalys python environment connect to my pythons path or it has one of its own environment?

It has its own environment but there is pip installed with the Python so you can install the packages you want. You are using the Windows or Linux version ?


i am using the Linux version!
Thank you very much for the response!

Ok for the linux, the appimage is decompressed once you launch it in /tmp so if you install some package they will be lost once you close Persalys. One possibility is to extract the appImage and always use the extracted files, otherwise, you can have a script that install your packages each time.

To install package, one simple way is to use the Python console and to run :
import subprocess
subprocess.check_output(['python', '-m', 'pip', 'install', 'pandas'])

Ok I tried and you don’t have to install it each time you launch Persalys, it keeps the installed packages!

Hello, i didn’t want to make a new thread so i will ask and continue the present one. Regarding the calibration process in Persalys. I have seen in the youtube guides and relative documentation which says that i need inputs and outputs y = f(x) to feed on the observations to initiate the calibration. Is it possible to perform a calibration with only outputs ?

Hi you could start a new thread as your question has no real connection with salome meca.

About your question, unfortunately, it is not directly available but you can still add a fake input that is not used in your model. And add a column in your observations for this input with fake values in it. This is not the best solution and we might change this behavior as it is now possible in OT to perform calibration without input observations.