Skip to content

Note

Click here to download the full example code

Toyoura Sand (Drained)

Drained triaxial tests on Toyoura sand with DEM 1.

import pandas as pd

from micromechanical.cli.plot import PlotCLI, PlotConfig

config: PlotConfig = PlotCLI.loadConfig("../../calibrations/micromechanical-plots.yaml")

plot_name = "Gu2014-drained-CH-OSIMSAND-two-column"
plot_config = config.plots[plot_name]

Out:

/home/runner/work/musica/musica/micromechanical/cli/plot.py:56: UserWarning: Calibration file /home/runner/work/musica/musica/calibrations/Calibrations/Gu2024-CT-Dense-Static.json not found, skipping.
  warnings.warn(f"Calibration file {path.as_posix()} not found, skipping.")
/home/runner/work/musica/musica/micromechanical/cli/plot.py:56: UserWarning: Calibration file /home/runner/work/musica/musica/calibrations/Calibrations/Gu2024-CT-Dense-Kinematic.json not found, skipping.
  warnings.warn(f"Calibration file {path.as_posix()} not found, skipping.")
/home/runner/work/musica/musica/micromechanical/cli/plot.py:56: UserWarning: Calibration file /home/runner/work/musica/musica/calibrations/Calibrations/Gu2024-CT-Medium-Dense-Static.json not found, skipping.
  warnings.warn(f"Calibration file {path.as_posix()} not found, skipping.")
/home/runner/work/musica/musica/micromechanical/cli/plot.py:56: UserWarning: Calibration file /home/runner/work/musica/musica/calibrations/Calibrations/Gu2024-CT-Medium-Dense-Kinematic.json not found, skipping.
  warnings.warn(f"Calibration file {path.as_posix()} not found, skipping.")

Parameters

pd.DataFrame(
    {
        key.replace("micromechanical.calibrationkey:FabricCoefficientKey(", "").replace(")", ""): value
        for key, value in plot_config.calibration.read(config.root).parameters.items()
    },
    index=["Gu2014-drained"],
)
Ad Lambda cohesion e0 eref fref kn0 kpr krr Fc0 h m n nd ne np phi pref xi
Gu2014-drained 1.50433 0.019 0.0 0.6 0.729 0.0001 68.695787 0.245881 0.233935 0.407191 453.948067 2.061004 0.01011 5.016768 0.3855 1.84255 15.659515 101.325 1.0

Figures

plot_config.plot(plot_name, grids=config.grids, save=False, overwrite=False, exclude_figures=["macroscopic-anisotropy"])

(a), (b), (c), (d), (e), (f)

Out:

/home/runner/work/musica/musica/micromechanical/cli/_calculationoptions.py:42: UserWarning: Calculation option micromechanical.calibrationkey:FabricCoefficientKey(Fc0) is not supported
  warnings.warn(f"Calculation option {key} is not supported")
/home/runner/work/musica/musica/micromechanical/cli/_calculationoptions.py:42: UserWarning: Calculation option micromechanical.calibrationkey:FabricCoefficientKey(h) is not supported
  warnings.warn(f"Calculation option {key} is not supported")
/home/runner/work/musica/musica/micromechanical/cli/_calculationoptions.py:42: UserWarning: Calculation option micromechanical.calibrationkey:FabricCoefficientKey(m) is not supported
  warnings.warn(f"Calculation option {key} is not supported")
/home/runner/work/musica/musica/micromechanical/cli/_calculationoptions.py:42: UserWarning: Calculation option micromechanical.calibrationkey:FabricCoefficientKey(n) is not supported
  warnings.warn(f"Calculation option {key} is not supported")
/home/runner/work/musica/musica/micromechanical/cli/_figureoptions.py:337: UserWarning: The figure Gu2014-drained-CH-OSIMSAND-two-column -> macroscopic is not generated because the `generate` option is set to False.
  warnings.warn(
Running CH-OSIMSAND model for experiment Gu2014-drained-Dense-50 ...
Finished in 1.729 seconds.
Running CH-OSIMSAND model for experiment Gu2014-drained-Dense-400 ...
Finished in 1.277 seconds.
Running CH-OSIMSAND model for experiment Gu2014-drained-Very-Dense-100 ...
Finished in 1.936 seconds.
Running CH-OSIMSAND model for experiment Gu2014-drained-Dense-100 ...
Finished in 1.438 seconds.
Running CH-OSIMSAND model for experiment Gu2014-drained-Medium-Dense-100 ...
Finished in 1.348 seconds.
Running CH-OSIMSAND model for experiment Gu2014-drained-Very-Loose-100 ...
Finished in 1.344 seconds.

{'macroscopic-confining': <Figure size 1000x1200 with 6 Axes>, 'macroscopic-density': <Figure size 1000x1200 with 6 Axes>}

Total running time of the script: ( 0 minutes 10.844 seconds)

Download Python source code: plot_gu2014_drained_osimsand.py

Download Jupyter notebook: plot_gu2014_drained_osimsand.ipynb

Gallery generated by mkdocs-gallery


  1. Gu, X., Huang, M., & Qian, J. (2014). DEM investigation on the evolution of microstructure in granular soils under shearing. Granular Matter, 16(1), 91–106. https://doi.org/10.1007/s10035-013-0467-z ↩