Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: mdpi.com -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.1%) to scientific vocabulary
Keywords
Repository
Solid Orthotropic Material with Penalisation
Basic Info
Statistics
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md
SOMP
Solid Orthotropic Material with Penalisation

The code is based on top99: less efficient, restricted to 2D. But More readable for beginners ;)
Tutorial
main.m
main.m : main programm setup the constrained optimization problem and solve it with interior-point method (fmincon)
x0 is the initial design vector x0 = [rho0(:);theta0(:)];
global nelx nely vol volfrac ang angle penal rmin % global variable
check.m
function [dcn]=check(nelx,nely,rmin,x,dc) : top99 MESH-INDEPENDENCY FILTER
top_obj.m
[c, dt]=top_obj(x) : output compliance c and dc/drho, dc/dtheta
myConstrFcn.m
function [cneq, ceq, gradc, gradceq] = myConstrFcn(x) : output nonlinear constraints and derivative
lk0d.m
function [KE,dKE]=lkOd(angle); CLT for 1-layer composite membrane fully integrated KE(8x8 matrix), and derivative with respect to angle dKE, called in FE.m Orthotropic equivalent function to TOP99 lk.m
For a fixed material: Ex=1; Ey=5; nuxy = 0.3; nuyx = 0.3;
lk0d_laminate.m
function [KE,dKE]=lkOd_laminate(angle); CLT for 1-layer composite membrane fully integrated Ke (8x8 matrix), and derivative with respect to angle, called in FE.m with fixed material:
Ex=44.8e+03; % longitudinal Elastic modulus [MPa] Ey=4.2e+03; % transversal Elastic modulus [MPa] %Glt=1.9e+03; % Shear Modulus [MPa] nuxy=0.49; % Poisson ratio nuyx=nuxy*Ey/Ex;
integK_laminate.m
Symbolic integration of Ke for a fixed material. Not used in Optimization
FE.m
function [U]=FE(nelx,nely,vol,ang,penal); output displacement as a function of the actual iteration (and x vector) similar to TOP99 FE.m
myOutputFcn.m
needed for output of the objective function

Postprocessing
Convolution filter to smooth fiber orientation

TO GO FURTHER
use top88.m for vectorization/speed/memory demo
use top88_fmincon.m to compare with this code
use top88_MMA.m with MMA (need svanberg's files mmasub, subsolv) to see the ability of MMA to tackle the XO sensitivity ?
use to88heavisideMMA.m for stress constrained and MMA demo
use top99neo.m with MMA for 3D problem code
Bibliography
Begineer's guide in FE with matlab and abaqus
Topology and printing orientation optimization of orthotropic material for additive manufacturing https://yorkspace.library.yorku.ca/xmlui/handle/10315/38783
An Anisotropic Topology Optimization Method For Carbon Fiber-Reinforced Fused Filament Fabrication https://baylor-ir.tdl.org/handle/2104/9821
Three dimensional topology optimization with orthotropic material orientation design for additive manufacturing structures. https://baylor-ir.tdl.org/handle/2104/10163
Jiang's journal paper https://www.mdpi.com/2079-6439/7/2/14/htm
Owner
- Name: MID2
- Login: mid2SUPAERO
- Kind: organization
- Location: SUPAERO
- Repositories: 12
- Profile: https://github.com/mid2SUPAERO
Multidisciplinary optimization for Innovation : Design and Data
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: Solid Orthotropic Material with Penalisation
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Joseph Morlier
name-particle: 'Joseph '
family-names: Morlier
email: joseph.morlier@isae-supaero.fr
orcid: 'https://orcid.org/0000-0002-1511-2086'
GitHub Events
Total
- Watch event: 2
- Fork event: 2
Last Year
- Watch event: 2
- Fork event: 2