Thank you for the second script.
In the meanwhile I tried to build up a very simple model which consist of two submerged layers (a NC clay overlying a NC medium dense sand) with Mohr-Coulomb constitutive model. The goal was to verify how good is Adonis in the calculation of stresses within the soil (vertical effective stress, pore pressure and horizontal effective stress as well).
To clarify I put the script of the model in attachment. Anyway the model is very simple with water table at ground level and horizontal layers. I posted also a plot which reports the correct stresses in the ground in comparison with Adonis's prediction. As anyone can see (note in this particular case sigma'_v0=sigma1’ and sigma'_h0=sigma3’) the prediction for pore pressure and vertical effective stress are good with probably a border effect which affects a bit the data on the top and bottom of the model. For horizontal effective stress the prediction seems not so good as the previous one.
Doing this I noticed a couple of things:
The first thing is MC properties tab has just a single value of density. This can conduct, expecially in sandy soil, to an inaccurate evaluation of stresses of course depending on the presence and quote of water table. To overcome this, probably we just need to introduce one layer more with gamma_sat density (or gamma density), but I think this could represent a serious limitation in the next development of Adonis especially facing with more complex model when for example there will be the need of simulate a dewatering and Adonis will not able to switch from a gamma_sat density to a gamma density. This imply that Adonis must be able to be sensitive of the quote of the groundwater table and switch the density accordingly. I think this can be added to the list “things to do”.
The second thing I want outline is about the process of adding initial conditions to a material. Generally is invocated the so called k0 procedure if we are not facing with an unbalanced geometry of the model for which a gravity loading procedure is the right choice. If I’m not wrong a gravity loading procedure is used in the second script posted in the forum.
Regarding the K0 procedure, it seems Adonis can incorporate initial stresses (horizontal and vertical) for any specific material layer by introducing an initial value and a gradient (in x and y ), nevertheless it seems this method is not properly able to introduce initial stresses in a stacked model because equations in this case are not just in the form y=mx but also in the form y=mx+c which are not implemented in Adonis at the moment (please refer to initial_stresses_pdf attached in which equations of horizontal and vertical stresses are explicitated through M (gradient) and C (intercept)). At the moment I don’t see any workaround if not a fix about this point but please consider my limited experience with Adonis and consider also my possible misunderstanding of the "initial condition" building process.