/TrussTopOpt.jl

Truss topology optimization experiments before merging into TopOpt.jl: https://github.com/mohamed82008/TopOpt.jl

Primary LanguageJulia

TrussTopOpt.jl

Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. Build Status codecov

Truss topology optimization experiments using TopOpt.jl and JuAFEM.jl.

Installation

In Julia v1.0+ you can install packages from the Pkg REPL (press ] in the Julia REPL to enter pkg> mode):

pkg> add https://github.com/yijiangh/JuAFEM.jl.git
pkg> add https://github.com/yijiangh/Tensors.jl.git
pkg> add https://github.com/mohamed82008/VTKDataTypes.jl#master
pkg> add https://github.com/mohamed82008/KissThreading.jl#master
pkg> add https://github.com/yijiangh/TopOpt.jl#master
pkg> add https://github.com/yijiangh/TrussTopOpt.jl#master

which will track the master branch of the package. (we still need to use a fork of TopOpt.jl before these changes are merged.)

To load the package, use

using TrussTopOpt

Gallery

Code for reproducing these results can be found in the scripts in the test folder.

tim_2d

  • Ground mesh:

  • Topology optimized result under horizontal load (buckling):

    • without buckling constraint (shape in cyan is the exaggerated deformed shape)
  • Topology optimized result under vertical load (beam):

tim_3d

  • Ground mesh:

  • Topology optimized result under horizontal load (buckling):

    • without buckling constraint (shape in cyan is the exaggerated deformed shape)
  • Topology optimized result under vertical load (beam):