Commit 04f3389
authored
Topology optimization with homogenized level set (#58)
* -- Added two classes for subelement refinement that look for element intersection with level set boundary and add new elements to the mesh inside each subelement.
* -- Bug-fixes for sub element refinement.
* -- Modifying the behavior of if_elem_has_positive_phi_region() in level set elem intersection.
* -- Bug-fix for stress assembly.
* removing commented code from level set nonlinear implicit assembly class.
* -- Bug-fixes for sub element refinement.
* -- Modified example 5 to use the sub-element refinement class.
* -- Added methods to compute topology sensitivity callable from nonlinear implicit assembly.
-- Modifications in elem operation classes to support this.
* -- Added nanoFlann KD-tree based geometry filter initialization
* -- Added iteration counter to function evaluation.
* -- Minor fix
* -- refactored topology optimization examples by moving each model to an independent file and making the driver functions in the example templated so that the models can be easily switched out.
* -- Added reference volume calculation to the topology models.
* -- Added structural null-space vector to SIMP topology optimization so that AMG solvers can be used.
-- Added problem_type in SIM topology optimization example so that objective/constraint function can be modified using user options.
* -- Added null space vector object to level-set topology optimization example
-- Added problem_type to level-set topology optimization example.
* -- Removed unnecessary output call from FunctionEvaluation::evaluate
* Removing errors introduced during merging of master.
* Added a dof-constraint for the hanging node created with element intersection.
* -- Bug-fix for sub-element hanging node constraint.
* -- Added ability to specify element subdomain ids that will be excluded in the global assembly routines.
* Added level-set interface point search and normal computation at a point on level-set function.
* -- Minor fixes.
* -- Added traction shifted boundary condition to all topology optimization examples
-- Added method in level-set topology optimization example to mark shifted boundaries for application of traction boundary condition.
-- Added traction boundary condition in structural analysis. Currently only implemented for 2D inplane structural analysis.
-- Added a shifted boundary application of traction boundary condition. Currently only implemented for 2D inplane structural analysis.
-- Added option for computation of second order spatial derivative for side integration.
-- Damped the Newton-step for identification of point on shifted boundary.
-- Added method in level-set element intersection class to identify the sides of the element on material.
-- Bug-fixes in sub-element mesh refinement class.
* -- Minor fixes.
* -- added methods to compute sensitivity of shifted boundary traction.
-- added supporting methods in level-set boundary velocity object and mesh function.
* -- Added sensitivity of shifted boundary traction residual for 2D elements.
* -- Bug-fix for volume sensitivity in compliance minimization part of example 5
* -- bug-fix
* -- Bug-fixes for example 5.
* Minor edit in example 5.
* Minor fix in structural element 2D.
* Added damping factor to boundary point search.
* -- Changed Node to Point in plot utility.
* The level set boundary point search can lack convergence in regions of high curvature when the searched point moves from one element to another since the gradient of the level-set function can be very different between the two adjacent elements. In this case the point is searched starting from the most recent unconverged point. This is allowed only once.
* -- bug-fix for sensitivity of surface normal on level set boundary.
* -- bug-fixes in topology optimization examples.
* -- Bug-fixes for 2d structural elem.
* -- Added methods to remove side and volume loads in physics discipline.
* -- Bug-fixes in example 5.
* -- Bug-fix in sensitivity of boundary normal computed in level set boundary velocity class
-- Added a Hessian approximation in interface point search to improve robustness of point search when the search point ends up in a different element with jump in slope (in regions of high curvature).
* -- Added the ability to obtain nearest intersection points on an element based on the intersection computed on an element.
* Removing shifted boundary initializations from example 5.
* -- Removed _assembly as a member of the ElemBase class.
* -- Added classes to compute homogenized element volume fraction from level set function.
* added example 7 for homogenized level-set based topology optimization
* various bug-fixes for homogenized level-set-based topology optimization.
* Fixes for memory errors in example 7.
* -- Level-set-based Homogenized volume fraction sensitivity initialization now uses the geometric filter information to improve the computational efficiency.
* -- Bug-fix in heaviside function based homogenization
-- Modified the element modulus function in example 7 to use a penalty parameter similar to SIMP.
* -- Updated example 7 for homogenized level-set-based topology optimization with different penalization of modulus of elasticity for static analysis and stress analysis.
-- Updated smoothing width for approximate Heaviside to 0.1.
-- Minor fixes for compatibility with libMesh changes to parallel communicator API.
* integrating homogenized level-set topology optimization example as example 8
* reintegrated commits lost during rebase. Nastran example is enabled only if NastranIO is enabled.
* commiting files missed in previous commit
* -- Minor changes to the topology example titles.
* adding fix for timpi
* -- Bug-fixes for compilation of nastranIO with conditional compilation of mast with pynastran
-- Modified upper/lower limit of level-set in example 8 to +/- 10
* removing pynastran_io.cpp and pynastran_io.h from repository since these are created by cython during each compilation.
* undoing the previous change of removing the pynastran_io* files in src/mesh.
* -- Fixes for backwards compatibility to libMesh.
* -- Fix for lib mesh backwards compatibility.
* -- More fixes for backwards compatibility.1 parent e33b692 commit 04f3389
File tree
110 files changed
+10665
-3420
lines changed- cmake
- doc
- examples/structural
- base
- example_5
- example_6
- example_7
- example_8
- src
- base
- elasticity
- fluid
- heat_conduction
- level_set
- mesh
- optimization
- solver
- utility
- tests/fluid/base
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
110 files changed
+10665
-3420
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
104 | 104 | | |
105 | 105 | | |
106 | 106 | | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
107 | 111 | | |
108 | 112 | | |
109 | 113 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
22 | 42 | | |
23 | 43 | | |
24 | 44 | | |
25 | 45 | | |
26 | 46 | | |
27 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
28 | 51 | | |
29 | 52 | | |
30 | 53 | | |
| |||
52 | 75 | | |
53 | 76 | | |
54 | 77 | | |
55 | | - | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
56 | 84 | | |
57 | 85 | | |
58 | 86 | | |
59 | 87 | | |
60 | 88 | | |
| 89 | + | |
| 90 | + | |
61 | 91 | | |
62 | 92 | | |
63 | 93 | | |
64 | 94 | | |
65 | 95 | | |
| 96 | + | |
| 97 | + | |
66 | 98 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
15 | 16 | | |
16 | 17 | | |
17 | 18 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | | - | |
| 5 | + | |
| 6 | + | |
7 | 7 | | |
| 8 | + | |
0 commit comments