Download Latest Version nligaStruct_v1.1.zip (14.4 MB)
Email in envelope

Get an email when there's a new version of NLIGA

Home
Name Modified Size InfoDownloads / Week
nligaStruct_v1.1.zip 2023-03-14 14.4 MB
README.txt 2021-12-14 6.3 kB
nliga_v1.3.2.zip 2021-12-14 6.3 MB
nliga_v1.3.zip 2019-11-06 12.9 MB
Totals: 4 Items   33.7 MB 2
# Nonlinear isogeometric analysis - NLIGA
------------------------------------------------------------
This is the README file of the open-source MATLAB/Octave toolbox: 
Nonlinear isogeometric analysis (NLIGA). Nonlinear materials, 
including hyperelastic and elastoplastic materials, are considered in 
the code at this stage. Two and three-dimensional models are supported. 
The resulted displacement, stress could be visualized in this toolbox.

------------------------------------------------------------
Please first go to the folder "cfiles" to run the script compile.m, 
because some C codes are used in this toolbox to improve the 
procedure's efficiency. So a C/C++ compiler is required. 
!!! If you couldn't compile it successfully, don't worry, 
we can take a detour!

First of all, add the "nliga" folder to the path. Right-click on 
the "nliga" folder and select "Add to Path" -> "Selected Folders 
and Subfolders". 

To have a quick look at NLIGA, we can directly go to the subfolder 
"output" and run the script 'show_examples'. 

The detailed contents of the folders in NLIGA are listed below:
------------------------------------------------------------
1. cfiles
This folder includes the C codes for calculating the two and 
three-dimensional basis functions and derivatives, which are used 
in other functions. Please run the compile.m file first to generate 
the mex files, which could provide an interface between MATLAB and 
C/C++ codes.

IMPORTANT: If the C codes can't be compiled successfully, please 
use the functions provided in "nurbs-1.3.12" for calculating 
derivatives rather than the C codes. The detailed instructions 
can be found in the function "nurbs_derivatives", which is 
located in the folder "functions".

------------------------------------------------------------
2. elasticity
A series of benchmark problems in elasticity are considered in 
this folder. You can find the solving procedures including 
Poisson problems, plane and solid problems, plate and shell problems 
(static bending and free vibration). The results obtained in these 
benchmark problems could be used as references for comparison 
with results obtained by other methods.

------------------------------------------------------------
3. elastoplasticity
Some elastoplastic examples are presented in this folder. It should 
be noticed that only small strains in elastoplasticity are supported 
at this stage. Large rotation and large strains will be supported
in the near future. The displacements of control points and the 
stresses at Gaussian integration points are saved in the corresponding 
files for visualization. Note that the format of the saved file here 
is different from that in hyperelasticity. The output file is saved 
in the folder "output".

------------------------------------------------------------
4. /functions
The main functions of NLIGA are given in this folder, including 
mesh generation, integration, connectivity, constitutive relations, 
visualization mesh generation, and plot functions.

------------------------------------------------------------
5. geometries
Several geometries are provided in the folder, where all functions 
are named with the prefix "geo" meaning geometrical models. 
Note that some functions require parameters to control the model. 
For example, you should provide an initial point and side length to 
build a square plate.

------------------------------------------------------------
6. hyperelasticity
This folder provides some nonlinear examples in which hyperelastic 
materials are used. All the scripts are named with the prefix "ex" 
meaning example. You can directly run anyone script to find the 
whole workflow of the NLIGA. The messages including time, time step, 
iterative step and residual will be shown on the command window, 
and animation for the results of displacements or stresses will 
be played in the end. The visualized mesh file ".msh" will be saved 
in the folder "output". If you want to check the animation again, 
you can run the functions in the folder "output".

------------------------------------------------------------
7. multipatch
Considering CAD geometries are usually built with multiple patches, 
we add some examples to explain how to tackle with multi-patch problems. 
Note that only conforming multi-patch problems are considered 
and the non-conforming problems will be added in the future by 
using domain decomposition methods.

------------------------------------------------------------
8. nurbs-1.3.12
This is an excellent open-source toolbox for the creation, 
manipulation of NURBS. More information can be found on the 
website: https://octave.sourceforge.io/nurbs/index.html 
The representation of the NURBS and p, k refinement algorithms 
used in NLIGA are employed from this toolbox.

------------------------------------------------------------
9. output
The mesh files for visualization are saved in this folder. 
You can review the obtained results by using 'show_examples' 
to read the .msh files.

------------------------------------------------------------
Features of NLIGA:
1. Nonlinear problems solving by isogeometric analysis; 
2. Hyperelastic and elastoplastic materials are considered;
3. Imposition of the displacement boundary conditions and force 
boundary conditions;
4. Two and three-dimensional cases are studied;
4. Preprocessing of the geometrical models;
5. Postprocessing of the results including displacements and stresses;
6. Stress recovery from the Gaussian integration points;
7. Elastic benchmark problems;
8. Multi-patch problems;
9. ...(future update).

------------------------------------------------------------
*** If you have any comments or suggestions, please feel free 
to contact us! 
- Xiaoxiao Du, 
- Beihang University,
- duxxhf@gmail.com or 
- duxiaoxiao@buaa.edu.cn. 

*** If you feel it is helpful for your work, please cite our work.
Du, Xiaoxiao, Gang Zhao, Wei Wang, Mayi Guo, Ran Zhang, 
and Jiaming Yang. NLIGA: A MATLAB framework for nonlinear 
isogeometric analysis. Computer Aided Geometric Design, 
2020, 80:101869. <https://doi.org/10.1016/j.cagd.2020.101869>
Source: README.txt, updated 2021-12-14