From dfa5c61798545598c15bb3d585125cf708abfaeb Mon Sep 17 00:00:00 2001 From: Noels Ludovic <l.noels@uliege.be> Date: Wed, 6 Dec 2023 17:12:57 +0000 Subject: [PATCH] Update README.md --- SFEM/README.md | 72 +++++++++++--------------------------------------- 1 file changed, 15 insertions(+), 57 deletions(-) diff --git a/SFEM/README.md b/SFEM/README.md index 100332f..6ddae10 100644 --- a/SFEM/README.md +++ b/SFEM/README.md @@ -1,4 +1,4 @@ -# sveResponses +# Stochastic Finite Element Method (SFEM) [](https://creativecommons.org/licenses/by/4.0/) [](https://gitlab.uliege.be/moammm/moammmPublic) @@ -11,19 +11,21 @@ This repository contains: ## Table of Contents -1. [Spectral Generator of RF](#spectral-generator) -2. [RF vizualization](#rf-vizualization) -3. [Test Cases of MC SFEM](#mc-sfem) +1. [Dependencies and Prerequisites](#dependencies-and-prerequisites) +2. [Structure of Repository](#structure-of-repository) +3. [Spectral Generator of RF](#spectral-generator-of-rf) +4. [RF vizualization](#rf-vizualization) +5. [Test Cases of MC SFEM](#test-cases of-mc-sfem) ## Dependencies and Prerequisites [](https://www.python.org/downloads/) [](https://github.com/pandas-dev/pandas) [](https://matplotlib.org/) -Python, pandas, matplotlib, texttabble and latextable are pre requisites for visualizing and navigating the data. +* Python, pandas, matplotlib, texttabble and latextable are pre requisites for visualizing and navigating the data. -For generating mesh and for vizualization, gmsh (www.gmsh.info) is required. +* For generating mesh and for vizualization, gmsh (www.gmsh.info) is required. -For running simulations, cm3Libraries (www.ltas-cm3L) is required. +* For running simulations, cm3Libraries (http://www.ltas-cm3.ulg.ac.be/openSource.htm) is required. ### Instructions using apt & pip3 package manager @@ -41,49 +43,19 @@ Instructions for Debian/Ubuntu based workstations are as follows. pip3 install matplotlib texttable latextable ``` -### Pytorch - -``` bash - pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu -``` - -### Lattice libraries - - Build lattice libraries using the script: - -``` bash - Scripts/LatticeLib/compile.sh -``` - -This creates lattice libraries inside `$HOME/.local/lib/moammmLattice`. - -To use, append this into PYHONPATH by adding the following line in your .bashrc - -``` bash -export PYTHONPATH=$PYTHONPATH:$HOME/.local/lib/moammmLattice -``` - ## Structure of Repository -[Scripts](./Scripts) contains all the code and libraries alongside the driver routine [driver.py](./Scripts/driver.py) - -Data for SVEs is stored as DataPaths and LoadPaths, Surrogate models are stored as RNNSurrogate, under their respective lattice names as [Cell3](./Cell3/) and [Cell6](./Cell6). - -Data is further organised into subfolders using a unique naming scheme based on their parameters. +* [generateRF](./generateRF) contains all the scripts used to generate and vizualize the random fields +* [cellRF](./cellRF) contains an example in which we generate a single variable random field on a lattice unit cell +* [rnnRF](./rnnRF) contains an example in which we generate a correlated two-variable random field and the siulations script to run Monte Carlo simulations on a multiscale lattice compression using a [MOAMMM stochastic neural network](https://gitlab.uliege.be/moammm/moammmPublic/syntheticdata/sveresponses) as surrogate of the cell response. -To understand the unique naming scheme we introduce the parameters next. -## Data Parameters +### generateRF -All parameters for data generation are defined inside driver routine [driver.py](./Scripts/driver.py), categorized as: -### Lattice Selection -| Parameter | Type | Description | -|:----------|:--------------:|:-------------------------------------------------------| -| cellType | String literal | Lattice identified by its numeric code: "3", "6", "9". | -### Load Path Parameters +### cellRF Loading paths are generated for three types of loadings: @@ -91,21 +63,7 @@ Loading paths are generated for three types of loadings: 2. Random Cyclic paths with rate variant data points (CR). 3. Random Cyclic paths with constant rate data points (CC). -| Parameter | Type | Description | -|:-----------|:---------------:|:--------------------------------------------------------------------------------------| -| load_type | List of strings | Type of load Path: 'RW', 'CR', 'CC'. | -| r_max | Float | Upper bound of Right Cauchy Green (RCG) stretch Tensor norm $\bm{U}$. | -| eval_step | List of floats | Bounds for RCG tensor increment. | -| s_rate | List of floats | Bounds for strain rate. | -| k | Int | Number of paths for each load_type. | -| n_max | Int | Maximum allowable data points in a load path. | -| n_plot | Int | Number of paths for visualization in the plots. | -| n_split | Int | Number of collection bins (threads) - see [Thread creation](#thread-creation). | -| G_max | Float | Upper Bound for gradient of deformation gradient $\bm{G}$ - (Only for HO kinematics). | -| Geval_step | List of floats | Bounds for G increment - (Only for HO kinematics). | - - -### Lattice Geometry Parameters +### rnnRF Random SVEs are generated for a selected lattice by varying either,the **strut radius** or the **volume fraction**. Geometrical parameters for lattices along with their description are as: -- GitLab