Skip to main content
Log in

Topology optimization with finite-life fatigue constraints

  • RESEARCH PAPER
  • Published:
Structural and Multidisciplinary Optimization Aims and scope Submit manuscript

Abstract

This work investigates efficient topology optimization for finite-life high-cycle fatigue damage using a density approach and analytical gradients. To restrict the minimum mass problem to withstand a prescribed finite accumulated damage, constraints are formulated using Palmgren-Miner’s linear damage hypothesis, S-N curves, and the Sines fatigue criterion. Utilizing aggregation functions and the accumulative nature of Palmgren-Miner’s rule, an adjoint formulation is applied where the amount of adjoint problems that must be solved is independent of the amount of cycles in the load spectrum. Consequently, large load histories can be included directly in the optimization with minimal additional computational costs. The method is currently limited to proportional loading conditions and linear elastic material behavior and a quasi-static structural analysis, but can be applied to various equivalent stress-based fatigue criteria. Optimized designs are presented for benchmark examples and compared to stress optimized designs for static loads.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  • Akgün MA, Haftka RT, Wu KC, Walsh JL, Garcelon JH (2001) Efficient structural optimization for multiple load cases using adjoint sensitivities. AIAA J 39:511–516

    Article  Google Scholar 

  • Andreassen E, Clausen A, Schevenels M, Lazarov BS, Sigmund O (2011) Efficient topology optimization in MATLAB using 88 lines of code. Struct Multidiscip Optim 43:1–16

    Article  MATH  Google Scholar 

  • Bendsøe MP (1989) Optimal shape design as a material distribution problem. Struct Optim 1:193–202

    Article  Google Scholar 

  • Bendsøe MP, Kikuchi N (1988) Generating optimal topologies in structural design using a homogenization method. Comput Methods Appl Mech Eng 71:197–224

    Article  MathSciNet  MATH  Google Scholar 

  • Bendsøe MP, Sigmund O (1999) Material interpolation schemes in topology optimization. Arch Appl Mech 69:635–654

    Article  MATH  Google Scholar 

  • Bendsøe MP, Sigmund O (2004) Topology optimization - theory, methods, and applications, 2nd edn. Springer-Verlag, Berlin Heidelberg

    MATH  Google Scholar 

  • Bourdin B (2001) Filters in topology optimization. Int J Numer Methods Eng 50:2143–2158

    Article  MathSciNet  MATH  Google Scholar 

  • Bruggi M (2008) On an alternative approach to stress constraints relaxation in topology optimization. Struct Multidiscip Optim 36:125–141

    Article  MathSciNet  MATH  Google Scholar 

  • Bruggi M, Duysinx P (2012) Topology optimization for minimum weight with compliance and stress constraints. Struct Multidiscip Optim 46:369–384

    Article  MathSciNet  MATH  Google Scholar 

  • Bruns TE, Tortorelli DA (2001) Topology optimization of non-linear elastic structures and compliant mechanisms. Comput Methods Appl Mech Eng 190:3443–3459

    Article  MATH  Google Scholar 

  • Cheng GD, Guo X (1997) ε-relaxed approach in structural topology optimization. Struct Optim 13:258–266

    Article  Google Scholar 

  • Collet M, Bruggi M, Duysinx P (2017) Topology optimization for minimum weight with compliance and simplified nominal stress constraints for fatigue resistance. Struct Multidiscip Optim 55:839–855

    Article  MathSciNet  Google Scholar 

  • Díaz A, Sigmund O (1995) Checkerboard patterns in layout optimization. Struct Optim 10:40–45

    Article  Google Scholar 

  • Dorn WS, Gomory RE, Greenberg HJ (1964) Automatic design of optimal structures. J Mech 3:25–52

    Google Scholar 

  • Duysinx P, Bendsøe MP (1998) Topology optimization of continuum structures with local stress constraints. Int J Numer Methods Eng 43:1453–1478

    Article  MathSciNet  MATH  Google Scholar 

  • Duysinx P, Sigmund O (1998) New developments in handling stress constraints in optimal material distribution. In: 7th AIAA/USAF/NASA/ISSMO Symposium on Multidisciplinary Analysis and Optimization. American Institute of Aeronautics and Astronautics

  • Grunwald J, Schnack E (1998) Modeling fatigue for shape optimization of dynamically loaded parts. Adv Eng Softw 29:63–67

    Article  Google Scholar 

  • Holmberg E (2013) Stress and fatigue constrained topology optimization. Licentiate Thesis No. 1571, Linköping University, Sweden

  • Holmberg E, Torstenfelt B, Klarbring A (2013) Stress constrained topology optimization. Struct Multidiscip Optim 48:33–47

    Article  MathSciNet  MATH  Google Scholar 

  • Holmberg E, Torstenfelt B, Klarbring A (2014) Fatigue constrained topology optimization. Struct Multidiscip Optim 50:207–219

    Article  MathSciNet  MATH  Google Scholar 

  • Jeong SH, Choi D-H, Yoon GH (2015) Fatigue and static failure considerations using a topology optimization method. Appl Math Model 39:1137–1162

    Article  Google Scholar 

  • Jog CS, Haber RB (1996) Stability of finite element models for distributed-parameter optimization and topology design. Comput Methods Appl Mech Eng 130:203–226

    Article  MathSciNet  MATH  Google Scholar 

  • Kaya N, Karen İ, Öztürk F (2010) Re-design of a failed clutch fork using topology and shape optimisation by the response surface method. Mater Des 31:3008–3014

    Article  Google Scholar 

  • Kim Y-I, Park G-J (2010) Nonlinear dynamic response structural optimization using equivalent static loads. Comput Methods Appl Mech Eng 199:660–676

    Article  MATH  Google Scholar 

  • Kirsch U (1990) On singular topologies in optimum structural design. Struct Optim 2:133–142

    Article  Google Scholar 

  • Kreisselmeier G, Steinhauser R (1980) Systematic Control Design By Optimizing a Vector Performance Index. In: M.A. Cuenod, P (ed) Computer Aided Design of Control Systems. pp 113–117 doi:10.1016/B978-0-08-024488-4.50022-X

  • Le C, Norato J, Bruns T, Ha C, Tortorelli D (2010) Stress-based topology optimization for continua. Struct Multidiscip Optim 41:605–620

    Article  Google Scholar 

  • Luo Y, Kang Z (2012) Topology optimization of continuum structures with Drucker–Prager yield stress constraints. Comput Struct 90:65–75

    Article  Google Scholar 

  • Luo Y, Wang MY, Kang Z (2013) An enhanced aggregation method for topology optimization with local stress constraints. Comput Methods Appl Mech Eng 254:31–41

    Article  MathSciNet  MATH  Google Scholar 

  • Mrzyglod M, Zielinski AP (2006) Numerial implementation of multiaxial high-cycle fatigue criterion to structural optimization. J Theor Appl Mech 44:691–712

    Google Scholar 

  • Norato J, Le C, Ha C (2012) Fatigue-based topology optimization method and tool. US Patent Application No. 13/692,268

  • Oest J, Sørensen R, Overgaard LCT, Lund E (2017) Structural optimization with fatigue and ultimate limit constraints of jacket structures for large offshore wind turbines. Struct Multidiscip Optim 55:779–793

    Article  MathSciNet  Google Scholar 

  • París J, Navarrina F, Colominas I, Casteleiro M (2009) Topology optimization of continuum structures with local and global stress constraints. Struct Multidiscip Optim 39:419–437

    Article  MathSciNet  MATH  Google Scholar 

  • París J, Navarrina F, Colominas I, Casteleiro M (2010) Block aggregation of stress constraints in topology optimization of structures. Adv Eng Softw 41:433–441

    Article  MATH  Google Scholar 

  • Park GJ, Kang BS (2003) Validation of a structural optimization algorithm transforming dynamic loads into equivalent static loads. J Optim Theory Appl 118:191–200

    Article  MathSciNet  MATH  Google Scholar 

  • Sherif K, Witteveen W, Puchner K, Irschik H (2010) Efficient topology optimization of large dynamic finite element systems using fatigue. AIAA J 48:1339–1347

    Article  Google Scholar 

  • Sigmund O (2001) A 99 line topology optimization code written in Matlab. Struct Multidiscip Optim 21:120–127

    Article  Google Scholar 

  • Sigmund O, Petersson J (1998) Numerical instabilities in topology optimization: a survey on procedures dealing with checkerboards, mesh-dependencies and local minima. Struct Optim 16:68–75

    Article  Google Scholar 

  • Sines G (1959) Behavior of metals under complex static and alternating stresses. Met Fatigue:145–169

  • Stephens RI, Fatemi A, Stephens RR, Fuchs HO (2000) Metal fatigue in engineering, 2nd edn. John Wiley & Sons, New York

    Google Scholar 

  • Svanberg K (1987) The method of moving asymptotes—a new method for structural optimization. Int J Numer Methods Eng 24:359–373

    Article  MathSciNet  MATH  Google Scholar 

  • Svanberg K (2007) MMA and GCMMA - version September 2007. Stockholm, Sweden

    Google Scholar 

  • Sved G, Ginos Z (1968) Structural optimization under multiple loading. Int J Mech Sci 10:803–805

    Article  Google Scholar 

  • Verbart A, Langelaar M, van Keulen F (2017) A unified aggregation and relaxation approach for stress-constrained topology optimization. Struct Multidiscip Optim 55:663–679

    Article  MathSciNet  Google Scholar 

  • Yang RJ, Chen CJ (1996) Stress-based topology optimization. Struct Optim 12:98–105

    Article  Google Scholar 

  • Zhou M, Rozvany GIN (1991) The COC algorithm, part II: topological, geometrical and generalized shape optimization. Comput Methods Appl Mech Eng 89:309–336

    Article  Google Scholar 

Download references

Acknowledgements

This research is part of the project ABYSS – Advancing BeYond Shallow waterS – Optimal design of offshore wind turbine support structures, sponsored by the Danish Council for Strategic Research, Grant no. 1305-00020B. This support is gratefully acknowledged.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jacob Oest.

Appendix

Appendix

In the following the partial derivatives in the sensitivity analysis of the fatigue constraint are written using the chain rule of differentiation. The independence or linear dependence on the load scaling factors is indicated.

The partial derivative of the fatigue constraint with respect to a physical design variable \( {\tilde{x}}_j \) can be written as:

$$ \begin{array}{l}\frac{\partial {g}_D}{\partial {\tilde{x}}_j}=\frac{\partial {g}_D}{\partial {D}_j}\ \sum_{i=1}^{n_{RF}}\left(\frac{\partial {D}_{j_i}}{\partial {N}_{j_i}}\frac{\partial {N}_{j_i}}{\partial {\tilde{\sigma}}_{j_i}}\left({c}_{a_i}\left(\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_x}}\frac{\partial {\hat{\sigma}}_{j_x\ }}{\partial {\tilde{x}}_j}\right.\right.\right.\\ {}\left.\kern3.5em +\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_y}}\frac{\partial {\hat{\sigma}}_{j_y}}{\partial {\tilde{x}}_j}+\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\tau}}_j}\frac{\partial {\hat{\tau}}_j}{\partial {\tilde{x}}_j}\right)\\ {}\kern3.5em \left.+{c}_{m_i}\left.\left(\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_{m x}}}\frac{\partial {\hat{\sigma}}_{j_x}}{\partial {\tilde{x}}_j}+\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_{m y}}}\frac{\partial {\hat{\sigma}}_{j_y}}{\partial {\tilde{x}}_j}\right)\right)\right),\kern1em \forall j\end{array} $$
(31)

In this equation, the Sines stress differentiated with respect to the stress components and the stress components differentiated with respect to the physical design variables do not need to be calculated directly for each stress cycle i. Consequently, only the computational inexpensive partial derivatives \( \partial {D}_{j_i}/\partial {N}_{j_i} \) and \( \partial {N}_{j_i}/\partial {\tilde{\sigma}}_{j_i} \) need to be calculated for every load cycle.

The partial derivative of the aggregated constraint function with respect to the accumulated damage is given by:

$$ \frac{\partial {g}_D}{\partial {D}_j}={\left(\sum_{e=1}^{n_e}\kern0.2em {D}_e^P\right)}^{\frac{1}{P}-1}\cdot {D}_j^{P-1} $$
(32)

The partial derivative of the damage with respect to the estimated amount of cycles to failure is:

$$ \frac{\partial {D}_{j_i}}{\partial {N}_{j_i}}=-{c}_D\frac{n_{j_i}}{{N_j}_i^2} $$
(33)

The partial derivative of the estimated cycles to failure with respect to the Sines equivalent stress is:

$$ \frac{\partial {N}_{j_i}}{\partial {\tilde{\sigma}}_{j_i}}=\frac{1}{2}\ {\left(\frac{\left(\frac{{\tilde{\sigma}}_{j_i}}{\sigma_f^{\hbox{'}}}\right)}{{\tilde{\sigma}}_{j_i}}\right)}^{\frac{1}{b}} $$
(34)

The partial derivatives of the Sines equivalent stress are found by:

$$ \frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_x}}=\frac{1}{4}\ \frac{\left(4{\hat{\sigma}}_{j_x}-2{\hat{\sigma}}_{j_y}\right)\sqrt{2}}{\sqrt{{\left({\hat{\sigma}}_{j_x}-{\hat{\sigma}}_{j_y}\right)}^2+{\hat{\sigma}}_{j_x}^2+{\hat{\sigma}}_{j_y}^2+6{\hat{\tau}}_j^2}} $$
(35)
$$ \frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_y}}=\frac{1}{4}\frac{\left(4{\hat{\sigma}}_{j_y}-2{\hat{\sigma}}_{j_x}\right)\sqrt{2}}{\sqrt{{\left({\hat{\sigma}}_{j_x}-{\hat{\sigma}}_{j_y}\right)}^2+{\hat{\sigma}}_{j_x}^2+{\hat{\sigma}}_{j_y}^2+6{\hat{\tau}}_j^2}} $$
(36)
$$ \frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\tau}}_j}=\frac{3{\hat{\tau}}_j\sqrt{2}}{\sqrt{{\left({\hat{\sigma}}_{j_x}-{\hat{\sigma}}_{j_y}\right)}^2+{\hat{\sigma}}_{j_x}^2+{\hat{\sigma}}_{j_y}^2+6{\hat{\tau}}_j^2}} $$
(37)
$$ \frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_{mx}}}=\frac{\partial {\tilde{\sigma}}_j}{\partial {\hat{\sigma}}_{j_{my}}}=\frac{1}{2}\beta\ \sqrt{2} $$
(38)

Note that these values are unscaled and it is therefore not necessary to calculate these derivatives for each cycle i. Similarly, the stress components differentiated with respect to the physical design variables can be calculated independently of the cycles, i.e. without the scaling factors:

$$ \frac{\partial {\hat{\boldsymbol{\sigma}}}_j}{\partial {\tilde{x}}_j}=\left[\begin{array}{c}\hfill \frac{\partial {\hat{\sigma}}_{j_x}}{\partial {\tilde{x}}_j}\hfill \\ {}\hfill \frac{\partial {\hat{\sigma}}_{j_y}}{\partial {\tilde{x}}_j}\hfill \\ {}\hfill \frac{\partial {\hat{\tau}}_j}{\partial {\tilde{x}}_j}\hfill \end{array}\right]= q{\tilde{x}}_j{\left(\boldsymbol{x}\right)}^{q-1}{\boldsymbol{E}}_j{\boldsymbol{B}}_j{\hat{\boldsymbol{u}}}_j $$
(39)

Likewise, the partial derivative of the constraint function with respect to the amplitude and mean displacement, that are required to solve the adjoint problem can be found by:

$$ \frac{\partial {g}_D}{\partial {\boldsymbol{u}}_{j_a}}=\frac{\partial {g}_D}{\partial {D}_j}\sum_{i=1}^{n_{RF}}\left({c}_{a_i}\frac{\partial {D}_{j_i}}{\partial {\tilde{\sigma}}_{j_i}}\left(\frac{\partial {\tilde{\sigma}}_j}{\partial {\widehat{\sigma}}_{j_x}}\frac{\partial {\widehat{\sigma}}_{j_x}}{\partial {\widehat{\boldsymbol{u}}}_j}\right.\right.\left.\left.+\frac{\partial {\tilde{\sigma}}_j}{\partial {\widehat{\sigma}}_{j_y}}\frac{\partial {\widehat{\sigma}}_{j_y}}{\partial {\widehat{\boldsymbol{u}}}_j}+\frac{\partial {\tilde{\sigma}}_j}{\partial {\widehat{\tau}}_j}\frac{\partial {\widehat{\tau}}_j}{\partial {\widehat{\boldsymbol{u}}}_j}\right)\right) $$
(40)
$$ \frac{\partial {g}_D}{\partial {\boldsymbol{u}}_{j_m}}=\frac{\partial {g}_D}{\partial {D}_j}\sum_{i=1}^{n_{RF}}\left({c}_{m_i}\frac{\partial {D}_{j_i}}{\partial {\tilde{\sigma}}_{j_i}}\left(\frac{\partial {\tilde{\sigma}}_j}{\partial {\widehat{\sigma}}_{j_{m x}}}\frac{\partial {\widehat{\sigma}}_{j_x}}{\partial {\widehat{\boldsymbol{u}}}_j}\right.\right.\left.\left.+\frac{\partial {\tilde{\sigma}}_j}{\partial {\widehat{\sigma}}_{j_{m y}}}\frac{\partial {\widehat{\sigma}}_{j_y}}{\partial {\widehat{\boldsymbol{u}}}_j}\right)\right) $$
(41)

Here the partial derivatives of the amplitude and mean stress components with respect to the reference displacements are constant in each iteration and calculated by:

$$ \frac{\partial {\hat{\boldsymbol{\sigma}}}_j}{\partial {\hat{\boldsymbol{u}}}_j}=\left[\begin{array}{c}\hfill \frac{\partial {\hat{\sigma}}_{j_x}}{\partial {\hat{\boldsymbol{u}}}_j}\hfill \\ {}\hfill \frac{\partial {\hat{\sigma}}_{j_y}}{\partial {\hat{\boldsymbol{u}}}_j}\hfill \\ {}\hfill \frac{\partial {\hat{\tau}}_j}{\partial {\hat{\boldsymbol{u}}}_j}\hfill \end{array}\right]={\tilde{x}}_j{\left(\boldsymbol{x}\right)}^q{\boldsymbol{E}}_j{\boldsymbol{B}}_j,\kern1em \forall j $$
(42)

Note that the constitutive matrix and strain-displacement matrix are constant and equal for all elements in this work.

As can be seen from the above equations, the additional computational costs as compared with stress constraints are the analysis and derivatives of Basquin’s equation and Palmgren-Miner’s equation, assuming that the computational cost of the Sines equivalent stress criterion is similar to a stress criterion. Furthermore, the equations that must be evaluated for each cycle i are either computational inexpensive or can be found by linear scaling. Consequently, the sensitivity analysis for fatigue constraints can be done very efficiently.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Oest, J., Lund, E. Topology optimization with finite-life fatigue constraints. Struct Multidisc Optim 56, 1045–1059 (2017). https://doi.org/10.1007/s00158-017-1701-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00158-017-1701-9

Keywords

Navigation