From 78f1922ec2d366382b9bf49daa9e828750a60c49 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Thu, 17 Aug 2023 16:00:20 +0000 Subject: [PATCH] build based on a61d9a3 --- dev/API/index.html | 188 ++++++++++++++++++++--------------------- dev/example/index.html | 2 +- dev/index.html | 2 +- dev/search/index.html | 2 +- dev/search_index.js | 2 +- 5 files changed, 98 insertions(+), 98 deletions(-) diff --git a/dev/API/index.html b/dev/API/index.html index aa6e902..04f1470 100644 --- a/dev/API/index.html +++ b/dev/API/index.html @@ -1,157 +1,157 @@ API · Hyperelastics.jl

API Reference

Incompressible Models

Hyperelastics.ABGIMethod
ABGI(; ℒinv)
-

Model:

\[W = W_{Arruda-Boyce} + \frac{G_e}{n} \left(\sum_{i=1}^{3}\lambda_i^n-3\right)\]

Arguments:

  • ℒinv = TreloarApproximation(): Sets the inverse Langevin approxamationused (default = TreloarApproximation())

Parameters:

  • μ
  • N
  • Ge
  • n

Meissner B, Matějka L. A Langevin-elasticity-theory-based constitutiveequation for rubberlike networks and its comparison with biaxialstress–strain data. Part I. Polymer. 2003 Jul 1;44(16):4599-610.

source
Hyperelastics.AffineMicroSphereMethod
AffineMicroSphere(; ℒinv, n)
-

Model:

  • See Paper

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used
  • n::Int = 21: Number of quadrature points for the spherical integration

Parameters:

  • μ
  • N

Miehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.

source
Hyperelastics.AlexanderMethod
Alexander()
-

Model:

\[W = \frac{C_1 \sqrt{\pi}\text{erfi}\big(\sqrt{k}(I_1-3)\big)}{2\sqrt{k}}+C_2\log{\frac{I_2-3+\gamma}{\gamma}}+C_3(I_2-3)\]

Parameters:

  • μ
  • C₁
  • C₂
  • C₃
  • k
  • γ

Alexander H. A constitutive relation for rubber-like materials. International Journal of Engineering Science. 1968 Sep 1;6(9):549-63.

source
Hyperelastics.AminMethod
Amin()
+

Model:

\[W = W_{Arruda-Boyce} + \frac{G_e}{n} \left(\sum_{i=1}^{3}\lambda_i^n-3\right)\]

Arguments:

  • ℒinv = TreloarApproximation(): Sets the inverse Langevin approxamationused (default = TreloarApproximation())

Parameters:

  • μ
  • N
  • Ge
  • n

Meissner B, Matějka L. A Langevin-elasticity-theory-based constitutiveequation for rubberlike networks and its comparison with biaxialstress–strain data. Part I. Polymer. 2003 Jul 1;44(16):4599-610.

source
Hyperelastics.AffineMicroSphereMethod
AffineMicroSphere(; ℒinv, n)
+

Model:

  • See Paper

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used
  • n::Int = 21: Number of quadrature points for the spherical integration

Parameters:

  • μ
  • N

Miehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.

source
Hyperelastics.AlexanderMethod
Alexander()
+

Model:

\[W = \frac{C_1 \sqrt{\pi}\text{erfi}\big(\sqrt{k}(I_1-3)\big)}{2\sqrt{k}}+C_2\log{\frac{I_2-3+\gamma}{\gamma}}+C_3(I_2-3)\]

Parameters:

  • μ
  • C₁
  • C₂
  • C₃
  • k
  • γ

Alexander H. A constitutive relation for rubber-like materials. International Journal of Engineering Science. 1968 Sep 1;6(9):549-63.

source
Hyperelastics.AminMethod
Amin()
 Amin(type)
-

Model:

\[W = C_1 (I_1 - 3) + \frac{C_2}{N + 1} (I_1 - 3)^{N + 1} + \frac{C_3}{M + 1} (I_1 - 3)^{M + 1} + C_4 (I_2 - 3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • C4
  • N
  • M

Amin AF, Wiraguna SI, Bhuiyan AR, Okui Y. Hyperelasticity model for finite element analysis of natural and high damping rubbers in compression and shear. Journal of engineering mechanics. 2006 Jan;132(1):54-64.

source
Hyperelastics.AnsarriBenamMethod
AnsarriBenam()
+

Model:

\[W = C_1 (I_1 - 3) + \frac{C_2}{N + 1} (I_1 - 3)^{N + 1} + \frac{C_3}{M + 1} (I_1 - 3)^{M + 1} + C_4 (I_2 - 3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • C4
  • N
  • M

Amin AF, Wiraguna SI, Bhuiyan AR, Okui Y. Hyperelasticity model for finite element analysis of natural and high damping rubbers in compression and shear. Journal of engineering mechanics. 2006 Jan;132(1):54-64.

source
Hyperelastics.AnsarriBenamMethod
AnsarriBenam()
 AnsarriBenam(type; n)
-

Model:

\[W = \frac{3(n-1)}{2n}\mu N \left[\frac{1}{3N(n-1)}(I_1 - 3) - \log{\frac{I_1 - 3N}{3 -3N}} \right]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used (default = ``)
  • n::Int=3: Sets the order of the model

Parameters:

  • μ
  • n
  • N

Anssari-Benam A. On a new class of non-Gaussian molecular-based constitutive models with limiting chain extensibility for incompressible rubber-like materials. Mathematics and Mechanics of Solids. 2021 Nov;26(11):1660-74.

source
Hyperelastics.ArmanNarooeiMethod
ArmanNarooei()
-

Model:

\[W = \sum\limits_{i=1}^{N} A_i\big[\exp{m_i(\lambda_1^{\alpha_i}+\lambda_2^{\alpha_i}+\lambda_3^{\alpha_i}-3)}-1] + B_i\big[\exp{n_i(\lambda_1^{-\beta_i}+\lambda_2^{-\beta_i}+\lambda_3^{-\beta_i}-3)}-1]\]

Parameters:

  • A⃗
  • B⃗
  • m⃗
  • n⃗
  • α⃗
  • β⃗

Narooei K, Arman M. Modification of exponential based hyperelastic strain energy to consider free stress initial configuration and Constitutive modeling. Journal of Computational Applied Mechanics. 2018 Jun 1;49(1):189-96.

source
Hyperelastics.ArrudaBoyceMethod
ArrudaBoyce()
+

Model:

\[W = \frac{3(n-1)}{2n}\mu N \left[\frac{1}{3N(n-1)}(I_1 - 3) - \log{\frac{I_1 - 3N}{3 -3N}} \right]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used (default = ``)
  • n::Int=3: Sets the order of the model

Parameters:

  • μ
  • n
  • N

Anssari-Benam A. On a new class of non-Gaussian molecular-based constitutive models with limiting chain extensibility for incompressible rubber-like materials. Mathematics and Mechanics of Solids. 2021 Nov;26(11):1660-74.

source
Hyperelastics.ArmanNarooeiMethod
ArmanNarooei()
+

Model:

\[W = \sum\limits_{i=1}^{N} A_i\big[\exp{m_i(\lambda_1^{\alpha_i}+\lambda_2^{\alpha_i}+\lambda_3^{\alpha_i}-3)}-1] + B_i\big[\exp{n_i(\lambda_1^{-\beta_i}+\lambda_2^{-\beta_i}+\lambda_3^{-\beta_i}-3)}-1]\]

Parameters:

  • A⃗
  • B⃗
  • m⃗
  • n⃗
  • α⃗
  • β⃗

Narooei K, Arman M. Modification of exponential based hyperelastic strain energy to consider free stress initial configuration and Constitutive modeling. Journal of Computational Applied Mechanics. 2018 Jun 1;49(1):189-96.

source
Hyperelastics.ArrudaBoyceMethod
ArrudaBoyce()
 ArrudaBoyce(type; ℒinv)
-

Model:

\[W = \mu N \left( \frac{\lambda_{chain}}{\sqrt{N}} \beta + \log\left(\frac{\beta}{\sinh\beta}\right) \right)\]

where

\[\beta = \mathcal{L}^{-1}\left(\frac{\lambda_{chain}}{\sqrt{N}}\right)\]

and

\[\lambda_{chain} = \sqrt{\frac{I_1}{3}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ: Small strain shear modulus
  • N: Square of the locking stretch of the network.

Arruda EM, Boyce MC. A three-dimensional constitutive model for the large stretch behavior of rubber elastic materials. Journal of the Mechanics and Physics of Solids. 1993 Feb 1;41(2):389-412.

source
Hyperelastics.AttardMethod
Attard()
-

Model:

\[W = \sum\limits_{i=1}^N\frac{A_i}{2i}(\lambda_1^{2i}+\lambda_2^{2i}+\lambda_3^{2i}-3) + \frac{B_i}{2i}(\lambda_1^{-2i}+\lambda_2^{-2i}+\lambda_3^{-2i}-3)\]

Parameters:

  • A⃗
  • B⃗

Attard MM, Hunt GW. Hyperelastic constitutive modeling under finite strain. International Journal of Solids and Structures. 2004 Sep 1;41(18-19):5327-50.

source
Hyperelastics.BahremanDarijaniMethod
BahremanDarijani()
+

Model:

\[W = \mu N \left( \frac{\lambda_{chain}}{\sqrt{N}} \beta + \log\left(\frac{\beta}{\sinh\beta}\right) \right)\]

where

\[\beta = \mathcal{L}^{-1}\left(\frac{\lambda_{chain}}{\sqrt{N}}\right)\]

and

\[\lambda_{chain} = \sqrt{\frac{I_1}{3}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ: Small strain shear modulus
  • N: Square of the locking stretch of the network.

Arruda EM, Boyce MC. A three-dimensional constitutive model for the large stretch behavior of rubber elastic materials. Journal of the Mechanics and Physics of Solids. 1993 Feb 1;41(2):389-412.

source
Hyperelastics.AttardMethod
Attard()
+

Model:

\[W = \sum\limits_{i=1}^N\frac{A_i}{2i}(\lambda_1^{2i}+\lambda_2^{2i}+\lambda_3^{2i}-3) + \frac{B_i}{2i}(\lambda_1^{-2i}+\lambda_2^{-2i}+\lambda_3^{-2i}-3)\]

Parameters:

  • A⃗
  • B⃗

Attard MM, Hunt GW. Hyperelastic constitutive modeling under finite strain. International Journal of Solids and Structures. 2004 Sep 1;41(18-19):5327-50.

source
Hyperelastics.BahremanDarijaniMethod
BahremanDarijani()
 BahremanDarijani(type)
-

Model:

\[W = \sum\limits_{i = 1}{3}\sum\limits_{j=0}^{N} A_j (\lambda_i^{m_j}-1) + B_j(\lambda_i^{-n_j}-1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • A2
  • B2
  • A4
  • A6

Bahreman M, Darijani H. New polynomial strain energy function; application to rubbery circular cylinders under finite extension and torsion. Journal of Applied Polymer Science. 2015 Apr 5;132(13).

source
Hyperelastics.BeattyMethod
Beatty()
+

Model:

\[W = \sum\limits_{i = 1}{3}\sum\limits_{j=0}^{N} A_j (\lambda_i^{m_j}-1) + B_j(\lambda_i^{-n_j}-1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • A2
  • B2
  • A4
  • A6

Bahreman M, Darijani H. New polynomial strain energy function; application to rubbery circular cylinders under finite extension and torsion. Journal of Applied Polymer Science. 2015 Apr 5;132(13).

source
Hyperelastics.BeattyMethod
Beatty()
 Beatty(type)
-

Model:

\[W = -\frac{G_0 I_m(I_m-3)}{2(2I_m-3)}\log\bigg(\frac{1-\frac{I_1-3}{I_m-3}}{1+\frac{I_1-3}{I_m}} \bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • G₀
  • Iₘ

Beatty MF. On constitutive models for limited elastic, molecular based materials. Mathematics and mechanics of solids. 2008 Jul;13(5):375-87.

source
Hyperelastics.Bechir4TermMethod
Bechir4Term()
-

Model:

\[W = C_1^1(I_1-3)+\sum\limits_{n=1}^{2}\sum\limits_{r=1}^{2}C_n^{r}(\lambda_1^{2n}+\lambda_2^{2n}+\lambda_3^{2n}-3)^r\]

Parameters:

  • C11
  • C12
  • C21
  • C22

Khajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.

source
Hyperelastics.BechirChevalierMethod
BechirChevalier(; ℒinv)
-

Model:

\[W = W_{3Chain}(\mu_f, N_3)+W_{8Chain}(\frac{\mu_c}{3}, N_8)\]

where:

\[\mu_f = \rho\sqrt{\frac{I_1}{3N_8}}\]

\[\mu_c = \bigg(1-\frac{\eta\alpha}{\sqrt{N_3}}\bigg)\mu_0\]

\[\alpha = \max{\lambda_1, \lambda_2, \lambda_3}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ₀
  • η
  • ρ
  • N₃
  • N₈

Bechir H, Chevalier L, Idjeri M. A three-dimensional network model for rubber elasticity: The effect of local entanglements constraints. International journal of engineering science. 2010 Mar 1;48(3):265-74.

source
Hyperelastics.BedaMethod
Beda()
+

Model:

\[W = -\frac{G_0 I_m(I_m-3)}{2(2I_m-3)}\log\bigg(\frac{1-\frac{I_1-3}{I_m-3}}{1+\frac{I_1-3}{I_m}} \bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • G₀
  • Iₘ

Beatty MF. On constitutive models for limited elastic, molecular based materials. Mathematics and mechanics of solids. 2008 Jul;13(5):375-87.

source
Hyperelastics.Bechir4TermMethod
Bechir4Term()
+

Model:

\[W = C_1^1(I_1-3)+\sum\limits_{n=1}^{2}\sum\limits_{r=1}^{2}C_n^{r}(\lambda_1^{2n}+\lambda_2^{2n}+\lambda_3^{2n}-3)^r\]

Parameters:

  • C11
  • C12
  • C21
  • C22

Khajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.

source
Hyperelastics.BechirChevalierMethod
BechirChevalier(; ℒinv)
+

Model:

\[W = W_{3Chain}(\mu_f, N_3)+W_{8Chain}(\frac{\mu_c}{3}, N_8)\]

where:

\[\mu_f = \rho\sqrt{\frac{I_1}{3N_8}}\]

\[\mu_c = \bigg(1-\frac{\eta\alpha}{\sqrt{N_3}}\bigg)\mu_0\]

\[\alpha = \max{\lambda_1, \lambda_2, \lambda_3}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ₀
  • η
  • ρ
  • N₃
  • N₈

Bechir H, Chevalier L, Idjeri M. A three-dimensional network model for rubber elasticity: The effect of local entanglements constraints. International journal of engineering science. 2010 Mar 1;48(3):265-74.

source
Hyperelastics.BedaMethod
Beda()
 Beda(type)
-

Model:

\[W = \frac{C_1}{\alpha}(I_1-3)^{\alpha}+C_2(I_1-3)+\frac{C_3}{\zeta}(I_1-3)^{\zeta}+\frac{K_1}{\beta}(I_2-3)^\beta\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • K1
  • α
  • β
  • ζ

Beda T. Reconciling the fundamental phenomenological expression of the strain energy of rubber with established experimental facts. Journal of Polymer Science Part B: Polymer Physics. 2005 Jan 15;43(2):125-34.

source
Hyperelastics.BidermanMethod
Biderman()
+

Model:

\[W = \frac{C_1}{\alpha}(I_1-3)^{\alpha}+C_2(I_1-3)+\frac{C_3}{\zeta}(I_1-3)^{\zeta}+\frac{K_1}{\beta}(I_2-3)^\beta\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • K1
  • α
  • β
  • ζ

Beda T. Reconciling the fundamental phenomenological expression of the strain energy of rubber with established experimental facts. Journal of Polymer Science Part B: Polymer Physics. 2005 Jan 15;43(2):125-34.

source
Hyperelastics.BidermanMethod
Biderman()
 Biderman(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{3, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C20
  • C30

Biderman VL. Calculation of rubber parts. Rascheti na prochnost. 1958;40.

source
Hyperelastics.Bootstrapped8ChainMethod
Bootstrapped8Chain(; ℒinv)
-

Model:

\[W = W_8(\frac{\sum\lambda}{\sqrt{3N}}-\frac{\lambda_{chain}}{\sqrt{N}})+W_{8}(\frac{\lambda_{chain}}{\sqrt{N}})\]

where:

\[W_8(x) = \mu N (x \mathcal{L}^{-1}(x) + \log\frac{\mathcal{L}^{-1}(x)}{\sinh\mathcal{L}^{-1}(x)})\]

and

\[\lambda_{chain} = \sqrt{\frac{I_1}{3}}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approximation used.

Parameters:

  • μ
  • N

Miroshnychenko D, Green WA, Turner DM. Composite and filament models for the mechanical behaviour of elastomeric materials. Journal of the Mechanics and Physics of Solids. 2005 Apr 1;53(4):748-70. Miroshnychenko D, Green WA. Heuristic search for a predictive strain-energy function in nonlinear elasticity. International Journal of Solids and Structures. 2009 Jan 15;46(2):271-86.

source
Hyperelastics.CarrollMethod
Carroll()
+

Model:

\[W = \sum\limits_{i,j=0}^{3, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C20
  • C30

Biderman VL. Calculation of rubber parts. Rascheti na prochnost. 1958;40.

source
Hyperelastics.Bootstrapped8ChainMethod
Bootstrapped8Chain(; ℒinv)
+

Model:

\[W = W_8(\frac{\sum\lambda}{\sqrt{3N}}-\frac{\lambda_{chain}}{\sqrt{N}})+W_{8}(\frac{\lambda_{chain}}{\sqrt{N}})\]

where:

\[W_8(x) = \mu N (x \mathcal{L}^{-1}(x) + \log\frac{\mathcal{L}^{-1}(x)}{\sinh\mathcal{L}^{-1}(x)})\]

and

\[\lambda_{chain} = \sqrt{\frac{I_1}{3}}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approximation used.

Parameters:

  • μ
  • N

Miroshnychenko D, Green WA, Turner DM. Composite and filament models for the mechanical behaviour of elastomeric materials. Journal of the Mechanics and Physics of Solids. 2005 Apr 1;53(4):748-70. Miroshnychenko D, Green WA. Heuristic search for a predictive strain-energy function in nonlinear elasticity. International Journal of Solids and Structures. 2009 Jan 15;46(2):271-86.

source
Hyperelastics.CarrollMethod
Carroll()
 Carroll(type)
-

Model:

\[W = AI_1+BI_1^4+C\sqrt{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • A
  • B
  • C

Carroll M. A strain energy function for vulcanized rubbers. Journal of Elasticity. 2011 Apr;103(2):173-87.

source
Hyperelastics.ChevalierMarcoMethod
ChevalierMarco()
+

Model:

\[W = AI_1+BI_1^4+C\sqrt{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • A
  • B
  • C

Carroll M. A strain energy function for vulcanized rubbers. Journal of Elasticity. 2011 Apr;103(2):173-87.

source
Hyperelastics.ChevalierMarcoMethod
ChevalierMarco()
 ChevalierMarco()
-

Model:

\[W = \int\limits_{3}^{I_1(\vec\lambda)} \exp\bigg(\sum\limits_{i=0}^{N}a_i(I_1-3)^i\bigg)\text{d}I_1+ \int\limits_{3}^{I_2(\vec\lambda)} \sum\limits_{i=0}^{n}\frac{b_i}{I_2^i}\text{d}I_2\]

\[[\mathbf{S}] = 2(I-\frac{\partial W}{\partial I_1} - C^{-2}\frac{\partial W}{\partial I_2})\]

\[[\mathbf{\sigma}] = \mathbf{F} \cdot \mathbf{S}\]

Parameters:

  • a⃗
  • b⃗

Note:

  • Model is not compatible with AD. A method for accessing the Second Piola Kirchoff Tensor and Cauchy Stress Tensor have been implemented.

Chevalier L, Marco Y. Tools for multiaxial validation of behavior laws chosen for modeling hyper‐elasticity of rubber‐like materials. Polymer Engineering & Science. 2002 Feb;42(2):280-98.

source
Hyperelastics.ConstrainedJunctionMethod
ConstrainedJunction()
-

Model:

\[W = G_c (I_1-3)+ \frac{\nu k T}{2}(\sum\limits_{i=1}^{3}\kappa\frac{\lambda_i-1}{\lambda_i^2+\kappa}+\log{\frac{\lambda_i^2+\kappa}{1+\kappa}}-\log{\lambda_i^2})\]

Parameters:

  • Gc
  • νkT
  • κ

Flory PJ, Erman B. Theory of elasticity of polymer networks. 3. Macromolecules. 1982 May;15(3):800-6. Erman B, Flory PJ. Relationships between stress, strain, and molecular constitution of polymer networks. Comparison of theory with experiments. Macromolecules. 1982 May;15(3):806-11.

source
Hyperelastics.ContinuumHybridMethod
ContinuumHybrid()
-

Model:

\[W = K_1(I_1-3)+K_2\log\frac{I_2}{3}+\frac{\mu}{\alpha}(\lambda_1^\alpha+\lambda_2^\alpha+\lambda^\alpha-3)\]

Parameters:

  • K₁
  • K₂
  • α
  • μ

Beda T, Chevalier Y. Hybrid continuum model for large elastic deformation of rubber. Journal of applied physics. 2003 Aug 15;94(4):2701-6.

source
Hyperelastics.DavidsonGoulbourneMethod
DavidsonGoulbourne()
-

Model:

\[W = \frac{G_c I_1}{6}-G_c\lambda_{max}\log\left(3\lambda_{max}^2-I_1\right)+G_e\sum\limits_{i=1}^{3}\left(\lambda_i+\frac{1}{\lambda_i}\right)\]

Parameters:

  • Gc
  • Ge
  • λmax

Davidson JD, Goulbourne NC. A nonaffine network model for elastomers undergoing finite deformations. Journal of the Mechanics and Physics of Solids. 2013 Aug 1;61(8):1784-97.

source
Hyperelastics.DavisDeThomasMethod
DavisDeThomas()
+

Model:

\[W = \int\limits_{3}^{I_1(\vec\lambda)} \exp\bigg(\sum\limits_{i=0}^{N}a_i(I_1-3)^i\bigg)\text{d}I_1+ \int\limits_{3}^{I_2(\vec\lambda)} \sum\limits_{i=0}^{n}\frac{b_i}{I_2^i}\text{d}I_2\]

\[[\mathbf{S}] = 2(I-\frac{\partial W}{\partial I_1} - C^{-2}\frac{\partial W}{\partial I_2})\]

\[[\mathbf{\sigma}] = \mathbf{F} \cdot \mathbf{S}\]

Parameters:

  • a⃗
  • b⃗

Note:

  • Model is not compatible with AD. A method for accessing the Second Piola Kirchoff Tensor and Cauchy Stress Tensor have been implemented.

Chevalier L, Marco Y. Tools for multiaxial validation of behavior laws chosen for modeling hyper‐elasticity of rubber‐like materials. Polymer Engineering & Science. 2002 Feb;42(2):280-98.

source
Hyperelastics.ConstrainedJunctionMethod
ConstrainedJunction()
+

Model:

\[W = G_c (I_1-3)+ \frac{\nu k T}{2}\left(\sum\limits_{i=1}^{3}\kappa\frac{\lambda_i-1}{\lambda_i^2+\kappa}+\log{\frac{\lambda_i^2+\kappa}{1+\kappa}}-\log{\lambda_i^2}\right)\]

Parameters:

  • Gc
  • νkT
  • κ

Flory PJ, Erman B. Theory of elasticity of polymer networks. 3. Macromolecules. 1982 May;15(3):800-6. Erman B, Flory PJ. Relationships between stress, strain, and molecular constitution of polymer networks. Comparison of theory with experiments. Macromolecules. 1982 May;15(3):806-11.

source
Hyperelastics.ContinuumHybridMethod
ContinuumHybrid()
+

Model:

\[W = K_1(I_1-3)+K_2\log\frac{I_2}{3}+\frac{\mu}{\alpha}(\lambda_1^\alpha+\lambda_2^\alpha+\lambda^\alpha-3)\]

Parameters:

  • K₁
  • K₂
  • α
  • μ

Beda T, Chevalier Y. Hybrid continuum model for large elastic deformation of rubber. Journal of applied physics. 2003 Aug 15;94(4):2701-6.

source
Hyperelastics.DavidsonGoulbourneMethod
DavidsonGoulbourne()
+

Model:

\[W = \frac{G_c I_1}{6}-G_c\lambda_{max}\log\left(3\lambda_{max}^2-I_1\right)+G_e\sum\limits_{i=1}^{3}\left(\lambda_i+\frac{1}{\lambda_i}\right)\]

Parameters:

  • Gc
  • Ge
  • λmax

Davidson JD, Goulbourne NC. A nonaffine network model for elastomers undergoing finite deformations. Journal of the Mechanics and Physics of Solids. 2013 Aug 1;61(8):1784-97.

source
Hyperelastics.DavisDeThomasMethod
DavisDeThomas()
 DavisDeThomas(type)
-

Model:

\[W = \frac{A}{2(1-\frac{n}{2})}(I_1-3+C^2)^{1-\frac{n}{2}}+k(I_1-3)^2\]

Arguments

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • n
  • C
  • k

Davies CK, De DK, Thomas AG. Characterization of the behavior of rubber for engineering design purposes. 1. Stress-strain relations. Rubber chemistry and technology. 1994 Sep;67(4):716-28.

source
Hyperelastics.EdwardVilgisMethod
EdwardVilgis()
-

Model:

\[W = \frac{1}{2}N_C\Bigg[\frac{(1-\alpha^2)I_1}{1-\alpha^2I_1}+\log(1-\alpha^2I_1)\Bigg]+\frac{1}{2}N_S\Bigg[\sum_{i=1}^{3}\Big\{\frac{(1+\eta)(1-\alpha^2)\lambda_i^2}{( 1+\eta\lambda_i^2)(1-\alpha^2I_1)}+\log(1+\eta\lambda_i^2)\Big\}+\log(1-\alpha^2I_1)\Bigg]\]

Parameters:

  • Ns: Number of sliplinks
  • Nc: Number of crosslinks
  • α: A measure of chain inextensibility
  • η: A measure of the amount of chain slippage

Note:

  • Since α and η result from the same mechanism, they should be of approximately the same order of magnitude. Large differences between the two may indicate an issue with the optimizer or initial guess.

Edwards SF, Vilgis T. The effect of entanglements in rubber elasticity. Polymer. 1986 Apr 1;27(4):483-92.

source
Hyperelastics.ExpLnMethod
ExpLn()
+

Model:

\[W = \frac{A}{2(1-\frac{n}{2})}(I_1-3+C^2)^{1-\frac{n}{2}}+k(I_1-3)^2\]

Arguments

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • n
  • C
  • k

Davies CK, De DK, Thomas AG. Characterization of the behavior of rubber for engineering design purposes. 1. Stress-strain relations. Rubber chemistry and technology. 1994 Sep;67(4):716-28.

source
Hyperelastics.EdwardVilgisMethod
EdwardVilgis()
+

Model:

\[W = \frac{1}{2}N_C\Bigg[\frac{(1-\alpha^2)I_1}{1-\alpha^2I_1}+\log(1-\alpha^2I_1)\Bigg]+\frac{1}{2}N_S\Bigg[\sum_{i=1}^{3}\Big\{\frac{(1+\eta)(1-\alpha^2)\lambda_i^2}{( 1+\eta\lambda_i^2)(1-\alpha^2I_1)}+\log(1+\eta\lambda_i^2)\Big\}+\log(1-\alpha^2I_1)\Bigg]\]

Parameters:

  • Ns: Number of sliplinks
  • Nc: Number of crosslinks
  • α: A measure of chain inextensibility
  • η: A measure of the amount of chain slippage

Note:

  • Since α and η result from the same mechanism, they should be of approximately the same order of magnitude. Large differences between the two may indicate an issue with the optimizer or initial guess.

Edwards SF, Vilgis T. The effect of entanglements in rubber elasticity. Polymer. 1986 Apr 1;27(4):483-92.

source
Hyperelastics.ExpLnMethod
ExpLn()
 ExpLn(type)
-

Model:

\[W = A\bigg[\frac{1}{a}\exp{(a(I_1-3))}+b(I_1-2)(1-\log{I_1-2})-\frac{1}{a}-b\bigg]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • a
  • b

Khajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.

source
Hyperelastics.ExtendedTubeModelMethod
ExtendedTubeModel()
-

Model:

\[W = \frac{G_c}{2}\bigg[\frac{(1-\delta^2)(I_1-3)}{1-\delta^2(I_1-3)}+\log{(1-\delta^2(I_1-3))}\bigg]+\frac{2G_e}{\beta^2}\sum\limits_{i=1}^{3}(\lambda_i^{-\beta}-1)\]

Parameters:

  • Gc
  • Ge
  • δ
  • β

Kaliske M, Heinrich G. An extended tube-model for rubber elasticity: statistical-mechanical theory and finite element implementation. Rubber Chemistry and Technology. 1999 Sep;72(4):602-32.

source
Hyperelastics.FullNetworkMethod
FullNetwork(; ℒinv)
-

Model:

\[W = (1-\rho)W_{3Chain}+\rho W_{8chain}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N
  • ρ

Treloar LR, Riding G. A non-Gaussian theory for rubber in biaxial strain. I. Mechanical properties. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1979 Dec 31;369(1737):261-80. Wu PD, van der Giessen E. On improved 3-D non-Gaussian network models for rubber elasticity. Mechanics research communications. 1992 Sep 1;19(5):427-33. Wu PD, Van Der Giessen E. On improved network models for rubber elasticity and their applications to orientation hardening in glassy polymers. Journal of the Mechanics and Physics of Solids. 1993 Mar 1;41(3):427-56.

source
Hyperelastics.FungDemirayMethod
FungDemiray()
+

Model:

\[W = A\bigg[\frac{1}{a}\exp{(a(I_1-3))}+b(I_1-2)(1-\log{I_1-2})-\frac{1}{a}-b\bigg]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • a
  • b

Khajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.

source
Hyperelastics.ExtendedTubeModelMethod
ExtendedTubeModel()
+

Model:

\[W = \frac{G_c}{2}\bigg[\frac{(1-\delta^2)(I_1-3)}{1-\delta^2(I_1-3)}+\log{(1-\delta^2(I_1-3))}\bigg]+\frac{2G_e}{\beta^2}\sum\limits_{i=1}^{3}(\lambda_i^{-\beta}-1)\]

Parameters:

  • Gc
  • Ge
  • δ
  • β

Kaliske M, Heinrich G. An extended tube-model for rubber elasticity: statistical-mechanical theory and finite element implementation. Rubber Chemistry and Technology. 1999 Sep;72(4):602-32.

source
Hyperelastics.FullNetworkMethod
FullNetwork(; ℒinv)
+

Model:

\[W = (1-\rho)W_{3Chain}+\rho W_{8chain}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N
  • ρ

Treloar LR, Riding G. A non-Gaussian theory for rubber in biaxial strain. I. Mechanical properties. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1979 Dec 31;369(1737):261-80. Wu PD, van der Giessen E. On improved 3-D non-Gaussian network models for rubber elasticity. Mechanics research communications. 1992 Sep 1;19(5):427-33. Wu PD, Van Der Giessen E. On improved network models for rubber elasticity and their applications to orientation hardening in glassy polymers. Journal of the Mechanics and Physics of Solids. 1993 Mar 1;41(3):427-56.

source
Hyperelastics.FungDemirayMethod
FungDemiray()
 FungDemiray(type)
-

Model:

\[W = \frac{\mu}{2 * b} (\exp(b(I_1 - 3)) - 1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • b

Fung YC. Elasticity of soft tissues in simple elongation. American Journal of Physiology-Legacy Content. 1967 Dec 1;213(6):1532-44. Demiray H. A note on the elasticity of soft biological tissues. Journal of biomechanics. 1972 May 1;5(3):309-11.

source
Hyperelastics.GenYeohMethod
GenYeoh()
+

Model:

\[W = \frac{\mu}{2 * b} (\exp(b(I_1 - 3)) - 1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • b

Fung YC. Elasticity of soft tissues in simple elongation. American Journal of Physiology-Legacy Content. 1967 Dec 1;213(6):1532-44. Demiray H. A note on the elasticity of soft biological tissues. Journal of biomechanics. 1972 May 1;5(3):309-11.

source
Hyperelastics.GenYeohMethod
GenYeoh()
 GenYeoh(type)
-

Model:

\[W = K_1 (I_1 - 3)^m + K_2 * (I_1 - 3)^p + K_3 * (I_1 - 3)^q\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • K1
  • K2
  • K3
  • m
  • p
  • q

Hohenberger TW, Windslow RJ, Pugno NM, Busfield JJ. A constitutive model for both low and high strain nonlinearities in highly filled elastomers and implementation with user-defined material subroutines in ABAQUS. Rubber Chemistry and Technology. 2019;92(4):653-86.

source
Hyperelastics.GeneralConstitutiveModelMethod
GeneralConstitutiveModel()
-

Model:

\[W = G_c N \log\bigg(\frac{3N+\frac{1}{2}I_1}{3N-I_1}\bigg)+G_e\sum\limits_{i=1}^{3}\frac{1}{\lambda_I}\]

Parameters:

  • Gc
  • Ge
  • N

Xiang Y, Zhong D, Wang P, Mao G, Yu H, Qu S. A general constitutive model of soft elastomers. Journal of the Mechanics and Physics of Solids. 2018 Aug 1;117:110-22.

source
Hyperelastics.GentMethod
Gent()
+

Model:

\[W = K_1 (I_1 - 3)^m + K_2 * (I_1 - 3)^p + K_3 * (I_1 - 3)^q\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • K1
  • K2
  • K3
  • m
  • p
  • q

Hohenberger TW, Windslow RJ, Pugno NM, Busfield JJ. A constitutive model for both low and high strain nonlinearities in highly filled elastomers and implementation with user-defined material subroutines in ABAQUS. Rubber Chemistry and Technology. 2019;92(4):653-86.

source
Hyperelastics.GeneralConstitutiveModelMethod
GeneralConstitutiveModel()
+

Model:

\[W = G_c N \log\bigg(\frac{3N+\frac{1}{2}I_1}{3N-I_1}\bigg)+G_e\sum\limits_{i=1}^{3}\frac{1}{\lambda_I}\]

Parameters:

  • Gc
  • Ge
  • N

Xiang Y, Zhong D, Wang P, Mao G, Yu H, Qu S. A general constitutive model of soft elastomers. Journal of the Mechanics and Physics of Solids. 2018 Aug 1;117:110-22.

source
Hyperelastics.GentMethod
Gent()
 Gent(type)
-

Model:

\[W = -\frac{\mu J_m}{2}\log{\bigg(1-\frac{I_1-3}{J_m}\bigg)}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ: Small strain shear modulus
  • Jₘ: Limiting stretch invariant

Gent AN. A new constitutive relation for rubber. Rubber chemistry and technology. 1996 Mar;69(1):59-61.

source
Hyperelastics.GentThomasMethod
GentThomas()
+

Model:

\[W = -\frac{\mu J_m}{2}\log{\bigg(1-\frac{I_1-3}{J_m}\bigg)}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ: Small strain shear modulus
  • Jₘ: Limiting stretch invariant

Gent AN. A new constitutive relation for rubber. Rubber chemistry and technology. 1996 Mar;69(1):59-61.

source
Hyperelastics.GentThomasMethod
GentThomas()
 GentThomas(type)
-

Model:

\[W = C_1(I_1-3)+C_2\log(\frac{I_2}{3})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Paramters:

  • C1
  • C2

Gent AN, Thomas AG. Forms for the stored (strain) energy function for vulcanized rubber. Journal of Polymer Science. 1958 Apr;28(118):625-8.

source
Hyperelastics.GornetDesmoratMethod
GornetDesmorat()
+

Model:

\[W = C_1(I_1-3)+C_2\log(\frac{I_2}{3})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Paramters:

  • C1
  • C2

Gent AN, Thomas AG. Forms for the stored (strain) energy function for vulcanized rubber. Journal of Polymer Science. 1958 Apr;28(118):625-8.

source
Hyperelastics.GornetDesmoratMethod
GornetDesmorat()
 GornetDesmorat(type)
-

Model:

\[W = h_1\int\exp{h_3(I_1-3)^2}\text{d}I_1+3h_2\int\frac{1}{\sqrt{I_2}}\text{d}I_2 = \frac{h_1 \sqrt{\pi} \text{erfi}(\sqrt{h_3}(I_1-3)^2)}{2\sqrt{h_3}}+6h_2\sqrt{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • h₁
  • h₂
  • h₃

Notes:

  • The differential form was original form and the closed form SEF was determine via symbolic integration in Mathematica. The model is not compatible with AD and has methods for the Second Piola Kirchoff Stress Tensor and Cauchy Stress Tensor implemented.

Gornet L, Marckmann G, Desmorat R, Charrier P. A new isotropic hyperelastic strain energy function in terms of invariants and its derivation into a pseudo-elastic model for Mullins effect: application to finite element analysis. Constitutive Models for Rubbers VII. 2012:265-71.

source
Hyperelastics.GregoryMethod
Gregory()
+

Model:

\[W = h_1\int\exp{h_3(I_1-3)^2}\text{d}I_1+3h_2\int\frac{1}{\sqrt{I_2}}\text{d}I_2 = \frac{h_1 \sqrt{\pi} \text{erfi}(\sqrt{h_3}(I_1-3)^2)}{2\sqrt{h_3}}+6h_2\sqrt{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • h₁
  • h₂
  • h₃

Notes:

  • The differential form was original form and the closed form SEF was determine via symbolic integration in Mathematica. The model is not compatible with AD and has methods for the Second Piola Kirchoff Stress Tensor and Cauchy Stress Tensor implemented.

Gornet L, Marckmann G, Desmorat R, Charrier P. A new isotropic hyperelastic strain energy function in terms of invariants and its derivation into a pseudo-elastic model for Mullins effect: application to finite element analysis. Constitutive Models for Rubbers VII. 2012:265-71.

source
Hyperelastics.GregoryMethod
Gregory()
 Gregory(type)
-

Model:

\[W = \frac{A}{2-n}(I_1-3+C^2)^{1-\frac{n}{2}}+\frac{B}{2+m}(I_1-3+C^2)^{1+\frac{m}{2}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • B
  • C
  • m
  • n

Gregory IH, Muhr AH, Stephens IJ. Engineering applications of rubber in simple extension. Plastics rubber and composites processing and applications. 1997;26(3):118-22.

source
Hyperelastics.HainesWilsonMethod
HainesWilson()
+

Model:

\[W = \frac{A}{2-n}(I_1-3+C^2)^{1-\frac{n}{2}}+\frac{B}{2+m}(I_1-3+C^2)^{1+\frac{m}{2}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • B
  • C
  • m
  • n

Gregory IH, Muhr AH, Stephens IJ. Engineering applications of rubber in simple extension. Plastics rubber and composites processing and applications. 1997;26(3):118-22.

source
Hyperelastics.HainesWilsonMethod
HainesWilson()
 HainesWilson(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{3, 2}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C02
  • C20
  • C30

Haines DW, Wilson WD. Strain-energy density function for rubberlike materials. Journal of the Mechanics and Physics of Solids. 1979 Aug 1;27(4):345-60.

source
Hyperelastics.HartSmithMethod
HartSmith()
+

Model:

\[W = \sum\limits_{i,j=0}^{3, 2}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C02
  • C20
  • C30

Haines DW, Wilson WD. Strain-energy density function for rubberlike materials. Journal of the Mechanics and Physics of Solids. 1979 Aug 1;27(4):345-60.

source
Hyperelastics.HartSmithMethod
HartSmith()
 HartSmith(type)
-

Model:

\[W = \frac{G\exp{(-9k_1+k_1I_1)}}{k_1}+Gk_2\log{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • G
  • k₁
  • k₂

Hart-Smith LJ. Elasticity parameters for finite deformations of rubber-like materials. Zeitschrift für angewandte Mathematik und Physik ZAMP. 1966 Sep;17(5):608-26.

source
Hyperelastics.HartmannNeffMethod
HartmannNeff()
+

Model:

\[W = \frac{G\exp{(-9k_1+k_1I_1)}}{k_1}+Gk_2\log{I_2}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • G
  • k₁
  • k₂

Hart-Smith LJ. Elasticity parameters for finite deformations of rubber-like materials. Zeitschrift für angewandte Mathematik und Physik ZAMP. 1966 Sep;17(5):608-26.

source
Hyperelastics.HartmannNeffMethod
HartmannNeff()
 HartmannNeff(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{M,N}C_{i,0}(I_1-3)^i -3\sqrt{3}^j+\alpha(I_1-3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • α
  • Ci⃗0
  • C0j⃗

Hartmann S, Neff P. Polyconvexity of generalized polynomial-type hyperelastic strain energy functions for near-incompressibility. International journal of solids and structures. 2003 Jun 1;40(11):2767-91.

source
Hyperelastics.HauptSedlanMethod
HauptSedlan()
+

Model:

\[W = \sum\limits_{i,j=0}^{M,N}C_{i,0}(I_1-3)^i -3\sqrt{3}^j+\alpha(I_1-3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • α
  • Ci⃗0
  • C0j⃗

Hartmann S, Neff P. Polyconvexity of generalized polynomial-type hyperelastic strain energy functions for near-incompressibility. International journal of solids and structures. 2003 Jun 1;40(11):2767-91.

source
Hyperelastics.HauptSedlanMethod
HauptSedlan()
 HauptSedlan(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{3, 2}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C02
  • C30

Haupt P, Sedlan K. Viscoplasticity of elastomeric materials: experimental facts and constitutive modelling. Archive of Applied Mechanics. 2001 Mar;71(2):89-109.

source
Hyperelastics.HorganMurphyMethod
HorganMurphy()
-

Model:

\[W = -\frac{2\mu J_m}{c^2}\log\bigg(1-\frac{\lambda_1^c+\lambda_2^c+\lambda_3^c-3}{J_m})\]

Parameters:

  • μ
  • Jₘ
  • c

Horgan CO, Murphy JG. Limiting chain extensibility constitutive models of Valanis–Landel type. Journal of Elasticity. 2007 Feb;86(2):101-11.

source
Hyperelastics.HorganSaccomandiMethod
HorganSaccomandi()
+

Model:

\[W = \sum\limits_{i,j=0}^{3, 2}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C02
  • C30

Haupt P, Sedlan K. Viscoplasticity of elastomeric materials: experimental facts and constitutive modelling. Archive of Applied Mechanics. 2001 Mar;71(2):89-109.

source
Hyperelastics.HorganMurphyMethod
HorganMurphy()
+

Model:

\[W = -\frac{2\mu J_m}{c^2}\log\left(1-\frac{\lambda_1^c+\lambda_2^c+\lambda_3^c-3}{J_m}\right)\]

Parameters:

  • μ
  • Jₘ
  • c

Horgan CO, Murphy JG. Limiting chain extensibility constitutive models of Valanis–Landel type. Journal of Elasticity. 2007 Feb;86(2):101-11.

source
Hyperelastics.HorganSaccomandiMethod
HorganSaccomandi()
 HorganSaccomandi(type)
-

Model:

\[W = -\frac{\mu J}{2}\log\bigg(\frac{J^3-J^2I_1+JI_2-1}{(J-1)^3}\bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • J

Horgan CO, Saccomandi G. Constitutive models for compressible nonlinearly elastic materials with limiting chain extensibility. Journal of Elasticity. 2004 Nov;77(2):123-38.> Horgan CO, Saccomandi G. Constitutive models for atactic elastomers. InWaves And Stability In Continuous Media 2004 (pp. 281-294).

source
Hyperelastics.HossMarczakIMethod
HossMarczakI()
+

Model:

\[W = -\frac{\mu J}{2}\log\bigg(\frac{J^3-J^2I_1+JI_2-1}{(J-1)^3}\bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • J

Horgan CO, Saccomandi G. Constitutive models for compressible nonlinearly elastic materials with limiting chain extensibility. Journal of Elasticity. 2004 Nov;77(2):123-38.> Horgan CO, Saccomandi G. Constitutive models for atactic elastomers. InWaves And Stability In Continuous Media 2004 (pp. 281-294).

source
Hyperelastics.HossMarczakIMethod
HossMarczakI()
 HossMarczakI(type)
-

Model:

\[W = \frac{\alpha}{\beta}(1-\exp{-\beta(I_1-3)})+\frac{\mu}{2b}\bigg((1+\frac{b}{n}(I_1-3))^n -1\bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • μ
  • b
  • n

Note:

  • The authors suggested this model for low strains.

Hoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.

source
Hyperelastics.HossMarczakIIMethod
HossMarczakII()
+

Model:

\[W = \frac{\alpha}{\beta}(1-\exp{-\beta(I_1-3)})+\frac{\mu}{2b}\bigg((1+\frac{b}{n}(I_1-3))^n -1\bigg)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • μ
  • b
  • n

Note:

  • The authors suggested this model for low strains.

Hoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.

source
Hyperelastics.HossMarczakIIMethod
HossMarczakII()
 HossMarczakII(type)
-

Model:

\[W = \frac{\alpha}{\beta}(1-\exp{-\beta(I_1-3)})+\frac{\mu}{2b}\bigg((1+\frac{b}{n}(I_1-3))^n -1\bigg)+C_2\log(\frac{I_2}{3})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • μ
  • b
  • n
  • C2

Note:

  • The authors suggests this model for high strains.

Hoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.

source
Hyperelastics.IsiharaMethod
Isihara()
+

Model:

\[W = \frac{\alpha}{\beta}(1-\exp{-\beta(I_1-3)})+\frac{\mu}{2b}\bigg((1+\frac{b}{n}(I_1-3))^n -1\bigg)+C_2\log(\frac{I_2}{3})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • μ
  • b
  • n
  • C2

Note:

  • The authors suggests this model for high strains.

Hoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.

source
Hyperelastics.IsiharaMethod
Isihara()
 Isihara(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{2, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C20
  • C01

Isihara A, Hashitsume N, Tatibana M. Statistical theory of rubber‐like elasticity. IV.(two‐dimensional stretching). The Journal of Chemical Physics. 1951 Dec;19(12):1508-12.

source
Hyperelastics.JamesGreenSimpsonMethod
JamesGreenSimpson()
+

Model:

\[W = \sum\limits_{i,j=0}^{2, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C20
  • C01

Isihara A, Hashitsume N, Tatibana M. Statistical theory of rubber‐like elasticity. IV.(two‐dimensional stretching). The Journal of Chemical Physics. 1951 Dec;19(12):1508-12.

source
Hyperelastics.JamesGreenSimpsonMethod
JamesGreenSimpson()
 JamesGreenSimpson(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{3, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C20
  • C30

James AG, Green A, Simpson GM. Strain energy functions of rubber. I. Characterization of gum vulcanizates. Journal of Applied Polymer Science. 1975 Jul;19(7):2033-58.

source
Hyperelastics.KhiemItskovMethod
KhiemItskov()
+

Model:

\[W = \sum\limits_{i,j=0}^{3, 1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C11
  • C20
  • C30

James AG, Green A, Simpson GM. Strain energy functions of rubber. I. Characterization of gum vulcanizates. Journal of Applied Polymer Science. 1975 Jul;19(7):2033-58.

source
Hyperelastics.KhiemItskovMethod
KhiemItskov()
 KhiemItskov(type)
-

Model:

\[W = \mu_c \kappa n \log\bigg(\frac{\sin(\frac{\pi}{\sqrt{n}})(\frac{I_1}{3})^{\frac{q}{2}}}{\sin(\frac{\pi}{\sqrt{n}}(\frac{I_1}{3})^{\frac{q}{2}}}\bigg)+\mu_t\big[\frac{I_2}{3}^{1/2} - 1 \big]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μcκ
  • n
  • q
  • μt

Khiêm VN, Itskov M. Analytical network-averaging of the tube model:: Rubber elasticity. Journal of the Mechanics and Physics of Solids. 2016 Oct 1;95:254-69.

source
Hyperelastics.KnowlesMethod
Knowles()
+

Model:

\[W = \mu_c \kappa n \log\bigg(\frac{\sin(\frac{\pi}{\sqrt{n}})(\frac{I_1}{3})^{\frac{q}{2}}}{\sin(\frac{\pi}{\sqrt{n}}(\frac{I_1}{3})^{\frac{q}{2}}}\bigg)+\mu_t\big[\frac{I_2}{3}^{1/2} - 1 \big]\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μcκ
  • n
  • q
  • μt

Khiêm VN, Itskov M. Analytical network-averaging of the tube model:: Rubber elasticity. Journal of the Mechanics and Physics of Solids. 2016 Oct 1;95:254-69.

source
Hyperelastics.KnowlesMethod
Knowles()
 Knowles(type)
-

Model:

\[W = \frac{\mu}{2b}\left(\left(1+\frac{b}{n}(I_1-3)\right)^n-1\right)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • b
  • n

Knowles JK. The finite anti-plane shear field near the tip of a crack for a class of incompressible elastic solids. International Journal of Fracture. 1977 Oct;13(5):611-39.

source
Hyperelastics.LambertDianiReyMethod
LambertDianiRey()
+

Model:

\[W = \frac{\mu}{2b}\left(\left(1+\frac{b}{n}(I_1-3)\right)^n-1\right)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • b
  • n

Knowles JK. The finite anti-plane shear field near the tip of a crack for a class of incompressible elastic solids. International Journal of Fracture. 1977 Oct;13(5):611-39.

source
Hyperelastics.LambertDianiReyMethod
LambertDianiRey()
 LambertDianiRey(type)
-

Model:

\[W = \int\limits_{3}^{I_1}\exp\bigg(\sum\limits_{i=0}^{n}a_i(I_1-3)^i\bigg)\text{d}I_1+\int\limits_{3}^{I_2}\sum\limits_{j=0}^{m}b_i\log(I_2)^i\text{d}I_2\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • a⃗
  • b⃗

Lambert-Diani J, Rey C. New phenomenological behavior laws for rubbers and thermoplastic elastomers. European Journal of Mechanics-A/Solids. 1999 Nov 1;18(6):1027-43.

source
Hyperelastics.LimMethod
Lim()
+

Model:

\[W = \int\limits_{3}^{I_1}\exp\bigg(\sum\limits_{i=0}^{n}a_i(I_1-3)^i\bigg)\text{d}I_1+\int\limits_{3}^{I_2}\sum\limits_{j=0}^{m}b_i\log(I_2)^i\text{d}I_2\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • a⃗
  • b⃗

Lambert-Diani J, Rey C. New phenomenological behavior laws for rubbers and thermoplastic elastomers. European Journal of Mechanics-A/Solids. 1999 Nov 1;18(6):1027-43.

source
Hyperelastics.LimMethod
Lim()
 Lim(type; ℒinv)
-

Model:

\[W = \left(1-f\left(\frac{I_1-3}{\hat{I_1}-3}\right)\right)W_{NeoHookean}(μ₁)+fW_{ArrudaBoyce}(μ₂, N)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ₁
  • μ₂
  • N
  • Î₁

Lim GT. Scratch behavior of polymers. Texas A&M University; 2005.

source
Hyperelastics.LionMethod
Lion()
+

Model:

\[W = \left(1-f\left(\frac{I_1-3}{\hat{I_1}-3}\right)\right)W_{NeoHookean}(μ₁)+fW_{ArrudaBoyce}(μ₂, N)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()
  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ₁
  • μ₂
  • N
  • Î₁

Lim GT. Scratch behavior of polymers. Texas A&M University; 2005.

source
Hyperelastics.LionMethod
Lion()
 Lion(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{5,1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C50

Lion A. On the large deformation behaviour of reinforced rubber at different temperatures. Journal of the Mechanics and Physics of Solids. 1997 Nov 1;45(11-12):1805-34.

source
Hyperelastics.LopezPamiesMethod
LopezPamies()
+

Model:

\[W = \sum\limits_{i,j=0}^{5,1}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C01
  • C50

Lion A. On the large deformation behaviour of reinforced rubber at different temperatures. Journal of the Mechanics and Physics of Solids. 1997 Nov 1;45(11-12):1805-34.

source
Hyperelastics.LopezPamiesMethod
LopezPamies()
 LopezPamies(type)
-

Model:

\[W = \frac{3^{1 - \alpha_i}}{2\alpha_i} \mu_i (I_1^{\alpha_i} - 3^{\alpha_i})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α⃗
  • μ⃗

Lopez-Pamies O. A new I1-based hyperelastic model for rubber elastic materials. Comptes Rendus Mecanique. 2010 Jan 1;338(1):3-11.

source
Hyperelastics.MCCMethod
MCC()
-

Model:

\[W = \frac{1}{2}\zeta k T \sum\limits_{i=1}^{3}(\lambda_i^2-1)+\frac{1}{2}\mu k T\sum\limits_{i=1}^{3}[B_i+D_i-\log{(1+B_i)}-\log{(1+D_i)}]\]

where:

\[B_i = \frac{\kappa^2(\lambda_i^2-1)}{(\lambda_i^2+\kappa)^2}\]

and

\[D_i = \frac{\lambda_i^2 B_i}{\kappa}\]

Parameters:

  • ζkT
  • μkT
  • κ

Erman B, Monnerie L. Theory of elasticity of amorphous networks: effect of constraints along chains. Macromolecules. 1989 Aug;22(8):3342-8.

source
Hyperelastics.MansouriDarijaniMethod
MansouriDarijani()
+

Model:

\[W = \frac{3^{1 - \alpha_i}}{2\alpha_i} \mu_i (I_1^{\alpha_i} - 3^{\alpha_i})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α⃗
  • μ⃗

Lopez-Pamies O. A new I1-based hyperelastic model for rubber elastic materials. Comptes Rendus Mecanique. 2010 Jan 1;338(1):3-11.

source
Hyperelastics.MCCMethod
MCC()
+

Model:

\[W = \frac{1}{2}\zeta k T \sum\limits_{i=1}^{3}(\lambda_i^2-1)+\frac{1}{2}\mu k T\sum\limits_{i=1}^{3}[B_i+D_i-\log{(1+B_i)}-\log{(1+D_i)}]\]

where:

\[B_i = \frac{\kappa^2(\lambda_i^2-1)}{(\lambda_i^2+\kappa)^2}\]

and

\[D_i = \frac{\lambda_i^2 B_i}{\kappa}\]

Parameters:

  • ζkT
  • μkT
  • κ

Erman B, Monnerie L. Theory of elasticity of amorphous networks: effect of constraints along chains. Macromolecules. 1989 Aug;22(8):3342-8.

source
Hyperelastics.MansouriDarijaniMethod
MansouriDarijani()
 MansouriDarijani(type)
-

Model:

\[W = A_1\exp{m_1(I_1-3)-1}+B_1\exp{n_1(I_2-3)-1}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A1
  • m1
  • B1
  • n1

Mansouri MR, Darijani H. Constitutive modeling of isotropic hyperelastic materials in an exponential framework using a self-contained approach. International Journal of Solids and Structures. 2014 Dec 1;51(25-26):4316-26.

source
Hyperelastics.ModifiedFloryErmanMethod
ModifiedFloryErman(; ℒinv)
-

Model:

\[W = W_{\text{Arruda-Boyce}}+\sum\limits_{i=1}^{3}\frac{\mu}{2}[B_i+D_i]\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N
  • κ

Edwards SF. The statistical mechanics of polymerized material. Proceedings of the Physical Society (1958-1967). 1967 Sep 1;92(1):9.

source
Hyperelastics.ModifiedGregoryMethod
ModifiedGregory()
+

Model:

\[W = A_1\exp{m_1(I_1-3)-1}+B_1\exp{n_1(I_2-3)-1}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A1
  • m1
  • B1
  • n1

Mansouri MR, Darijani H. Constitutive modeling of isotropic hyperelastic materials in an exponential framework using a self-contained approach. International Journal of Solids and Structures. 2014 Dec 1;51(25-26):4316-26.

source
Hyperelastics.ModifiedFloryErmanMethod
ModifiedFloryErman(; ℒinv)
+

Model:

\[W = W_{\text{Arruda-Boyce}}+\sum\limits_{i=1}^{3}\frac{\mu}{2}[B_i+D_i]\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N
  • κ

Edwards SF. The statistical mechanics of polymerized material. Proceedings of the Physical Society (1958-1967). 1967 Sep 1;92(1):9.

source
Hyperelastics.ModifiedGregoryMethod
ModifiedGregory()
 ModifiedGregory(type)
-

Model:

\[W = \frac{A}{1+\alpha}(I_1-3+M^2)^{1+\alpha}+\frac{B}{1+\beta}(I_1-3+N^2)^{1+\beta}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • α
  • M
  • B
  • β
  • N

He H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.

source
Hyperelastics.ModifiedYeohMethod
ModifiedYeoh()
+

Model:

\[W = \frac{A}{1+\alpha}(I_1-3+M^2)^{1+\alpha}+\frac{B}{1+\beta}(I_1-3+N^2)^{1+\beta}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • α
  • M
  • B
  • β
  • N

He H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.

source
Hyperelastics.ModifiedYeohMethod
ModifiedYeoh()
 ModifiedYeoh(type)
-

Model:

\[W = C_{10} * (I_1 - 3) + C_{20} * (I_1 - 3)^2 + C_{30} * (I_1 - 3)^3 + \alpha / \beta * (1 - \exp{-\beta * (I_1 - 3)})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C10
  • C20
  • C30
  • α
  • β

He H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.

source
Hyperelastics.MooneyRivlinMethod
MooneyRivlin()
+

Model:

\[W = C_{10} * (I_1 - 3) + C_{20} * (I_1 - 3)^2 + C_{30} * (I_1 - 3)^3 + \alpha / \beta * (1 - \exp{-\beta * (I_1 - 3)})\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C10
  • C20
  • C30
  • α
  • β

He H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.

source
Hyperelastics.MooneyRivlinMethod
MooneyRivlin()
 MooneyRivlin(type)
-

Model:

\[W = C_{10}(I_1-3)+C_{01}(I_2-3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C01
  • C10

Mooney M. A theory of large elastic deformation. Journal of applied physics. 1940 Sep;11(9):582-92.

source
Hyperelastics.NeoHookeanType
NeoHookean()
+

Model:

\[W = C_{10}(I_1-3)+C_{01}(I_2-3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C01
  • C10

Mooney M. A theory of large elastic deformation. Journal of applied physics. 1940 Sep;11(9):582-92.

source
Hyperelastics.NeoHookeanType
NeoHookean()
 NeoHookean(type)
-

Model:

\[W = \frac{\mu}{2}(I_1-3)\]

Arguments

  • type = PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ: Small strain shear modulus

Treloar LR. The elasticity of a network of long-chain molecules—II. Transactions of the Faraday Society. 1943;39:241-6.

source
Hyperelastics.NonaffineMicroSphereMethod
NonaffineMicroSphere(; ℒinv, n)
-

Model: See Paper

Arguments:

  • ℒinv=CohenRounded3_2(): Sets the inverse Langevin approximation used.
  • n=21: Order of quadrature for spherical integration

Parameters:

  • μ: Small strain shear modulus
  • N: Number of chain segments
  • p: Non-affine stretch parameter
  • U: Tube geometry parameter
  • q: Non-affine tube parameter

Miehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.

source
Hyperelastics.NonaffineTubeMethod
NonaffineTube()
-

Model:

\[W = G_c \sum\limits_{i=1}^{3}\frac{\lambda_i^2}{2}+G_e\sum\limits_{i=1}^{3}\lambda_i+\frac{1}{\lambda_i}\]

Parameters:

  • Gc
  • Ge

Rubinstein M, Panyukov S. Nonaffine deformation and elasticity of polymer networks. Macromolecules. 1997 Dec 15;30(25):8036-44.

source
Hyperelastics.OgdenMethod
Ogden()
-

Model:

\[W = \sum\limits_{i=1}^{N}\frac{\mu_i}{\alpha_i}(\lambda_1^{\alpha_i}+\lambda_2^{\alpha_i}+\lambda_3^{\alpha_i}-3)\]

Parameters:

  • μ⃗
  • α⃗

Ogden RW. Large deformation isotropic elasticity–on the correlation of theory and experiment for incompressible rubberlike solids. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1972 Feb 1;326(1567):565-84.

source
Hyperelastics.PengLandelMethod
PengLandel()
-

Model:

\[W = E\sum\limits_{i=1}^{3}\bigg[\lambda_i - 1 - \log(\lambda_i) - \frac{1}{6}\log(\lambda_i)^2 + \frac{1}{18}\log(\lambda_i)^3-\frac{1}{216}\log(\lambda_i)^4\bigg]\]

Parameters:

  • E

Peng TJ, Landel RF. Stored energy function of rubberlike materials derived from simple tensile data. Journal of Applied Physics. 1972 Jul;43(7):3064-7.

source
Hyperelastics.PucciSaccomandiMethod
PucciSaccomandi()
+

Model:

\[W = \frac{\mu}{2}(I_1-3)\]

Arguments

  • type = PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ: Small strain shear modulus

Treloar LR. The elasticity of a network of long-chain molecules—II. Transactions of the Faraday Society. 1943;39:241-6.

source
Hyperelastics.NonaffineMicroSphereMethod
NonaffineMicroSphere(; ℒinv, n)
+

Model: See Paper

Arguments:

  • ℒinv=CohenRounded3_2(): Sets the inverse Langevin approximation used.
  • n=21: Order of quadrature for spherical integration

Parameters:

  • μ: Small strain shear modulus
  • N: Number of chain segments
  • p: Non-affine stretch parameter
  • U: Tube geometry parameter
  • q: Non-affine tube parameter

Miehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.

source
Hyperelastics.NonaffineTubeMethod
NonaffineTube()
+

Model:

\[W = G_c \sum\limits_{i=1}^{3}\frac{\lambda_i^2}{2}+G_e\sum\limits_{i=1}^{3}\lambda_i+\frac{1}{\lambda_i}\]

Parameters:

  • Gc
  • Ge

Rubinstein M, Panyukov S. Nonaffine deformation and elasticity of polymer networks. Macromolecules. 1997 Dec 15;30(25):8036-44.

source
Hyperelastics.OgdenMethod
Ogden()
+

Model:

\[W = \sum\limits_{i=1}^{N}\frac{\mu_i}{\alpha_i}(\lambda_1^{\alpha_i}+\lambda_2^{\alpha_i}+\lambda_3^{\alpha_i}-3)\]

Parameters:

  • μ⃗
  • α⃗

Ogden RW. Large deformation isotropic elasticity–on the correlation of theory and experiment for incompressible rubberlike solids. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1972 Feb 1;326(1567):565-84.

source
Hyperelastics.PengLandelMethod
PengLandel()
+

Model:

\[W = E\sum\limits_{i=1}^{3}\bigg[\lambda_i - 1 - \log(\lambda_i) - \frac{1}{6}\log(\lambda_i)^2 + \frac{1}{18}\log(\lambda_i)^3-\frac{1}{216}\log(\lambda_i)^4\bigg]\]

Parameters:

  • E

Peng TJ, Landel RF. Stored energy function of rubberlike materials derived from simple tensile data. Journal of Applied Physics. 1972 Jul;43(7):3064-7.

source
Hyperelastics.PucciSaccomandiMethod
PucciSaccomandi()
 PucciSaccomandi(type)
-

Model:

\[W = K\log{\frac{I_2}{3}}-\frac{\mu J_m}{2}\log{1-\frac{I_1-3}{J-m}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • K
  • μ
  • Jₘ

Pucci E, Saccomandi G. A note on the Gent model for rubber-like materials. Rubber chemistry and technology. 2002 Nov;75(5):839-52.

source
Hyperelastics.ShariffMethod
Shariff()
-

Model:

\[W = E\sum\limits_{i=1}^3\sum\limits_{j=1}^{N}|\alpha_j| \Phi_j(\lambda_i)\]

Parameters:

  • E
  • α⃗

Shariff MH. Strain energy function for filled and unfilled rubberlike material. Rubber chemistry and technology. 2000 Mar;73(1):1-8.

source
Hyperelastics.SwansonMethod
Swanson()
+

Model:

\[W = K\log{\frac{I_2}{3}}-\frac{\mu J_m}{2}\log{1-\frac{I_1-3}{J-m}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • K
  • μ
  • Jₘ

Pucci E, Saccomandi G. A note on the Gent model for rubber-like materials. Rubber chemistry and technology. 2002 Nov;75(5):839-52.

source
Hyperelastics.ShariffMethod
Shariff()
+

Model:

\[W = E\sum\limits_{i=1}^3\sum\limits_{j=1}^{N}|\alpha_j| \Phi_j(\lambda_i)\]

Parameters:

  • E
  • α⃗

Shariff MH. Strain energy function for filled and unfilled rubberlike material. Rubber chemistry and technology. 2000 Mar;73(1):1-8.

source
Hyperelastics.SwansonMethod
Swanson()
 Swanson(type)
-

Model:

\[W = \sum\limits_{i=1}^{N} \frac{3}{2}(\frac{A_i}{1+\alpha_i}(\frac{I_1}{3})^{1+\alpha_i}+\frac{B_i}{1+\beta_i}(\frac{I_2}{3})^{1+\beta_i}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A⃗
  • α⃗
  • B⃗
  • β⃗

Swanson SR. A constitutive model for high elongation elastic materials.

source
Hyperelastics.TakamizawaHayashiMethod
TakamizawaHayashi()
+

Model:

\[W = \sum\limits_{i=1}^{N} \frac{3}{2}(\frac{A_i}{1+\alpha_i}(\frac{I_1}{3})^{1+\alpha_i}+\frac{B_i}{1+\beta_i}(\frac{I_2}{3})^{1+\beta_i}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A⃗
  • α⃗
  • B⃗
  • β⃗

Swanson SR. A constitutive model for high elongation elastic materials.

source
Hyperelastics.TakamizawaHayashiMethod
TakamizawaHayashi()
 TakamizawaHayashi(type)
-

Model:

\[W = -c\log\left1-\left(\frac{I_1-3}{J_m}\right)^2\right\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • c
  • Jₘ

Takamizawa K, Hayashi K. Strain energy density function and uniform strain hypothesis for arterial mechanics. Journal of biomechanics. 1987 Jan 1;20(1):7-17.

source
Hyperelastics.ThreeChainModelMethod
ThreeChainModel(; ℒinv)
-

Model:

\[W = \frac{\mu\sqrt{N}}{3}\sum\limits_{i=1}^{3}\bigg(\lambda_i\beta_i+\sqrt{N}\log\bigg(\frac{\beta_i}{\sinh \beta_i}\bigg)\bigg)\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ: Small strain shear modulus
  • N: Square of the locking stretch of the network.

James HM, Guth E. Theory of the elastic properties of rubber. The Journal of Chemical Physics. 1943 Oct;11(10):455-81.

source
Hyperelastics.TubeMethod
Tube()
-

Model:

\[W = \sum\limits_{i=1}^{3}\frac{G_c}{2}(\lambda_i^2-1)+\frac{2Ge}{\beta^2}(\lambda_i^{-\beta}-1)\]

Parameters:

  • Gc
  • Ge
  • β

Heinrich G, Kaliske M. Theoretical and numerical formulation of a molecular based constitutive tube-model of rubber elasticity. Computational and Theoretical Polymer Science. 1997 Jan 1;7(3-4):227-41.

source
Hyperelastics.ValanisLandelMethod
ValanisLandel()
-

Model:

\[W = 2\mu\sum\limits_{1}^{3}(\lambda_i(\log\lambda_i -1))\]

Parameters:

  • μ

Valanis KC, Landel RF. The strain‐energy function of a hyperelastic material in terms of the extension ratios. Journal of Applied Physics. 1967 Jun;38(7):2997-3002.

source
Hyperelastics.VanDerWaalsMethod
VanDerWaals()
+

Model:

\[W = -c\log\left1-\left(\frac{I_1-3}{J_m}\right)^2\right\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • c
  • Jₘ

Takamizawa K, Hayashi K. Strain energy density function and uniform strain hypothesis for arterial mechanics. Journal of biomechanics. 1987 Jan 1;20(1):7-17.

source
Hyperelastics.ThreeChainModelMethod
ThreeChainModel(; ℒinv)
+

Model:

\[W = \frac{\mu\sqrt{N}}{3}\sum\limits_{i=1}^{3}\bigg(\lambda_i\beta_i+\sqrt{N}\log\bigg(\frac{\beta_i}{\sinh \beta_i}\bigg)\bigg)\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ: Small strain shear modulus
  • N: Square of the locking stretch of the network.

James HM, Guth E. Theory of the elastic properties of rubber. The Journal of Chemical Physics. 1943 Oct;11(10):455-81.

source
Hyperelastics.TubeMethod
Tube()
+

Model:

\[W = \sum\limits_{i=1}^{3}\frac{G_c}{2}(\lambda_i^2-1)+\frac{2Ge}{\beta^2}(\lambda_i^{-\beta}-1)\]

Parameters:

  • Gc
  • Ge
  • β

Heinrich G, Kaliske M. Theoretical and numerical formulation of a molecular based constitutive tube-model of rubber elasticity. Computational and Theoretical Polymer Science. 1997 Jan 1;7(3-4):227-41.

source
Hyperelastics.ValanisLandelMethod
ValanisLandel()
+

Model:

\[W = 2\mu\sum\limits_{1}^{3}(\lambda_i(\log\lambda_i -1))\]

Parameters:

  • μ

Valanis KC, Landel RF. The strain‐energy function of a hyperelastic material in terms of the extension ratios. Journal of Applied Physics. 1967 Jun;38(7):2997-3002.

source
Hyperelastics.VanDerWaalsMethod
VanDerWaals()
 VanDerWaals(type)
-

Model:

\[W = -\mu\{(\lambda_m^2-3)\log(1-\Theta)+\Theta\}-\frac{2\alpha}{3}\bigg(\frac{I-3}{2}\bigg)^{3/2}\]

where:

\[\Theta = \frac{\beta I_1 + (1-\beta)I_2-3}{\lambda_m^2-3)}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • λm
  • β
  • α

Kilian HG, Enderle HF, Unseld K. The use of the van der Waals model to elucidate universal aspects of structure-property relationships in simply extended dry and swollen rubbers. Colloid and Polymer Science. 1986 Oct;264(10):866-76. Ambacher H, Enderle HF, Kilian HG, Sauter A. Relaxation in permanent networks. InRelaxation in Polymers 1989 (pp. 209-220). Steinkopff. Kilian HG. A molecular interpretation of the parameters of the van der Waals equation of state for real networks. Polymer Bulletin. 1980 Sep;3(3):151-8.

source
Hyperelastics.VerondaWestmannMethod
VerondaWestmann()
+

Model:

\[W = -\mu\{(\lambda_m^2-3)\log(1-\Theta)+\Theta\}-\frac{2\alpha}{3}\bigg(\frac{I-3}{2}\bigg)^{3/2}\]

where:

\[\Theta = \frac{\beta I_1 + (1-\beta)I_2-3}{\lambda_m^2-3)}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • μ
  • λm
  • β
  • α

Kilian HG, Enderle HF, Unseld K. The use of the van der Waals model to elucidate universal aspects of structure-property relationships in simply extended dry and swollen rubbers. Colloid and Polymer Science. 1986 Oct;264(10):866-76. Ambacher H, Enderle HF, Kilian HG, Sauter A. Relaxation in permanent networks. InRelaxation in Polymers 1989 (pp. 209-220). Steinkopff. Kilian HG. A molecular interpretation of the parameters of the van der Waals equation of state for real networks. Polymer Bulletin. 1980 Sep;3(3):151-8.

source
Hyperelastics.VerondaWestmannMethod
VerondaWestmann()
 VerondaWestmann(type)
-

Model:

\[W = C_1 (\exp(\alpha(I_1 - 3)) - 1) + C_2 (I_2 - 3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • α

Veronda DR, Westmann RA. Mechanical characterization of skin—finite deformations. Journal of biomechanics. 1970 Jan 1;3(1):111-24.

source
Hyperelastics.VitoMethod
Vito()
+

Model:

\[W = C_1 (\exp(\alpha(I_1 - 3)) - 1) + C_2 (I_2 - 3)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • α

Veronda DR, Westmann RA. Mechanical characterization of skin—finite deformations. Journal of biomechanics. 1970 Jan 1;3(1):111-24.

source
Hyperelastics.VitoMethod
Vito()
 Vito(type)
-

Model:

\[W = \alpha (\exp\bigg(\beta (I_1 - 3)\bigg) + \gamma (I_2 - 3)) - 1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • γ

Vito R. A note on arterial elasticity. Journal of Biomechanics. 1973 Sep 1;6(5):561-4.

source
Hyperelastics.YamashitaKawabataMethod
YamashitaKawabata()
+

Model:

\[W = \alpha (\exp\bigg(\beta (I_1 - 3)\bigg) + \gamma (I_2 - 3)) - 1)\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • α
  • β
  • γ

Vito R. A note on arterial elasticity. Journal of Biomechanics. 1973 Sep 1;6(5):561-4.

source
Hyperelastics.YamashitaKawabataMethod
YamashitaKawabata()
 YamashitaKawabata(type)
-

Model:

\[W = C_1(I_1-3)+C_2(I_2-3)+\frac{C_3}{N+1}(I_1-3)^{N+1}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • N

Yamashita Y, Kawabata S. Approximated form of the strain energy-density function of carbon-black filled rubbers for industrial applications. Nippon Gomu Kyokaishi(Journal of the Society of Rubber Industry, Japan)(Japan). 1992;65(9):517-28.

source
Hyperelastics.YeohMethod
Yeoh()
+

Model:

\[W = C_1(I_1-3)+C_2(I_2-3)+\frac{C_3}{N+1}(I_1-3)^{N+1}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • C1
  • C2
  • C3
  • N

Yamashita Y, Kawabata S. Approximated form of the strain energy-density function of carbon-black filled rubbers for industrial applications. Nippon Gomu Kyokaishi(Journal of the Society of Rubber Industry, Japan)(Japan). 1992;65(9):517-28.

source
Hyperelastics.YeohMethod
Yeoh()
 Yeoh(type)
-

Model:

\[W = \sum\limits_{i,j=0}^{3, 0}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C20
  • C30

Yeoh OH. Characterization of elastic properties of carbon-black-filled rubber vulcanizates. Rubber chemistry and technology. 1990 Nov;63(5):792-805.

source
Hyperelastics.YeohFlemingMethod
YeohFleming()
+

Model:

\[W = \sum\limits_{i,j=0}^{3, 0}C_{i,j}(I_1-3)^i(I_2-3)^j\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C10
  • C20
  • C30

Yeoh OH. Characterization of elastic properties of carbon-black-filled rubber vulcanizates. Rubber chemistry and technology. 1990 Nov;63(5):792-805.

source
Hyperelastics.YeohFlemingMethod
YeohFleming()
 YeohFleming(type)
-

Model:

\[W = \frac{A}{B}(1-\exp{-B(I_1-3)}) - C_{10}(I_m-3)\log{1-\frac{I_1-3}{I_m-3}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • B
  • C10
  • Im

Yeoh OH, Fleming PD. A new attempt to reconcile the statistical and phenomenological theories of rubber elasticity. Journal of Polymer Science Part B: Polymer Physics. 1997 Sep 15;35(12):1919-31.

source
Hyperelastics.ZhaoMethod
Zhao()
+

Model:

\[W = \frac{A}{B}(1-\exp{-B(I_1-3)}) - C_{10}(I_m-3)\log{1-\frac{I_1-3}{I_m-3}}\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()

Parameters:

  • A
  • B
  • C10
  • Im

Yeoh OH, Fleming PD. A new attempt to reconcile the statistical and phenomenological theories of rubber elasticity. Journal of Polymer Science Part B: Polymer Physics. 1997 Sep 15;35(12):1919-31.

source
Hyperelastics.ZhaoMethod
Zhao()
 Zhao(type)
-

Model:

\[W = C_{-1}^{1}*(I_2-3)+C_{1}^{1}(I_1-3)+C_{2}^{1}(I_1^2-2I_2-3)+C_{2}^{2}(I_1^2-2I_2-3)^2\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C₋₁¹
  • C₁¹
  • C₂¹
  • C₂²

Zhao Z, Mu X, Du F. Modeling and verification of a new hyperelastic modelfor rubber-like materials. Mathematical Problems in Engineering. 2019 May 22019.

source
Hyperelastics.ZunigaBeattyMethod
ZunigaBeatty(; ℒinv)
-

Model:

\[W = \sqrt{\frac{N_3+N_8}{2N_3}}W_{3Chain}+\sqrt{\frac{I_1}{3N_8}}W_{8Chain}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N₃
  • N₈

Elı́as-Zúñiga A, Beatty MF. Constitutive equations for amended non-Gaussian network models of rubber elasticity. International journal of engineering science. 2002 Dec 1;40(20):2265-94.

source

Compressible Models

Data Driven Models

Hyperelastics.DataDrivenAverageChainBehaviorMethod
DataDrivenAverageChainBehavior(data; fchain)
-

Model:

  • Adapted from the code provided in the article's supplementary material

Parameters:

  • None

Fields:

  • data: A Uniaxial Hyperelastic Test
  • fchain(λch, pch): A constructor for an approximation with the form f(x, y) => f̂(x) = y

Amores VJ, Benítez JM, Montáns FJ. Average-chain behavior of isotropic incompressible polymers obtained from macroscopic experimental data. A simple structure-based WYPiWYG model in Julia language. Advances in Engineering Software. 2019 Apr 1;130:41-57.

Amores VJ, Benítez JM, Montáns FJ. Data-driven, structure-based hyperelastic manifolds: A macro-micro-macro approach to reverse-engineer the chain behavior and perform efficient simulations of polymers. Computers & Structures. 2020 Apr 15;231:106209.

source
Hyperelastics.SussmanBatheMethod
SussmanBathe(data; interpolant, k)
-

Model:

  • See paper

Parameters:

  • None

Fields:

  • data: Hyperelastic Uniaxial test to be used for determining the interpolation
  • k: Order of the summation in the model.
  • interpolant: Function of the form, f(s, λ) which returns a function f(λ) = s

Sussman T, Bathe KJ. A model of incompressible isotropic hyperelastic material behavior using spline interpolations of tension–compression test data. Communications in numerical methods in engineering. 2009 Jan;25(1):53-63.

source

Helper Functions

ContinuumMechanicsBase.CauchyStressTensorMethod
CauchyStressTensor(
+

Model:

\[W = C_{-1}^{1}*(I_2-3)+C_{1}^{1}(I_1-3)+C_{2}^{1}(I_1^2-2I_2-3)+C_{2}^{2}(I_1^2-2I_2-3)^2\]

Arguments:

  • type=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()

Parameters:

  • C₋₁¹
  • C₁¹
  • C₂¹
  • C₂²

Zhao Z, Mu X, Du F. Modeling and verification of a new hyperelastic modelfor rubber-like materials. Mathematical Problems in Engineering. 2019 May 22019.

source
Hyperelastics.ZunigaBeattyMethod
ZunigaBeatty(; ℒinv)
+

Model:

\[W = \sqrt{\frac{N_3+N_8}{2N_3}}W_{3Chain}+\sqrt{\frac{I_1}{3N_8}}W_{8Chain}\]

Arguments:

  • ℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used

Parameters:

  • μ
  • N₃
  • N₈

Elı́as-Zúñiga A, Beatty MF. Constitutive equations for amended non-Gaussian network models of rubber elasticity. International journal of engineering science. 2002 Dec 1;40(20):2265-94.

source

Compressible Models

Data Driven Models

Hyperelastics.DataDrivenAverageChainBehaviorMethod
DataDrivenAverageChainBehavior(data; fchain)
+

Model:

  • Adapted from the code provided in the article's supplementary material

Parameters:

  • None

Fields:

  • data: A Uniaxial Hyperelastic Test
  • fchain(λch, pch): A constructor for an approximation with the form f(x, y) => f̂(x) = y

Amores VJ, Benítez JM, Montáns FJ. Average-chain behavior of isotropic incompressible polymers obtained from macroscopic experimental data. A simple structure-based WYPiWYG model in Julia language. Advances in Engineering Software. 2019 Apr 1;130:41-57.

Amores VJ, Benítez JM, Montáns FJ. Data-driven, structure-based hyperelastic manifolds: A macro-micro-macro approach to reverse-engineer the chain behavior and perform efficient simulations of polymers. Computers & Structures. 2020 Apr 15;231:106209.

source
Hyperelastics.SussmanBatheMethod
SussmanBathe(data; interpolant, k)
+

Model:

  • See paper

Parameters:

  • None

Fields:

  • data: Hyperelastic Uniaxial test to be used for determining the interpolation
  • k: Order of the summation in the model.
  • interpolant: Function of the form, f(s, λ) which returns a function f(λ) = s

Sussman T, Bathe KJ. A model of incompressible isotropic hyperelastic material behavior using spline interpolations of tension–compression test data. Communications in numerical methods in engineering. 2009 Jan;25(1):53-63.

source

Helper Functions

ContinuumMechanicsBase.CauchyStressTensorMethod
CauchyStressTensor(
     ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},
     λ⃗::Array{R, 1},
     p;
     kwargs...
 ) -> Any
-

Returns the Cauchy stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.CauchyStressTensorMethod
CauchyStressTensor(
+

Returns the Cauchy stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.CauchyStressTensorMethod
CauchyStressTensor(
     ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},
     F::Array{S, 2},
     p;
     kwargs...
-) -> Any
-

Returns the Cauchy stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • F::Matrix: Deformation gradient matrix
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.I₁Method
I₁(λ⃗)
-

First stretch invariant - Currently requires the addition of 5 times the machine precision to allow AD to work correctly

$I_1(\vec{\lambda}) = \lambda_1^2+\lambda_2^2+\lambda_3^2 + 5\varepsilon$

source
ContinuumMechanicsBase.SecondPiolaKirchoffStressTensorMethod
SecondPiolaKirchoffStressTensor(
+)
+

Returns the Cauchy stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • F::Matrix: Deformation gradient matrix
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.I₁Method
I₁(λ⃗)
+

First stretch invariant - Currently requires the addition of 5 times the machine precision to allow AD to work correctly

$I_1(\vec{\lambda}) = \lambda_1^2+\lambda_2^2+\lambda_3^2 + 5\varepsilon$

source
ContinuumMechanicsBase.SecondPiolaKirchoffStressTensorMethod
SecondPiolaKirchoffStressTensor(
     ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},
     F::Array{R, 2},
     p;
     kwargs...
 ) -> Any
-

Returns the second PK stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • F::Matrix: Deformation gradient matrix
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.SecondPiolaKirchoffStressTensorMethod
SecondPiolaKirchoffStressTensor(
+

Returns the second PK stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • F::Matrix: Deformation gradient matrix
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.SecondPiolaKirchoffStressTensorMethod
SecondPiolaKirchoffStressTensor(
     ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},
     λ⃗::Array{R, 1},
     p;
     ad_type,
     kwargs...
 ) -> Any
-

Returns the second PK stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.StrainEnergyDensityMethod
StrainEnergyDensity(
+

Returns the second PK stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
  • ad_type: Automatic differentiation backend (see ADTypes.jl)
source
ContinuumMechanicsBase.StrainEnergyDensityMethod
StrainEnergyDensity(
     ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},
     F::Array{R, 2},
     p
@@ -159,19 +159,19 @@
 

Returns a function for the strain energy density function for the hyperelastic model based on calculating the principal stretches of the deformation gradient, F. The eigen values are found by the following procedure:

\[C = F^T \cdot F a = transpose(eigvecs(C)) C^\ast = (U^\ast)^2 = a^T \cdot C \cdot a -\vec{\lambda} = diag(U)\]

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • F::Matrix: Deformation gradient matrix
  • p: Model parameters
source
ContinuumMechanicsBase.StrainEnergyDensityMethod
StrainEnergyDensity(
     ψ::Hyperelastics.AbstractHyperelasticModel{T},
     _::Array{R, 1},
     p
 ) -> Any
-

Returns the strain energy density for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
source
Hyperelastics.HyperelasticProblemFunction

Creates an OptimizationProblem for use in Optimization.jl to find the optimal parameters.

Arguments:

  • ψ: material model to use
  • test or tests: A single or vector of hyperelastics tests to use when fitting the parameters
  • u₀: Initial guess for parameters
  • ps: Any additional parameters for calling predict
  • adb: Select differentiation type from ADTypes.jl. The type is automatically applied to the type of AD applied to the Optimization Problem also.
  • loss: Loss function from LossFunctions.jl
source
Hyperelastics.Kawabata1981Method
Kawabata1981(λ₁)
-

Biaxial experimental data from Kawabata et al. The data is more challenging to correctly fit a hyperelastic model to and is proposed as a better test than the Treloar1944 simple tension dataset. Available data is for fixed λ₁ of:

  • 1.040
  • 1.060
  • 1.080
  • 1.100
  • 1.120
  • 1.14
  • 1.16
  • 1.2
  • 1.24
  • 1.3
  • 1.6
  • 1.9
  • 2.2
  • 2.5
  • 2.8
  • 3.1
  • 3.4
  • 3.7

Arguments:

  • λ₁::Float64: Specification of λ₁ stretch for the data.

Kawabata S, Matsuda M, Tei K, Kawai H. Experimental survey of the strain energy density function of isoprene rubber vulcanizate. Macromolecules. 1981 Jan;14(1):154-62.

source
Hyperelastics.Treloar1944UniaxialMethod
Treloar1944Uniaxial()
-

Uniaxial data for tension of 8% S Rubber at 20C from Fig 3 of Treloar 1944. This is commonly used for testing hyperelastic models.

Treloar LR. Stress-strain data for vulcanized rubber under various types of deformation. Rubber Chemistry and Technology. 1944 Dec;17(4):813-25.

source
Hyperelastics.parameter_boundsMethod
parameter_bounds(
+

Returns the strain energy density for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • λ⃗::Vector: Vector of principal stretches
  • p: Model parameters
source
Hyperelastics.HyperelasticProblemFunction

Creates an OptimizationProblem for use in Optimization.jl to find the optimal parameters.

Arguments:

  • ψ: material model to use
  • test or tests: A single or vector of hyperelastics tests to use when fitting the parameters
  • u₀: Initial guess for parameters
  • ps: Any additional parameters for calling predict
  • adb: Select differentiation type from ADTypes.jl. The type is automatically applied to the type of AD applied to the Optimization Problem also.
  • loss: Loss function from LossFunctions.jl
source
Hyperelastics.Kawabata1981Method
Kawabata1981(λ₁)
+

Biaxial experimental data from Kawabata et al. The data is more challenging to correctly fit a hyperelastic model to and is proposed as a better test than the Treloar1944 simple tension dataset. Available data is for fixed λ₁ of:

  • 1.040
  • 1.060
  • 1.080
  • 1.100
  • 1.120
  • 1.14
  • 1.16
  • 1.2
  • 1.24
  • 1.3
  • 1.6
  • 1.9
  • 2.2
  • 2.5
  • 2.8
  • 3.1
  • 3.4
  • 3.7

Arguments:

  • λ₁::Float64: Specification of λ₁ stretch for the data.

Kawabata S, Matsuda M, Tei K, Kawai H. Experimental survey of the strain energy density function of isoprene rubber vulcanizate. Macromolecules. 1981 Jan;14(1):154-62.

source
Hyperelastics.Treloar1944UniaxialMethod
Treloar1944Uniaxial()
+

Uniaxial data for tension of 8% S Rubber at 20C from Fig 3 of Treloar 1944. This is commonly used for testing hyperelastic models.

Treloar LR. Stress-strain data for vulcanized rubber under various types of deformation. Rubber Chemistry and Technology. 1944 Dec;17(4):813-25.

source
Hyperelastics.parameter_boundsMethod
parameter_bounds(
     _::Hyperelastics.AbstractHyperelasticModel,
     _::Hyperelastics.AbstractHyperelasticTest
-) -> NamedTuple{(:lb, :ub), _A} where _A<:Tuple{NamedTuple{(:G₀, :Iₘ), _A} where _A<:Tuple{Float64, Any}, Nothing}
-

Returns a tuple of the parameter bounds provided the experimental data and model

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • test or tests: The test or vector of tests to use in finding the parameter bounds.
source
Hyperelastics.parametersMethod
parameters(
+) -> NamedTuple{(:lb, :ub), _A} where _A<:Tuple{NamedTuple{(:Gc, :Ge, :N), _A} where _A<:Tuple{Float64, Float64, Any}, Nothing}
+

Returns a tuple of the parameter bounds provided the experimental data and model

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastic model
  • test or tests: The test or vector of tests to use in finding the parameter bounds.
source
Hyperelastics.parametersMethod
parameters(
     ψ::Hyperelastics.AbstractHyperelasticModel
-) -> Tuple{Symbol, Symbol}
-

Returns a tuple of the parameters required for the model

Arguments:

  • ψ::AbstractHyperelasticModel: Hyperelastics model
source

Miscellaneous

Hyperelastics.HyperelasticsModule

Hyperelastics

Stable Dev codecov A hyperelastic model library and fitting toolkit developed by TRACER Lab at Liberty University. A constructor is provided for Optimization.jl for parameter fitting based on experimental data.

Citations

All relevant citations are located in CITATIONS.bib

source
-
+) -> Tuple{Symbol} +

Returns a tuple of the parameters required for the model

Arguments:

source

Miscellaneous

Hyperelastics.HyperelasticsModule

Hyperelastics

Stable Dev codecov A hyperelastic model library and fitting toolkit developed by TRACER Lab at Liberty University. A constructor is provided for Optimization.jl for parameter fitting based on experimental data.

Citations

All relevant citations are located in CITATIONS.bib

source
+
diff --git a/dev/example/index.html b/dev/example/index.html index 60c1ab4..76e0ad2 100644 --- a/dev/example/index.html +++ b/dev/example/index.html @@ -70,4 +70,4 @@ color = :black ) axislegend(position = :lt)
CairoMakie.Screen{IMAGE}
-

+

diff --git a/dev/index.html b/dev/index.html index 8c5d65a..5540fd1 100644 --- a/dev/index.html +++ b/dev/index.html @@ -1,2 +1,2 @@ -Home · Hyperelastics.jl

Hyperelastics

Hyperelastics.jl relies on ContinuumMechanicsBase.jl for the definitions of key continuum terms. Please cite the package if you use it in your work.

+Home · Hyperelastics.jl

Hyperelastics

Hyperelastics.jl relies on ContinuumMechanicsBase.jl for the definitions of key continuum terms. Please cite the package if you use it in your work.

diff --git a/dev/search/index.html b/dev/search/index.html index 6bde820..0f4f9da 100644 --- a/dev/search/index.html +++ b/dev/search/index.html @@ -1,2 +1,2 @@ -Search · Hyperelastics.jl

Loading search...

    +Search · Hyperelastics.jl

    Loading search...

      diff --git a/dev/search_index.js b/dev/search_index.js index 7c3e69c..5e92ddf 100644 --- a/dev/search_index.js +++ b/dev/search_index.js @@ -1,3 +1,3 @@ var documenterSearchIndex = {"docs": -[{"location":"example/#Package-Imports","page":"Example","title":"Package Imports","text":"","category":"section"},{"location":"example/","page":"Example","title":"Example","text":"using Hyperelastics\nusing Optimization, OptimizationOptimJL\nusing ComponentArrays: ComponentVector\nusing ForwardDiff\nusing CairoMakie, MakiePublication\nset_theme!(theme_web(width = 800))","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"For commonly used datasets in hyperelastic modelling, such as the Treloar1944Uniaxial data, functions are available for getting the datasets:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"f = Figure()\nax = Makie.Axis(f[1,1])\ntreloar_data = Treloar1944Uniaxial()\nscatter!(ax, \n getindex.(treloar_data.data.λ, 1), \n getindex.(treloar_data.data.s, 1), \n label = \"Treloar 1944 Experimental\",\n color = :black\n)\naxislegend(position = :lt)\nsave(\"treloar_data.png\", f)","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"Multiple dispatch is used on the corresponding function to calculate the values. Based on the model passed to the function, the correct method will be used in the calculation. StrainEnergyDensity, SecondPiolaKirchoffStressTensor, and CauchyStressTensor accept the deformation state as either the principal components in a vector, [λ₁, λ₂, λ₃] or as the deformation gradient matrix, Fᵢⱼ. The returned value matches the type of the input. Parameters are accessed by field allowing for structs, NamedTuples, or other field-based data-types such as those in ComponentArrays.jl and LabelledArrays.jl. For example, the NeoHookean model is accessed with:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"ψ = NeoHookean()\nλ⃗ = [2.0, sqrt(1/2), sqrt(1/2)]\np = (μ = 10.0, )\nW = StrainEnergyDensity(ψ, λ⃗, p)\nreturn W # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"or","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"F = rand(3,3)\np = (μ = 20.0, )\nW = StrainEnergyDensity(ψ, F, p)\nreturn W # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"A method for creating an OptimizationProblem compatible with Optimization.jl is provided. To fit the NeoHookean model to the Treloar data previously loaded, an additional field-indexed array is used as the initial guess to HyperelasticProblem. It is recommendedto use ComponentArrays.jl for optimization of model parameters.","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"prob = HyperelasticProblem(ψ, treloar_data, ComponentVector(μ = 0.2), ad_type = AutoForwardDiff())\nsol = solve(prob, LBFGS())\nreturn sol # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"For fiting multiple models to the same dataset, ","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"models = Dict(\n Gent => ComponentVector(μ=240e-3, Jₘ=80.0),\n EdwardVilgis => ComponentVector(Ns=0.10, Nc=0.20, α=0.001, η=0.001),\n NeoHookean => ComponentVector(μ=200e-3),\n NonaffineMicroSphere => ComponentVector(μ=0.292, N=22.5, p=1.471, U=0.744, q=0.1086),\n Beda => ComponentVector(C1=0.1237, C2=0.0424, C3=7.84e-5, K1=0.0168, α=0.9, β=0.68, ζ=3.015)\n)\n\nsol = Dict{DataType, SciMLSolution}()\nfor (ψ, p₀) in models\n HEProblem = HyperelasticProblem(ψ(), treloar_data, p₀, ad_type = AutoForwardDiff())\n sol[ψ] = solve(HEProblem, NelderMead())\nend\nreturn sol # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"To predict the reponse of a model to a proivded dataset and parameters, a predict function is provided:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"f = Figure()\nax = Makie.Axis(f[1,1])\nfor (ψ, p) in sol\n pred = predict(ψ(), treloar_data, p.u)\n lines!(ax, getindex.(pred.data.λ, 1), getindex.(pred.data.s, 1), label=string(ψ))\nend\nscatter!(ax, getindex.(treloar_data.data.λ, 1), getindex.(treloar_data.data.s, 1), label = \"Treloar 1944 Experimental\", color = :black)\naxislegend(position = :lt)\nsave(\"treloar_data_fits.png\", f) # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"While the majority of the models provided by Hyperelastics.jl are based on closed form strain energy density functions, a selection of data-driven models are proivded. For example, the SussmanBathe model is created with:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"using DataInterpolations\nψ = SussmanBathe(treloar_data, k=4, interpolant = QuadraticSpline)\nλ₁ = range(extrema(getindex.(treloar_data.data.λ, 1))..., length = 100)\nuniaxial_prediction = HyperelasticUniaxialTest(λ₁, name = \"Prediction\")\npred = predict(ψ, uniaxial_prediction, [])\nλ₁ = getindex.(treloar_data.data.λ, 1)\ns₁ = getindex.(treloar_data.data.s, 1)\nλ̂₁ = getindex.(pred.data.λ, 1)\nŝ₁ = getindex.(pred.data.s, 1)\n\n\nf, ax, p = lines( \n λ̂₁, \n ŝ₁, \n label = \"Sussman-Bathe Approximation\"\n)\n\nscatter!(\n ax,\n λ₁, \n s₁, \n label = \"Treloar 1944 Experimental\",\n color = :black\n )\naxislegend(position = :lt)\nsave(\"sussman_bathe.png\", f) # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"","page":"Home","title":"Home","text":"CurrentModule = Hyperelastics","category":"page"},{"location":"#Hyperelastics","page":"Home","title":"Hyperelastics","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"Hyperelastics.jl relies on ContinuumMechanicsBase.jl for the definitions of key continuum terms. Please cite the package if you use it in your work.","category":"page"},{"location":"API/","page":"API","title":"API","text":"CurrentModule = Hyperelastics","category":"page"},{"location":"API/#API-Reference","page":"API","title":"API Reference","text":"","category":"section"},{"location":"API/#Incompressible-Models","page":"API","title":"Incompressible Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractIncompressibleModel","category":"page"},{"location":"API/#Hyperelastics.ABGI-Tuple{}","page":"API","title":"Hyperelastics.ABGI","text":"ABGI(; ℒinv)\n\n\nModel:\n\nW = W_Arruda-Boyce + fracG_en left(sum_i=1^3lambda_i^n-3right)\n\nArguments:\n\nℒinv = TreloarApproximation(): Sets the inverse Langevin approxamationused (default = TreloarApproximation())\n\nParameters:\n\nμ\nN\nGe\nn\n\nMeissner B, Matějka L. A Langevin-elasticity-theory-based constitutiveequation for rubberlike networks and its comparison with biaxialstress–strain data. Part I. Polymer. 2003 Jul 1;44(16):4599-610.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.AffineMicroSphere-Tuple{}","page":"API","title":"Hyperelastics.AffineMicroSphere","text":"AffineMicroSphere(; ℒinv, n)\n\n\nModel:\n\nSee Paper\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\nn::Int = 21: Number of quadrature points for the spherical integration\n\nParameters:\n\nμ\nN\n\nMiehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Alexander-Tuple{}","page":"API","title":"Hyperelastics.Alexander","text":"Alexander()\n\n\nModel:\n\nW = fracC_1 sqrtpitexterfibig(sqrtk(I_1-3)big)2sqrtk+C_2logfracI_2-3+gammagamma+C_3(I_2-3)\n\nParameters:\n\nμ\nC₁\nC₂\nC₃\nk\nγ\n\nAlexander H. A constitutive relation for rubber-like materials. International Journal of Engineering Science. 1968 Sep 1;6(9):549-63.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Amin-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Amin","text":"Amin()\nAmin(type)\n\n\nModel:\n\nW = C_1 (I_1 - 3) + fracC_2N + 1 (I_1 - 3)^N + 1 + fracC_3M + 1 (I_1 - 3)^M + 1 + C_4 (I_2 - 3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nC4\nN\nM\n\nAmin AF, Wiraguna SI, Bhuiyan AR, Okui Y. Hyperelasticity model for finite element analysis of natural and high damping rubbers in compression and shear. Journal of engineering mechanics. 2006 Jan;132(1):54-64.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.AnsarriBenam-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.AnsarriBenam","text":"AnsarriBenam()\nAnsarriBenam(type; n)\n\n\nModel:\n\nW = frac3(n-1)2nmu N leftfrac13N(n-1)(I_1 - 3) - logfracI_1 - 3N3 -3N right\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used (default = ``)\nn::Int=3: Sets the order of the model\n\nParameters:\n\nμ\nn\nN\n\nAnssari-Benam A. On a new class of non-Gaussian molecular-based constitutive models with limiting chain extensibility for incompressible rubber-like materials. Mathematics and Mechanics of Solids. 2021 Nov;26(11):1660-74.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ArmanNarooei-Tuple{}","page":"API","title":"Hyperelastics.ArmanNarooei","text":"ArmanNarooei()\n\n\nModel:\n\nW = sumlimits_i=1^N A_ibigexpm_i(lambda_1^alpha_i+lambda_2^alpha_i+lambda_3^alpha_i-3)-1 + B_ibigexpn_i(lambda_1^-beta_i+lambda_2^-beta_i+lambda_3^-beta_i-3)-1\n\nParameters:\n\nA⃗\nB⃗\nm⃗\nn⃗\nα⃗\nβ⃗\n\nNarooei K, Arman M. Modification of exponential based hyperelastic strain energy to consider free stress initial configuration and Constitutive modeling. Journal of Computational Applied Mechanics. 2018 Jun 1;49(1):189-96.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ArrudaBoyce-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ArrudaBoyce","text":"ArrudaBoyce()\nArrudaBoyce(type; ℒinv)\n\n\nModel:\n\nW = mu N left( fraclambda_chainsqrtN beta + logleft(fracbetasinhbetaright) right)\n\nwhere\n\nbeta = mathcalL^-1left(fraclambda_chainsqrtNright)\n\nand\n\nlambda_chain = sqrtfracI_13\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ: Small strain shear modulus\nN: Square of the locking stretch of the network.\n\nArruda EM, Boyce MC. A three-dimensional constitutive model for the large stretch behavior of rubber elastic materials. Journal of the Mechanics and Physics of Solids. 1993 Feb 1;41(2):389-412.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Attard-Tuple{}","page":"API","title":"Hyperelastics.Attard","text":"Attard()\n\n\nModel:\n\nW = sumlimits_i=1^NfracA_i2i(lambda_1^2i+lambda_2^2i+lambda_3^2i-3) + fracB_i2i(lambda_1^-2i+lambda_2^-2i+lambda_3^-2i-3)\n\nParameters:\n\nA⃗\nB⃗\n\nAttard MM, Hunt GW. Hyperelastic constitutive modeling under finite strain. International Journal of Solids and Structures. 2004 Sep 1;41(18-19):5327-50.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.BahremanDarijani-Union{Tuple{}, Tuple{T}} where T<:PrincipalValueForm","page":"API","title":"Hyperelastics.BahremanDarijani","text":"BahremanDarijani()\nBahremanDarijani(type)\n\n\nModel:\n\nW = sumlimits_i = 13sumlimits_j=0^N A_j (lambda_i^m_j-1) + B_j(lambda_i^-n_j-1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nA2\nB2\nA4\nA6\n\nBahreman M, Darijani H. New polynomial strain energy function; application to rubbery circular cylinders under finite extension and torsion. Journal of Applied Polymer Science. 2015 Apr 5;132(13).\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Beatty-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Beatty","text":"Beatty()\nBeatty(type)\n\n\nModel:\n\nW = -fracG_0 I_m(I_m-3)2(2I_m-3)logbigg(frac1-fracI_1-3I_m-31+fracI_1-3I_m bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nG₀\nIₘ\n\nBeatty MF. On constitutive models for limited elastic, molecular based materials. Mathematics and mechanics of solids. 2008 Jul;13(5):375-87.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Bechir4Term-Tuple{}","page":"API","title":"Hyperelastics.Bechir4Term","text":"Bechir4Term()\n\n\nModel:\n\nW = C_1^1(I_1-3)+sumlimits_n=1^2sumlimits_r=1^2C_n^r(lambda_1^2n+lambda_2^2n+lambda_3^2n-3)^r\n\nParameters:\n\nC11\nC12\nC21\nC22\n\nKhajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.BechirChevalier-Tuple{}","page":"API","title":"Hyperelastics.BechirChevalier","text":"BechirChevalier(; ℒinv)\n\n\nModel:\n\nW = W_3Chain(mu_f N_3)+W_8Chain(fracmu_c3 N_8)\n\nwhere:\n\nmu_f = rhosqrtfracI_13N_8\n\nmu_c = bigg(1-fracetaalphasqrtN_3bigg)mu_0\n\nalpha = maxlambda_1 lambda_2 lambda_3\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ₀\nη\nρ\nN₃\nN₈\n\nBechir H, Chevalier L, Idjeri M. A three-dimensional network model for rubber elasticity: The effect of local entanglements constraints. International journal of engineering science. 2010 Mar 1;48(3):265-74.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Beda-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Beda","text":"Beda()\nBeda(type)\n\n\nModel:\n\nW = fracC_1alpha(I_1-3)^alpha+C_2(I_1-3)+fracC_3zeta(I_1-3)^zeta+fracK_1beta(I_2-3)^beta\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nK1\nα\nβ\nζ\n\nBeda T. Reconciling the fundamental phenomenological expression of the strain energy of rubber with established experimental facts. Journal of Polymer Science Part B: Polymer Physics. 2005 Jan 15;43(2):125-34.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Biderman-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Biderman","text":"Biderman()\nBiderman(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC20\nC30\n\nBiderman VL. Calculation of rubber parts. Rascheti na prochnost. 1958;40.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Bootstrapped8Chain-Tuple{}","page":"API","title":"Hyperelastics.Bootstrapped8Chain","text":"Bootstrapped8Chain(; ℒinv)\n\n\nModel:\n\nW = W_8(fracsumlambdasqrt3N-fraclambda_chainsqrtN)+W_8(fraclambda_chainsqrtN)\n\nwhere:\n\nW_8(x) = mu N (x mathcalL^-1(x) + logfracmathcalL^-1(x)sinhmathcalL^-1(x))\n\nand\n\nlambda_chain = sqrtfracI_13\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approximation used.\n\nParameters:\n\nμ\nN\n\nMiroshnychenko D, Green WA, Turner DM. Composite and filament models for the mechanical behaviour of elastomeric materials. Journal of the Mechanics and Physics of Solids. 2005 Apr 1;53(4):748-70. Miroshnychenko D, Green WA. Heuristic search for a predictive strain-energy function in nonlinear elasticity. International Journal of Solids and Structures. 2009 Jan 15;46(2):271-86.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Carroll-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Carroll","text":"Carroll()\nCarroll(type)\n\n\nModel:\n\nW = AI_1+BI_1^4+CsqrtI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nA\nB\nC\n\nCarroll M. A strain energy function for vulcanized rubbers. Journal of Elasticity. 2011 Apr;103(2):173-87.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ChevalierMarco-Union{Tuple{}, Tuple{T}} where T<:PrincipalValueForm","page":"API","title":"Hyperelastics.ChevalierMarco","text":"ChevalierMarco()\nChevalierMarco()\n\n\nModel:\n\nW = intlimits_3^I_1(veclambda) expbigg(sumlimits_i=0^Na_i(I_1-3)^ibigg)textdI_1+ intlimits_3^I_2(veclambda) sumlimits_i=0^nfracb_iI_2^itextdI_2\n\nmathbfS = 2(I-fracpartial Wpartial I_1 - C^-2fracpartial Wpartial I_2)\n\nmathbfsigma = mathbfF cdot mathbfS\n\nParameters:\n\na⃗\nb⃗\n\nNote:\n\nModel is not compatible with AD. A method for accessing the Second Piola Kirchoff Tensor and Cauchy Stress Tensor have been implemented.\n\nChevalier L, Marco Y. Tools for multiaxial validation of behavior laws chosen for modeling hyper‐elasticity of rubber‐like materials. Polymer Engineering & Science. 2002 Feb;42(2):280-98.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ConstrainedJunction-Tuple{}","page":"API","title":"Hyperelastics.ConstrainedJunction","text":"ConstrainedJunction()\n\n\nModel:\n\nW = G_c (I_1-3)+ fracnu k T2(sumlimits_i=1^3kappafraclambda_i-1lambda_i^2+kappa+logfraclambda_i^2+kappa1+kappa-loglambda_i^2)\n\nParameters:\n\nGc\nνkT\nκ\n\nFlory PJ, Erman B. Theory of elasticity of polymer networks. 3. Macromolecules. 1982 May;15(3):800-6. Erman B, Flory PJ. Relationships between stress, strain, and molecular constitution of polymer networks. Comparison of theory with experiments. Macromolecules. 1982 May;15(3):806-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ContinuumHybrid-Tuple{}","page":"API","title":"Hyperelastics.ContinuumHybrid","text":"ContinuumHybrid()\n\n\nModel:\n\nW = K_1(I_1-3)+K_2logfracI_23+fracmualpha(lambda_1^alpha+lambda_2^alpha+lambda^alpha-3)\n\nParameters:\n\nK₁\nK₂\nα\nμ\n\nBeda T, Chevalier Y. Hybrid continuum model for large elastic deformation of rubber. Journal of applied physics. 2003 Aug 15;94(4):2701-6.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.DavidsonGoulbourne-Tuple{}","page":"API","title":"Hyperelastics.DavidsonGoulbourne","text":"DavidsonGoulbourne()\n\n\nModel:\n\nW = fracG_c I_16-G_clambda_maxlogleft(3lambda_max^2-I_1right)+G_esumlimits_i=1^3left(lambda_i+frac1lambda_iright)\n\nParameters:\n\nGc\nGe\nλmax\n\nDavidson JD, Goulbourne NC. A nonaffine network model for elastomers undergoing finite deformations. Journal of the Mechanics and Physics of Solids. 2013 Aug 1;61(8):1784-97.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.DavisDeThomas-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.DavisDeThomas","text":"DavisDeThomas()\nDavisDeThomas(type)\n\n\nModel:\n\nW = fracA2(1-fracn2)(I_1-3+C^2)^1-fracn2+k(I_1-3)^2\n\nArguments\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nn\nC\nk\n\nDavies CK, De DK, Thomas AG. Characterization of the behavior of rubber for engineering design purposes. 1. Stress-strain relations. Rubber chemistry and technology. 1994 Sep;67(4):716-28.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.EdwardVilgis-Tuple{}","page":"API","title":"Hyperelastics.EdwardVilgis","text":"EdwardVilgis()\n\n\nModel:\n\nW = frac12N_CBiggfrac(1-alpha^2)I_11-alpha^2I_1+log(1-alpha^2I_1)Bigg+frac12N_SBiggsum_i=1^3Bigfrac(1+eta)(1-alpha^2)lambda_i^2( 1+etalambda_i^2)(1-alpha^2I_1)+log(1+etalambda_i^2)Big+log(1-alpha^2I_1)Bigg\n\nParameters:\n\nNs: Number of sliplinks\nNc: Number of crosslinks\nα: A measure of chain inextensibility\nη: A measure of the amount of chain slippage\n\nNote:\n\nSince α and η result from the same mechanism, they should be of approximately the same order of magnitude. Large differences between the two may indicate an issue with the optimizer or initial guess.\n\nEdwards SF, Vilgis T. The effect of entanglements in rubber elasticity. Polymer. 1986 Apr 1;27(4):483-92.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ExpLn-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ExpLn","text":"ExpLn()\nExpLn(type)\n\n\nModel:\n\nW = Abiggfrac1aexp(a(I_1-3))+b(I_1-2)(1-logI_1-2)-frac1a-bbigg\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\na\nb\n\nKhajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ExtendedTubeModel-Tuple{}","page":"API","title":"Hyperelastics.ExtendedTubeModel","text":"ExtendedTubeModel()\n\n\nModel:\n\nW = fracG_c2biggfrac(1-delta^2)(I_1-3)1-delta^2(I_1-3)+log(1-delta^2(I_1-3))bigg+frac2G_ebeta^2sumlimits_i=1^3(lambda_i^-beta-1)\n\nParameters:\n\nGc\nGe\nδ\nβ\n\nKaliske M, Heinrich G. An extended tube-model for rubber elasticity: statistical-mechanical theory and finite element implementation. Rubber Chemistry and Technology. 1999 Sep;72(4):602-32.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.FullNetwork-Tuple{}","page":"API","title":"Hyperelastics.FullNetwork","text":"FullNetwork(; ℒinv)\n\n\nModel:\n\nW = (1-rho)W_3Chain+rho W_8chain\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN\nρ\n\nTreloar LR, Riding G. A non-Gaussian theory for rubber in biaxial strain. I. Mechanical properties. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1979 Dec 31;369(1737):261-80. Wu PD, van der Giessen E. On improved 3-D non-Gaussian network models for rubber elasticity. Mechanics research communications. 1992 Sep 1;19(5):427-33. Wu PD, Van Der Giessen E. On improved network models for rubber elasticity and their applications to orientation hardening in glassy polymers. Journal of the Mechanics and Physics of Solids. 1993 Mar 1;41(3):427-56.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.FungDemiray-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.FungDemiray","text":"FungDemiray()\nFungDemiray(type)\n\n\nModel:\n\nW = fracmu2 * b (exp(b(I_1 - 3)) - 1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nb\n\nFung YC. Elasticity of soft tissues in simple elongation. American Journal of Physiology-Legacy Content. 1967 Dec 1;213(6):1532-44. Demiray H. A note on the elasticity of soft biological tissues. Journal of biomechanics. 1972 May 1;5(3):309-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GenYeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GenYeoh","text":"GenYeoh()\nGenYeoh(type)\n\n\nModel:\n\nW = K_1 (I_1 - 3)^m + K_2 * (I_1 - 3)^p + K_3 * (I_1 - 3)^q\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nK1\nK2\nK3\nm\np\nq\n\nHohenberger TW, Windslow RJ, Pugno NM, Busfield JJ. A constitutive model for both low and high strain nonlinearities in highly filled elastomers and implementation with user-defined material subroutines in ABAQUS. Rubber Chemistry and Technology. 2019;92(4):653-86.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GeneralConstitutiveModel-Tuple{}","page":"API","title":"Hyperelastics.GeneralConstitutiveModel","text":"GeneralConstitutiveModel()\n\n\nModel:\n\nW = G_c N logbigg(frac3N+frac12I_13N-I_1bigg)+G_esumlimits_i=1^3frac1lambda_I\n\nParameters:\n\nGc\nGe\nN\n\nXiang Y, Zhong D, Wang P, Mao G, Yu H, Qu S. A general constitutive model of soft elastomers. Journal of the Mechanics and Physics of Solids. 2018 Aug 1;117:110-22.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Gent-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Gent","text":"Gent()\nGent(type)\n\n\nModel:\n\nW = -fracmu J_m2logbigg(1-fracI_1-3J_mbigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ: Small strain shear modulus\nJₘ: Limiting stretch invariant\n\nGent AN. A new constitutive relation for rubber. Rubber chemistry and technology. 1996 Mar;69(1):59-61.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GentThomas-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GentThomas","text":"GentThomas()\nGentThomas(type)\n\n\nModel:\n\nW = C_1(I_1-3)+C_2log(fracI_23)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParamters:\n\nC1\nC2\n\nGent AN, Thomas AG. Forms for the stored (strain) energy function for vulcanized rubber. Journal of Polymer Science. 1958 Apr;28(118):625-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GornetDesmorat-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GornetDesmorat","text":"GornetDesmorat()\nGornetDesmorat(type)\n\n\nModel:\n\nW = h_1intexph_3(I_1-3)^2textdI_1+3h_2intfrac1sqrtI_2textdI_2 = frach_1 sqrtpi texterfi(sqrth_3(I_1-3)^2)2sqrth_3+6h_2sqrtI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nh₁\nh₂\nh₃\n\nNotes:\n\nThe differential form was original form and the closed form SEF was determine via symbolic integration in Mathematica. The model is not compatible with AD and has methods for the Second Piola Kirchoff Stress Tensor and Cauchy Stress Tensor implemented.\n\nGornet L, Marckmann G, Desmorat R, Charrier P. A new isotropic hyperelastic strain energy function in terms of invariants and its derivation into a pseudo-elastic model for Mullins effect: application to finite element analysis. Constitutive Models for Rubbers VII. 2012:265-71.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Gregory-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Gregory","text":"Gregory()\nGregory(type)\n\n\nModel:\n\nW = fracA2-n(I_1-3+C^2)^1-fracn2+fracB2+m(I_1-3+C^2)^1+fracm2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nB\nC\nm\nn\n\nGregory IH, Muhr AH, Stephens IJ. Engineering applications of rubber in simple extension. Plastics rubber and composites processing and applications. 1997;26(3):118-22.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HainesWilson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HainesWilson","text":"HainesWilson()\nHainesWilson(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 2C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC02\nC20\nC30\n\nHaines DW, Wilson WD. Strain-energy density function for rubberlike materials. Journal of the Mechanics and Physics of Solids. 1979 Aug 1;27(4):345-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HartSmith-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HartSmith","text":"HartSmith()\nHartSmith(type)\n\n\nModel:\n\nW = fracGexp(-9k_1+k_1I_1)k_1+Gk_2logI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nG\nk₁\nk₂\n\nHart-Smith LJ. Elasticity parameters for finite deformations of rubber-like materials. Zeitschrift für angewandte Mathematik und Physik ZAMP. 1966 Sep;17(5):608-26.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HartmannNeff-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HartmannNeff","text":"HartmannNeff()\nHartmannNeff(type)\n\n\nModel:\n\nW = sumlimits_ij=0^MNC_i0(I_1-3)^i -3sqrt3^j+alpha(I_1-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nα\nCi⃗0\nC0j⃗\n\nHartmann S, Neff P. Polyconvexity of generalized polynomial-type hyperelastic strain energy functions for near-incompressibility. International journal of solids and structures. 2003 Jun 1;40(11):2767-91.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HauptSedlan-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HauptSedlan","text":"HauptSedlan()\nHauptSedlan(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 2C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC02\nC30\n\nHaupt P, Sedlan K. Viscoplasticity of elastomeric materials: experimental facts and constitutive modelling. Archive of Applied Mechanics. 2001 Mar;71(2):89-109.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HorganMurphy-Tuple{}","page":"API","title":"Hyperelastics.HorganMurphy","text":"HorganMurphy()\n\n\nModel:\n\nW = -frac2mu J_mc^2logbigg(1-fraclambda_1^c+lambda_2^c+lambda_3^c-3J_m)\n\nParameters:\n\nμ\nJₘ\nc\n\nHorgan CO, Murphy JG. Limiting chain extensibility constitutive models of Valanis–Landel type. Journal of Elasticity. 2007 Feb;86(2):101-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HorganSaccomandi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HorganSaccomandi","text":"HorganSaccomandi()\nHorganSaccomandi(type)\n\n\nModel:\n\nW = -fracmu J2logbigg(fracJ^3-J^2I_1+JI_2-1(J-1)^3bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nJ\n\nHorgan CO, Saccomandi G. Constitutive models for compressible nonlinearly elastic materials with limiting chain extensibility. Journal of Elasticity. 2004 Nov;77(2):123-38.> Horgan CO, Saccomandi G. Constitutive models for atactic elastomers. InWaves And Stability In Continuous Media 2004 (pp. 281-294).\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HossMarczakI-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HossMarczakI","text":"HossMarczakI()\nHossMarczakI(type)\n\n\nModel:\n\nW = fracalphabeta(1-exp-beta(I_1-3))+fracmu2bbigg((1+fracbn(I_1-3))^n -1bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nμ\nb\nn\n\nNote:\n\nThe authors suggested this model for low strains.\n\nHoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HossMarczakII-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HossMarczakII","text":"HossMarczakII()\nHossMarczakII(type)\n\n\nModel:\n\nW = fracalphabeta(1-exp-beta(I_1-3))+fracmu2bbigg((1+fracbn(I_1-3))^n -1bigg)+C_2log(fracI_23)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nμ\nb\nn\nC2\n\nNote:\n\nThe authors suggests this model for high strains.\n\nHoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Isihara-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Isihara","text":"Isihara()\nIsihara(type)\n\n\nModel:\n\nW = sumlimits_ij=0^2 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC20\nC01\n\nIsihara A, Hashitsume N, Tatibana M. Statistical theory of rubber‐like elasticity. IV.(two‐dimensional stretching). The Journal of Chemical Physics. 1951 Dec;19(12):1508-12.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.JamesGreenSimpson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.JamesGreenSimpson","text":"JamesGreenSimpson()\nJamesGreenSimpson(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC20\nC30\n\nJames AG, Green A, Simpson GM. Strain energy functions of rubber. I. Characterization of gum vulcanizates. Journal of Applied Polymer Science. 1975 Jul;19(7):2033-58.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.KhiemItskov-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.KhiemItskov","text":"KhiemItskov()\nKhiemItskov(type)\n\n\nModel:\n\nW = mu_c kappa n logbigg(fracsin(fracpisqrtn)(fracI_13)^fracq2sin(fracpisqrtn(fracI_13)^fracq2bigg)+mu_tbigfracI_23^12 - 1 big\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμcκ\nn\nq\nμt\n\nKhiêm VN, Itskov M. Analytical network-averaging of the tube model:: Rubber elasticity. Journal of the Mechanics and Physics of Solids. 2016 Oct 1;95:254-69.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Knowles-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Knowles","text":"Knowles()\nKnowles(type)\n\n\nModel:\n\nW = fracmu2bleft(left(1+fracbn(I_1-3)right)^n-1right)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nb\nn\n\nKnowles JK. The finite anti-plane shear field near the tip of a crack for a class of incompressible elastic solids. International Journal of Fracture. 1977 Oct;13(5):611-39.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.LambertDianiRey-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.LambertDianiRey","text":"LambertDianiRey()\nLambertDianiRey(type)\n\n\nModel:\n\nW = intlimits_3^I_1expbigg(sumlimits_i=0^na_i(I_1-3)^ibigg)textdI_1+intlimits_3^I_2sumlimits_j=0^mb_ilog(I_2)^itextdI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\na⃗\nb⃗\n\nLambert-Diani J, Rey C. New phenomenological behavior laws for rubbers and thermoplastic elastomers. European Journal of Mechanics-A/Solids. 1999 Nov 1;18(6):1027-43.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Lim-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Lim","text":"Lim()\nLim(type; ℒinv)\n\n\nModel:\n\nW = left(1-fleft(fracI_1-3hatI_1-3right)right)W_NeoHookean(μ₁)+fW_ArrudaBoyce(μ₂ N)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ₁\nμ₂\nN\nÎ₁\n\nLim GT. Scratch behavior of polymers. Texas A&M University; 2005.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Lion-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Lion","text":"Lion()\nLion(type)\n\n\nModel:\n\nW = sumlimits_ij=0^51C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC50\n\nLion A. On the large deformation behaviour of reinforced rubber at different temperatures. Journal of the Mechanics and Physics of Solids. 1997 Nov 1;45(11-12):1805-34.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.LopezPamies-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.LopezPamies","text":"LopezPamies()\nLopezPamies(type)\n\n\nModel:\n\nW = frac3^1 - alpha_i2alpha_i mu_i (I_1^alpha_i - 3^alpha_i)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα⃗\nμ⃗\n\nLopez-Pamies O. A new I1-based hyperelastic model for rubber elastic materials. Comptes Rendus Mecanique. 2010 Jan 1;338(1):3-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MCC-Tuple{}","page":"API","title":"Hyperelastics.MCC","text":"MCC()\n\n\nModel:\n\nW = frac12zeta k T sumlimits_i=1^3(lambda_i^2-1)+frac12mu k Tsumlimits_i=1^3B_i+D_i-log(1+B_i)-log(1+D_i)\n\nwhere:\n\nB_i = frackappa^2(lambda_i^2-1)(lambda_i^2+kappa)^2\n\nand\n\nD_i = fraclambda_i^2 B_ikappa\n\nParameters:\n\nζkT\nμkT\nκ\n\nErman B, Monnerie L. Theory of elasticity of amorphous networks: effect of constraints along chains. Macromolecules. 1989 Aug;22(8):3342-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MansouriDarijani-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.MansouriDarijani","text":"MansouriDarijani()\nMansouriDarijani(type)\n\n\nModel:\n\nW = A_1expm_1(I_1-3)-1+B_1expn_1(I_2-3)-1\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA1\nm1\nB1\nn1\n\nMansouri MR, Darijani H. Constitutive modeling of isotropic hyperelastic materials in an exponential framework using a self-contained approach. International Journal of Solids and Structures. 2014 Dec 1;51(25-26):4316-26.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedFloryErman-Tuple{}","page":"API","title":"Hyperelastics.ModifiedFloryErman","text":"ModifiedFloryErman(; ℒinv)\n\n\nModel:\n\nW = W_textArruda-Boyce+sumlimits_i=1^3fracmu2B_i+D_i\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN\nκ\n\nEdwards SF. The statistical mechanics of polymerized material. Proceedings of the Physical Society (1958-1967). 1967 Sep 1;92(1):9.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedGregory-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ModifiedGregory","text":"ModifiedGregory()\nModifiedGregory(type)\n\n\nModel:\n\nW = fracA1+alpha(I_1-3+M^2)^1+alpha+fracB1+beta(I_1-3+N^2)^1+beta\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nα\nM\nB\nβ\nN\n\nHe H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedYeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ModifiedYeoh","text":"ModifiedYeoh()\nModifiedYeoh(type)\n\n\nModel:\n\nW = C_10 * (I_1 - 3) + C_20 * (I_1 - 3)^2 + C_30 * (I_1 - 3)^3 + alpha beta * (1 - exp-beta * (I_1 - 3))\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC10\nC20\nC30\nα\nβ\n\nHe H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MooneyRivlin-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.MooneyRivlin","text":"MooneyRivlin()\nMooneyRivlin(type)\n\n\nModel:\n\nW = C_10(I_1-3)+C_01(I_2-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC01\nC10\n\nMooney M. A theory of large elastic deformation. Journal of applied physics. 1940 Sep;11(9):582-92.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.NeoHookean","page":"API","title":"Hyperelastics.NeoHookean","text":"NeoHookean()\nNeoHookean(type)\n\n\nModel:\n\nW = fracmu2(I_1-3)\n\nArguments\n\ntype = PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ: Small strain shear modulus\n\nTreloar LR. The elasticity of a network of long-chain molecules—II. Transactions of the Faraday Society. 1943;39:241-6.\n\n\n\n\n\n","category":"type"},{"location":"API/#Hyperelastics.NonaffineMicroSphere-Tuple{}","page":"API","title":"Hyperelastics.NonaffineMicroSphere","text":"NonaffineMicroSphere(; ℒinv, n)\n\n\nModel: See Paper\n\nArguments:\n\nℒinv=CohenRounded3_2(): Sets the inverse Langevin approximation used.\nn=21: Order of quadrature for spherical integration\n\nParameters:\n\nμ: Small strain shear modulus\nN: Number of chain segments\np: Non-affine stretch parameter\nU: Tube geometry parameter\nq: Non-affine tube parameter\n\nMiehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.NonaffineTube-Tuple{}","page":"API","title":"Hyperelastics.NonaffineTube","text":"NonaffineTube()\n\n\nModel:\n\nW = G_c sumlimits_i=1^3fraclambda_i^22+G_esumlimits_i=1^3lambda_i+frac1lambda_i\n\nParameters:\n\nGc\nGe\n\nRubinstein M, Panyukov S. Nonaffine deformation and elasticity of polymer networks. Macromolecules. 1997 Dec 15;30(25):8036-44.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Ogden-Tuple{}","page":"API","title":"Hyperelastics.Ogden","text":"Ogden()\n\n\nModel:\n\nW = sumlimits_i=1^Nfracmu_ialpha_i(lambda_1^alpha_i+lambda_2^alpha_i+lambda_3^alpha_i-3)\n\nParameters:\n\nμ⃗\nα⃗\n\nOgden RW. Large deformation isotropic elasticity–on the correlation of theory and experiment for incompressible rubberlike solids. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1972 Feb 1;326(1567):565-84.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.PengLandel-Tuple{}","page":"API","title":"Hyperelastics.PengLandel","text":"PengLandel()\n\n\nModel:\n\nW = Esumlimits_i=1^3bigglambda_i - 1 - log(lambda_i) - frac16log(lambda_i)^2 + frac118log(lambda_i)^3-frac1216log(lambda_i)^4bigg\n\nParameters:\n\nE\n\nPeng TJ, Landel RF. Stored energy function of rubberlike materials derived from simple tensile data. Journal of Applied Physics. 1972 Jul;43(7):3064-7.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.PucciSaccomandi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.PucciSaccomandi","text":"PucciSaccomandi()\nPucciSaccomandi(type)\n\n\nModel:\n\nW = KlogfracI_23-fracmu J_m2log1-fracI_1-3J-m\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nK\nμ\nJₘ\n\nPucci E, Saccomandi G. A note on the Gent model for rubber-like materials. Rubber chemistry and technology. 2002 Nov;75(5):839-52.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Shariff-Tuple{}","page":"API","title":"Hyperelastics.Shariff","text":"Shariff()\n\n\nModel:\n\nW = Esumlimits_i=1^3sumlimits_j=1^Nalpha_j Phi_j(lambda_i)\n\nParameters:\n\nE\nα⃗\n\nShariff MH. Strain energy function for filled and unfilled rubberlike material. Rubber chemistry and technology. 2000 Mar;73(1):1-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Swanson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Swanson","text":"Swanson()\nSwanson(type)\n\n\nModel:\n\nW = sumlimits_i=1^N frac32(fracA_i1+alpha_i(fracI_13)^1+alpha_i+fracB_i1+beta_i(fracI_23)^1+beta_i\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA⃗\nα⃗\nB⃗\nβ⃗\n\nSwanson SR. A constitutive model for high elongation elastic materials.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.TakamizawaHayashi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.TakamizawaHayashi","text":"TakamizawaHayashi()\nTakamizawaHayashi(type)\n\n\nModel:\n\nW = -clogleft1-left(fracI_1-3J_mright)^2right\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nc\nJₘ\n\nTakamizawa K, Hayashi K. Strain energy density function and uniform strain hypothesis for arterial mechanics. Journal of biomechanics. 1987 Jan 1;20(1):7-17.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ThreeChainModel-Tuple{}","page":"API","title":"Hyperelastics.ThreeChainModel","text":"ThreeChainModel(; ℒinv)\n\n\nModel:\n\nW = fracmusqrtN3sumlimits_i=1^3bigg(lambda_ibeta_i+sqrtNlogbigg(fracbeta_isinh beta_ibigg)bigg)\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ: Small strain shear modulus\nN: Square of the locking stretch of the network.\n\nJames HM, Guth E. Theory of the elastic properties of rubber. The Journal of Chemical Physics. 1943 Oct;11(10):455-81.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Tube-Tuple{}","page":"API","title":"Hyperelastics.Tube","text":"Tube()\n\n\nModel:\n\nW = sumlimits_i=1^3fracG_c2(lambda_i^2-1)+frac2Gebeta^2(lambda_i^-beta-1)\n\nParameters:\n\nGc\nGe\nβ\n\nHeinrich G, Kaliske M. Theoretical and numerical formulation of a molecular based constitutive tube-model of rubber elasticity. Computational and Theoretical Polymer Science. 1997 Jan 1;7(3-4):227-41.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ValanisLandel-Tuple{}","page":"API","title":"Hyperelastics.ValanisLandel","text":"ValanisLandel()\n\n\nModel:\n\nW = 2musumlimits_1^3(lambda_i(loglambda_i -1))\n\nParameters:\n\nμ\n\nValanis KC, Landel RF. The strain‐energy function of a hyperelastic material in terms of the extension ratios. Journal of Applied Physics. 1967 Jun;38(7):2997-3002.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.VanDerWaals-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.VanDerWaals","text":"VanDerWaals()\nVanDerWaals(type)\n\n\nModel:\n\nW = -mu(lambda_m^2-3)log(1-Theta)+Theta-frac2alpha3bigg(fracI-32bigg)^32\n\nwhere:\n\nTheta = fracbeta I_1 + (1-beta)I_2-3lambda_m^2-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nλm\nβ\nα\n\nKilian HG, Enderle HF, Unseld K. The use of the van der Waals model to elucidate universal aspects of structure-property relationships in simply extended dry and swollen rubbers. Colloid and Polymer Science. 1986 Oct;264(10):866-76. Ambacher H, Enderle HF, Kilian HG, Sauter A. Relaxation in permanent networks. InRelaxation in Polymers 1989 (pp. 209-220). Steinkopff. Kilian HG. A molecular interpretation of the parameters of the van der Waals equation of state for real networks. Polymer Bulletin. 1980 Sep;3(3):151-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.VerondaWestmann-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.VerondaWestmann","text":"VerondaWestmann()\nVerondaWestmann(type)\n\n\nModel:\n\nW = C_1 (exp(alpha(I_1 - 3)) - 1) + C_2 (I_2 - 3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nα\n\nVeronda DR, Westmann RA. Mechanical characterization of skin—finite deformations. Journal of biomechanics. 1970 Jan 1;3(1):111-24.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Vito-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Vito","text":"Vito()\nVito(type)\n\n\nModel:\n\nW = alpha (expbigg(beta (I_1 - 3)bigg) + gamma (I_2 - 3)) - 1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nγ\n\nVito R. A note on arterial elasticity. Journal of Biomechanics. 1973 Sep 1;6(5):561-4.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.YamashitaKawabata-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.YamashitaKawabata","text":"YamashitaKawabata()\nYamashitaKawabata(type)\n\n\nModel:\n\nW = C_1(I_1-3)+C_2(I_2-3)+fracC_3N+1(I_1-3)^N+1\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nN\n\nYamashita Y, Kawabata S. Approximated form of the strain energy-density function of carbon-black filled rubbers for industrial applications. Nippon Gomu Kyokaishi(Journal of the Society of Rubber Industry, Japan)(Japan). 1992;65(9):517-28.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Yeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Yeoh","text":"Yeoh()\nYeoh(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 0C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC20\nC30\n\nYeoh OH. Characterization of elastic properties of carbon-black-filled rubber vulcanizates. Rubber chemistry and technology. 1990 Nov;63(5):792-805.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.YeohFleming-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.YeohFleming","text":"YeohFleming()\nYeohFleming(type)\n\n\nModel:\n\nW = fracAB(1-exp-B(I_1-3)) - C_10(I_m-3)log1-fracI_1-3I_m-3\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nB\nC10\nIm\n\nYeoh OH, Fleming PD. A new attempt to reconcile the statistical and phenomenological theories of rubber elasticity. Journal of Polymer Science Part B: Polymer Physics. 1997 Sep 15;35(12):1919-31.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Zhao-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Zhao","text":"Zhao()\nZhao(type)\n\n\nModel:\n\nW = C_-1^1*(I_2-3)+C_1^1(I_1-3)+C_2^1(I_1^2-2I_2-3)+C_2^2(I_1^2-2I_2-3)^2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC₋₁¹\nC₁¹\nC₂¹\nC₂²\n\nZhao Z, Mu X, Du F. Modeling and verification of a new hyperelastic modelfor rubber-like materials. Mathematical Problems in Engineering. 2019 May 22019.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ZunigaBeatty-Tuple{}","page":"API","title":"Hyperelastics.ZunigaBeatty","text":"ZunigaBeatty(; ℒinv)\n\n\nModel:\n\nW = sqrtfracN_3+N_82N_3W_3Chain+sqrtfracI_13N_8W_8Chain\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN₃\nN₈\n\nElı́as-Zúñiga A, Beatty MF. Constitutive equations for amended non-Gaussian network models of rubber elasticity. International journal of engineering science. 2002 Dec 1;40(20):2265-94.\n\n\n\n\n\n","category":"method"},{"location":"API/#Compressible-Models","page":"API","title":"Compressible Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractCompressibleModel","category":"page"},{"location":"API/#Data-Driven-Models","page":"API","title":"Data Driven Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractDataDrivenHyperelasticModel","category":"page"},{"location":"API/#Hyperelastics.DataDrivenAverageChainBehavior-Tuple{HyperelasticUniaxialTest}","page":"API","title":"Hyperelastics.DataDrivenAverageChainBehavior","text":"DataDrivenAverageChainBehavior(data; fchain)\n\n\nModel:\n\nAdapted from the code provided in the article's supplementary material\n\nParameters:\n\nNone\n\nFields:\n\ndata: A Uniaxial Hyperelastic Test\nfchain(λch, pch): A constructor for an approximation with the form f(x, y) => f̂(x) = y\n\nAmores VJ, Benítez JM, Montáns FJ. Average-chain behavior of isotropic incompressible polymers obtained from macroscopic experimental data. A simple structure-based WYPiWYG model in Julia language. Advances in Engineering Software. 2019 Apr 1;130:41-57.\n\nAmores VJ, Benítez JM, Montáns FJ. Data-driven, structure-based hyperelastic manifolds: A macro-micro-macro approach to reverse-engineer the chain behavior and perform efficient simulations of polymers. Computers & Structures. 2020 Apr 15;231:106209.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.SussmanBathe-Tuple{HyperelasticUniaxialTest}","page":"API","title":"Hyperelastics.SussmanBathe","text":"SussmanBathe(data; interpolant, k)\n\n\nModel:\n\nSee paper\n\nParameters:\n\nNone\n\nFields:\n\ndata: Hyperelastic Uniaxial test to be used for determining the interpolation\nk: Order of the summation in the model.\ninterpolant: Function of the form, f(s, λ) which returns a function f(λ) = s\n\nSussman T, Bathe KJ. A model of incompressible isotropic hyperelastic material behavior using spline interpolations of tension–compression test data. Communications in numerical methods in engineering. 2009 Jan;25(1):53-63.\n\n\n\n\n\n","category":"method"},{"location":"API/#Helper-Functions","page":"API","title":"Helper Functions","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nOrder = [:function]","category":"page"},{"location":"API/#ContinuumMechanicsBase.CauchyStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.CauchyStressTensor","text":"CauchyStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n λ⃗::Array{R, 1},\n p;\n kwargs...\n) -> Any\n\n\nReturns the Cauchy stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.CauchyStressTensor-Union{Tuple{S}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{S}, Any}} where {T<:PrincipalValueForm, S}","page":"API","title":"ContinuumMechanicsBase.CauchyStressTensor","text":"CauchyStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{S, 2},\n p;\n kwargs...\n) -> Any\n\n\nReturns the Cauchy stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₁-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₁","text":"I₁(λ⃗)\n\n\nFirst stretch invariant - Currently requires the addition of 5 times the machine precision to allow AD to work correctly\n\nI_1(veclambda) = lambda_1^2+lambda_2^2+lambda_3^2 + 5varepsilon\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₂-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₂","text":"I₂(λ⃗)\n\n\nSecond Stretch invariant\n\nI_2(veclambda) = lambda_1^-2+lambda_2^-2+lambda_3^-2\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₃-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₃","text":"I₃(λ⃗)\n\n\nThird Stretch invariant\n\nI_3(veclambda) = (lambda_1lambda_2lambda_3)^2\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.J-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.J","text":"J(λ⃗)\n\n\nVolumetric Stretch\n\nJ(veclambda) = lambda_1lambda_2lambda_3\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor","text":"SecondPiolaKirchoffStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{R, 2},\n p;\n kwargs...\n) -> Any\n\n\nReturns the second PK stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor","text":"SecondPiolaKirchoffStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n λ⃗::Array{R, 1},\n p;\n ad_type,\n kwargs...\n) -> Any\n\n\nReturns the second PK stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.StrainEnergyDensity-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.StrainEnergyDensity","text":"StrainEnergyDensity(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{R, 2},\n p\n) -> Any\n\n\nReturns a function for the strain energy density function for the hyperelastic model based on calculating the principal stretches of the deformation gradient, F. The eigen values are found by the following procedure:\n\nC = F^T cdot F\na = transpose(eigvecs(C))\nC^ast = (U^ast)^2 = a^T cdot C cdot a\nveclambda = diag(U)\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.StrainEnergyDensity-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T, R}","page":"API","title":"ContinuumMechanicsBase.StrainEnergyDensity","text":"StrainEnergyDensity(\n ψ::Hyperelastics.AbstractHyperelasticModel{T},\n _::Array{R, 1},\n p\n) -> Any\n\n\nReturns the strain energy density for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HyperelasticProblem","page":"API","title":"Hyperelastics.HyperelasticProblem","text":"Creates an OptimizationProblem for use in Optimization.jl to find the optimal parameters.\n\nArguments:\n\nψ: material model to use\ntest or tests: A single or vector of hyperelastics tests to use when fitting the parameters\nu₀: Initial guess for parameters\nps: Any additional parameters for calling predict\nadb: Select differentiation type from ADTypes.jl. The type is automatically applied to the type of AD applied to the Optimization Problem also.\nloss: Loss function from LossFunctions.jl\n\n\n\n\n\n","category":"function"},{"location":"API/#Hyperelastics.Kawabata1981-Tuple{Float64}","page":"API","title":"Hyperelastics.Kawabata1981","text":"Kawabata1981(λ₁)\n\n\nBiaxial experimental data from Kawabata et al. The data is more challenging to correctly fit a hyperelastic model to and is proposed as a better test than the Treloar1944 simple tension dataset. Available data is for fixed λ₁ of:\n\n1.040\n1.060\n1.080\n1.100\n1.120\n1.14\n1.16\n1.2\n1.24\n1.3\n1.6\n1.9\n2.2\n2.5\n2.8\n3.1\n3.4\n3.7\n\nArguments:\n\nλ₁::Float64: Specification of λ₁ stretch for the data.\n\nKawabata S, Matsuda M, Tei K, Kawai H. Experimental survey of the strain energy density function of isoprene rubber vulcanizate. Macromolecules. 1981 Jan;14(1):154-62.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Treloar1944Uniaxial-Tuple{}","page":"API","title":"Hyperelastics.Treloar1944Uniaxial","text":"Treloar1944Uniaxial()\n\n\nUniaxial data for tension of 8% S Rubber at 20C from Fig 3 of Treloar 1944. This is commonly used for testing hyperelastic models.\n\nTreloar LR. Stress-strain data for vulcanized rubber under various types of deformation. Rubber Chemistry and Technology. 1944 Dec;17(4):813-25.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.parameter_bounds-Tuple{Hyperelastics.AbstractHyperelasticModel, Hyperelastics.AbstractHyperelasticTest}","page":"API","title":"Hyperelastics.parameter_bounds","text":"parameter_bounds(\n _::Hyperelastics.AbstractHyperelasticModel,\n _::Hyperelastics.AbstractHyperelasticTest\n) -> NamedTuple{(:lb, :ub), _A} where _A<:Tuple{NamedTuple{(:G₀, :Iₘ), _A} where _A<:Tuple{Float64, Any}, Nothing}\n\n\nReturns a tuple of the parameter bounds provided the experimental data and model\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\ntest or tests: The test or vector of tests to use in finding the parameter bounds.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.parameters-Tuple{Hyperelastics.AbstractHyperelasticModel}","page":"API","title":"Hyperelastics.parameters","text":"parameters(\n ψ::Hyperelastics.AbstractHyperelasticModel\n) -> Tuple{Symbol, Symbol}\n\n\nReturns a tuple of the parameters required for the model\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastics model\n\n\n\n\n\n","category":"method"},{"location":"API/#Miscellaneous","page":"API","title":"Miscellaneous","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nOrder = [:module, :constant, :type, :macro]","category":"page"},{"location":"API/#Hyperelastics.Hyperelastics","page":"API","title":"Hyperelastics.Hyperelastics","text":"Hyperelastics\n\n(Image: Stable) (Image: Dev) (Image: codecov) A hyperelastic model library and fitting toolkit developed by TRACER Lab at Liberty University. A constructor is provided for Optimization.jl for parameter fitting based on experimental data.\n\nCitations\n\nAll relevant citations are located in CITATIONS.bib\n\n\n\n\n\n","category":"module"},{"location":"API/","page":"API","title":"API","text":"","category":"page"}] +[{"location":"example/#Package-Imports","page":"Example","title":"Package Imports","text":"","category":"section"},{"location":"example/","page":"Example","title":"Example","text":"using Hyperelastics\nusing Optimization, OptimizationOptimJL\nusing ComponentArrays: ComponentVector\nusing ForwardDiff\nusing CairoMakie, MakiePublication\nset_theme!(theme_web(width = 800))","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"For commonly used datasets in hyperelastic modelling, such as the Treloar1944Uniaxial data, functions are available for getting the datasets:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"f = Figure()\nax = Makie.Axis(f[1,1])\ntreloar_data = Treloar1944Uniaxial()\nscatter!(ax, \n getindex.(treloar_data.data.λ, 1), \n getindex.(treloar_data.data.s, 1), \n label = \"Treloar 1944 Experimental\",\n color = :black\n)\naxislegend(position = :lt)\nsave(\"treloar_data.png\", f)","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"Multiple dispatch is used on the corresponding function to calculate the values. Based on the model passed to the function, the correct method will be used in the calculation. StrainEnergyDensity, SecondPiolaKirchoffStressTensor, and CauchyStressTensor accept the deformation state as either the principal components in a vector, [λ₁, λ₂, λ₃] or as the deformation gradient matrix, Fᵢⱼ. The returned value matches the type of the input. Parameters are accessed by field allowing for structs, NamedTuples, or other field-based data-types such as those in ComponentArrays.jl and LabelledArrays.jl. For example, the NeoHookean model is accessed with:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"ψ = NeoHookean()\nλ⃗ = [2.0, sqrt(1/2), sqrt(1/2)]\np = (μ = 10.0, )\nW = StrainEnergyDensity(ψ, λ⃗, p)\nreturn W # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"or","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"F = rand(3,3)\np = (μ = 20.0, )\nW = StrainEnergyDensity(ψ, F, p)\nreturn W # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"A method for creating an OptimizationProblem compatible with Optimization.jl is provided. To fit the NeoHookean model to the Treloar data previously loaded, an additional field-indexed array is used as the initial guess to HyperelasticProblem. It is recommendedto use ComponentArrays.jl for optimization of model parameters.","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"prob = HyperelasticProblem(ψ, treloar_data, ComponentVector(μ = 0.2), ad_type = AutoForwardDiff())\nsol = solve(prob, LBFGS())\nreturn sol # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"For fiting multiple models to the same dataset, ","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"models = Dict(\n Gent => ComponentVector(μ=240e-3, Jₘ=80.0),\n EdwardVilgis => ComponentVector(Ns=0.10, Nc=0.20, α=0.001, η=0.001),\n NeoHookean => ComponentVector(μ=200e-3),\n NonaffineMicroSphere => ComponentVector(μ=0.292, N=22.5, p=1.471, U=0.744, q=0.1086),\n Beda => ComponentVector(C1=0.1237, C2=0.0424, C3=7.84e-5, K1=0.0168, α=0.9, β=0.68, ζ=3.015)\n)\n\nsol = Dict{DataType, SciMLSolution}()\nfor (ψ, p₀) in models\n HEProblem = HyperelasticProblem(ψ(), treloar_data, p₀, ad_type = AutoForwardDiff())\n sol[ψ] = solve(HEProblem, NelderMead())\nend\nreturn sol # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"To predict the reponse of a model to a proivded dataset and parameters, a predict function is provided:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"f = Figure()\nax = Makie.Axis(f[1,1])\nfor (ψ, p) in sol\n pred = predict(ψ(), treloar_data, p.u)\n lines!(ax, getindex.(pred.data.λ, 1), getindex.(pred.data.s, 1), label=string(ψ))\nend\nscatter!(ax, getindex.(treloar_data.data.λ, 1), getindex.(treloar_data.data.s, 1), label = \"Treloar 1944 Experimental\", color = :black)\naxislegend(position = :lt)\nsave(\"treloar_data_fits.png\", f) # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"While the majority of the models provided by Hyperelastics.jl are based on closed form strain energy density functions, a selection of data-driven models are proivded. For example, the SussmanBathe model is created with:","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"using DataInterpolations\nψ = SussmanBathe(treloar_data, k=4, interpolant = QuadraticSpline)\nλ₁ = range(extrema(getindex.(treloar_data.data.λ, 1))..., length = 100)\nuniaxial_prediction = HyperelasticUniaxialTest(λ₁, name = \"Prediction\")\npred = predict(ψ, uniaxial_prediction, [])\nλ₁ = getindex.(treloar_data.data.λ, 1)\ns₁ = getindex.(treloar_data.data.s, 1)\nλ̂₁ = getindex.(pred.data.λ, 1)\nŝ₁ = getindex.(pred.data.s, 1)\n\n\nf, ax, p = lines( \n λ̂₁, \n ŝ₁, \n label = \"Sussman-Bathe Approximation\"\n)\n\nscatter!(\n ax,\n λ₁, \n s₁, \n label = \"Treloar 1944 Experimental\",\n color = :black\n )\naxislegend(position = :lt)\nsave(\"sussman_bathe.png\", f) # hide","category":"page"},{"location":"example/","page":"Example","title":"Example","text":"(Image: )","category":"page"},{"location":"","page":"Home","title":"Home","text":"CurrentModule = Hyperelastics","category":"page"},{"location":"#Hyperelastics","page":"Home","title":"Hyperelastics","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"Hyperelastics.jl relies on ContinuumMechanicsBase.jl for the definitions of key continuum terms. Please cite the package if you use it in your work.","category":"page"},{"location":"API/","page":"API","title":"API","text":"CurrentModule = Hyperelastics","category":"page"},{"location":"API/#API-Reference","page":"API","title":"API Reference","text":"","category":"section"},{"location":"API/#Incompressible-Models","page":"API","title":"Incompressible Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractIncompressibleModel","category":"page"},{"location":"API/#Hyperelastics.ABGI-Tuple{}","page":"API","title":"Hyperelastics.ABGI","text":"ABGI(; ℒinv)\n\n\nModel:\n\nW = W_Arruda-Boyce + fracG_en left(sum_i=1^3lambda_i^n-3right)\n\nArguments:\n\nℒinv = TreloarApproximation(): Sets the inverse Langevin approxamationused (default = TreloarApproximation())\n\nParameters:\n\nμ\nN\nGe\nn\n\nMeissner B, Matějka L. A Langevin-elasticity-theory-based constitutiveequation for rubberlike networks and its comparison with biaxialstress–strain data. Part I. Polymer. 2003 Jul 1;44(16):4599-610.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.AffineMicroSphere-Tuple{}","page":"API","title":"Hyperelastics.AffineMicroSphere","text":"AffineMicroSphere(; ℒinv, n)\n\n\nModel:\n\nSee Paper\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\nn::Int = 21: Number of quadrature points for the spherical integration\n\nParameters:\n\nμ\nN\n\nMiehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Alexander-Tuple{}","page":"API","title":"Hyperelastics.Alexander","text":"Alexander()\n\n\nModel:\n\nW = fracC_1 sqrtpitexterfibig(sqrtk(I_1-3)big)2sqrtk+C_2logfracI_2-3+gammagamma+C_3(I_2-3)\n\nParameters:\n\nμ\nC₁\nC₂\nC₃\nk\nγ\n\nAlexander H. A constitutive relation for rubber-like materials. International Journal of Engineering Science. 1968 Sep 1;6(9):549-63.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Amin-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Amin","text":"Amin()\nAmin(type)\n\n\nModel:\n\nW = C_1 (I_1 - 3) + fracC_2N + 1 (I_1 - 3)^N + 1 + fracC_3M + 1 (I_1 - 3)^M + 1 + C_4 (I_2 - 3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nC4\nN\nM\n\nAmin AF, Wiraguna SI, Bhuiyan AR, Okui Y. Hyperelasticity model for finite element analysis of natural and high damping rubbers in compression and shear. Journal of engineering mechanics. 2006 Jan;132(1):54-64.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.AnsarriBenam-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.AnsarriBenam","text":"AnsarriBenam()\nAnsarriBenam(type; n)\n\n\nModel:\n\nW = frac3(n-1)2nmu N leftfrac13N(n-1)(I_1 - 3) - logfracI_1 - 3N3 -3N right\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used (default = ``)\nn::Int=3: Sets the order of the model\n\nParameters:\n\nμ\nn\nN\n\nAnssari-Benam A. On a new class of non-Gaussian molecular-based constitutive models with limiting chain extensibility for incompressible rubber-like materials. Mathematics and Mechanics of Solids. 2021 Nov;26(11):1660-74.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ArmanNarooei-Tuple{}","page":"API","title":"Hyperelastics.ArmanNarooei","text":"ArmanNarooei()\n\n\nModel:\n\nW = sumlimits_i=1^N A_ibigexpm_i(lambda_1^alpha_i+lambda_2^alpha_i+lambda_3^alpha_i-3)-1 + B_ibigexpn_i(lambda_1^-beta_i+lambda_2^-beta_i+lambda_3^-beta_i-3)-1\n\nParameters:\n\nA⃗\nB⃗\nm⃗\nn⃗\nα⃗\nβ⃗\n\nNarooei K, Arman M. Modification of exponential based hyperelastic strain energy to consider free stress initial configuration and Constitutive modeling. Journal of Computational Applied Mechanics. 2018 Jun 1;49(1):189-96.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ArrudaBoyce-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ArrudaBoyce","text":"ArrudaBoyce()\nArrudaBoyce(type; ℒinv)\n\n\nModel:\n\nW = mu N left( fraclambda_chainsqrtN beta + logleft(fracbetasinhbetaright) right)\n\nwhere\n\nbeta = mathcalL^-1left(fraclambda_chainsqrtNright)\n\nand\n\nlambda_chain = sqrtfracI_13\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ: Small strain shear modulus\nN: Square of the locking stretch of the network.\n\nArruda EM, Boyce MC. A three-dimensional constitutive model for the large stretch behavior of rubber elastic materials. Journal of the Mechanics and Physics of Solids. 1993 Feb 1;41(2):389-412.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Attard-Tuple{}","page":"API","title":"Hyperelastics.Attard","text":"Attard()\n\n\nModel:\n\nW = sumlimits_i=1^NfracA_i2i(lambda_1^2i+lambda_2^2i+lambda_3^2i-3) + fracB_i2i(lambda_1^-2i+lambda_2^-2i+lambda_3^-2i-3)\n\nParameters:\n\nA⃗\nB⃗\n\nAttard MM, Hunt GW. Hyperelastic constitutive modeling under finite strain. International Journal of Solids and Structures. 2004 Sep 1;41(18-19):5327-50.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.BahremanDarijani-Union{Tuple{}, Tuple{T}} where T<:PrincipalValueForm","page":"API","title":"Hyperelastics.BahremanDarijani","text":"BahremanDarijani()\nBahremanDarijani(type)\n\n\nModel:\n\nW = sumlimits_i = 13sumlimits_j=0^N A_j (lambda_i^m_j-1) + B_j(lambda_i^-n_j-1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nA2\nB2\nA4\nA6\n\nBahreman M, Darijani H. New polynomial strain energy function; application to rubbery circular cylinders under finite extension and torsion. Journal of Applied Polymer Science. 2015 Apr 5;132(13).\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Beatty-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Beatty","text":"Beatty()\nBeatty(type)\n\n\nModel:\n\nW = -fracG_0 I_m(I_m-3)2(2I_m-3)logbigg(frac1-fracI_1-3I_m-31+fracI_1-3I_m bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nG₀\nIₘ\n\nBeatty MF. On constitutive models for limited elastic, molecular based materials. Mathematics and mechanics of solids. 2008 Jul;13(5):375-87.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Bechir4Term-Tuple{}","page":"API","title":"Hyperelastics.Bechir4Term","text":"Bechir4Term()\n\n\nModel:\n\nW = C_1^1(I_1-3)+sumlimits_n=1^2sumlimits_r=1^2C_n^r(lambda_1^2n+lambda_2^2n+lambda_3^2n-3)^r\n\nParameters:\n\nC11\nC12\nC21\nC22\n\nKhajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.BechirChevalier-Tuple{}","page":"API","title":"Hyperelastics.BechirChevalier","text":"BechirChevalier(; ℒinv)\n\n\nModel:\n\nW = W_3Chain(mu_f N_3)+W_8Chain(fracmu_c3 N_8)\n\nwhere:\n\nmu_f = rhosqrtfracI_13N_8\n\nmu_c = bigg(1-fracetaalphasqrtN_3bigg)mu_0\n\nalpha = maxlambda_1 lambda_2 lambda_3\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ₀\nη\nρ\nN₃\nN₈\n\nBechir H, Chevalier L, Idjeri M. A three-dimensional network model for rubber elasticity: The effect of local entanglements constraints. International journal of engineering science. 2010 Mar 1;48(3):265-74.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Beda-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Beda","text":"Beda()\nBeda(type)\n\n\nModel:\n\nW = fracC_1alpha(I_1-3)^alpha+C_2(I_1-3)+fracC_3zeta(I_1-3)^zeta+fracK_1beta(I_2-3)^beta\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nK1\nα\nβ\nζ\n\nBeda T. Reconciling the fundamental phenomenological expression of the strain energy of rubber with established experimental facts. Journal of Polymer Science Part B: Polymer Physics. 2005 Jan 15;43(2):125-34.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Biderman-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Biderman","text":"Biderman()\nBiderman(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC20\nC30\n\nBiderman VL. Calculation of rubber parts. Rascheti na prochnost. 1958;40.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Bootstrapped8Chain-Tuple{}","page":"API","title":"Hyperelastics.Bootstrapped8Chain","text":"Bootstrapped8Chain(; ℒinv)\n\n\nModel:\n\nW = W_8(fracsumlambdasqrt3N-fraclambda_chainsqrtN)+W_8(fraclambda_chainsqrtN)\n\nwhere:\n\nW_8(x) = mu N (x mathcalL^-1(x) + logfracmathcalL^-1(x)sinhmathcalL^-1(x))\n\nand\n\nlambda_chain = sqrtfracI_13\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approximation used.\n\nParameters:\n\nμ\nN\n\nMiroshnychenko D, Green WA, Turner DM. Composite and filament models for the mechanical behaviour of elastomeric materials. Journal of the Mechanics and Physics of Solids. 2005 Apr 1;53(4):748-70. Miroshnychenko D, Green WA. Heuristic search for a predictive strain-energy function in nonlinear elasticity. International Journal of Solids and Structures. 2009 Jan 15;46(2):271-86.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Carroll-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Carroll","text":"Carroll()\nCarroll(type)\n\n\nModel:\n\nW = AI_1+BI_1^4+CsqrtI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nA\nB\nC\n\nCarroll M. A strain energy function for vulcanized rubbers. Journal of Elasticity. 2011 Apr;103(2):173-87.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ChevalierMarco-Union{Tuple{}, Tuple{T}} where T<:PrincipalValueForm","page":"API","title":"Hyperelastics.ChevalierMarco","text":"ChevalierMarco()\nChevalierMarco()\n\n\nModel:\n\nW = intlimits_3^I_1(veclambda) expbigg(sumlimits_i=0^Na_i(I_1-3)^ibigg)textdI_1+ intlimits_3^I_2(veclambda) sumlimits_i=0^nfracb_iI_2^itextdI_2\n\nmathbfS = 2(I-fracpartial Wpartial I_1 - C^-2fracpartial Wpartial I_2)\n\nmathbfsigma = mathbfF cdot mathbfS\n\nParameters:\n\na⃗\nb⃗\n\nNote:\n\nModel is not compatible with AD. A method for accessing the Second Piola Kirchoff Tensor and Cauchy Stress Tensor have been implemented.\n\nChevalier L, Marco Y. Tools for multiaxial validation of behavior laws chosen for modeling hyper‐elasticity of rubber‐like materials. Polymer Engineering & Science. 2002 Feb;42(2):280-98.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ConstrainedJunction-Tuple{}","page":"API","title":"Hyperelastics.ConstrainedJunction","text":"ConstrainedJunction()\n\n\nModel:\n\nW = G_c (I_1-3)+ fracnu k T2left(sumlimits_i=1^3kappafraclambda_i-1lambda_i^2+kappa+logfraclambda_i^2+kappa1+kappa-loglambda_i^2right)\n\nParameters:\n\nGc\nνkT\nκ\n\nFlory PJ, Erman B. Theory of elasticity of polymer networks. 3. Macromolecules. 1982 May;15(3):800-6. Erman B, Flory PJ. Relationships between stress, strain, and molecular constitution of polymer networks. Comparison of theory with experiments. Macromolecules. 1982 May;15(3):806-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ContinuumHybrid-Tuple{}","page":"API","title":"Hyperelastics.ContinuumHybrid","text":"ContinuumHybrid()\n\n\nModel:\n\nW = K_1(I_1-3)+K_2logfracI_23+fracmualpha(lambda_1^alpha+lambda_2^alpha+lambda^alpha-3)\n\nParameters:\n\nK₁\nK₂\nα\nμ\n\nBeda T, Chevalier Y. Hybrid continuum model for large elastic deformation of rubber. Journal of applied physics. 2003 Aug 15;94(4):2701-6.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.DavidsonGoulbourne-Tuple{}","page":"API","title":"Hyperelastics.DavidsonGoulbourne","text":"DavidsonGoulbourne()\n\n\nModel:\n\nW = fracG_c I_16-G_clambda_maxlogleft(3lambda_max^2-I_1right)+G_esumlimits_i=1^3left(lambda_i+frac1lambda_iright)\n\nParameters:\n\nGc\nGe\nλmax\n\nDavidson JD, Goulbourne NC. A nonaffine network model for elastomers undergoing finite deformations. Journal of the Mechanics and Physics of Solids. 2013 Aug 1;61(8):1784-97.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.DavisDeThomas-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.DavisDeThomas","text":"DavisDeThomas()\nDavisDeThomas(type)\n\n\nModel:\n\nW = fracA2(1-fracn2)(I_1-3+C^2)^1-fracn2+k(I_1-3)^2\n\nArguments\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nn\nC\nk\n\nDavies CK, De DK, Thomas AG. Characterization of the behavior of rubber for engineering design purposes. 1. Stress-strain relations. Rubber chemistry and technology. 1994 Sep;67(4):716-28.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.EdwardVilgis-Tuple{}","page":"API","title":"Hyperelastics.EdwardVilgis","text":"EdwardVilgis()\n\n\nModel:\n\nW = frac12N_CBiggfrac(1-alpha^2)I_11-alpha^2I_1+log(1-alpha^2I_1)Bigg+frac12N_SBiggsum_i=1^3Bigfrac(1+eta)(1-alpha^2)lambda_i^2( 1+etalambda_i^2)(1-alpha^2I_1)+log(1+etalambda_i^2)Big+log(1-alpha^2I_1)Bigg\n\nParameters:\n\nNs: Number of sliplinks\nNc: Number of crosslinks\nα: A measure of chain inextensibility\nη: A measure of the amount of chain slippage\n\nNote:\n\nSince α and η result from the same mechanism, they should be of approximately the same order of magnitude. Large differences between the two may indicate an issue with the optimizer or initial guess.\n\nEdwards SF, Vilgis T. The effect of entanglements in rubber elasticity. Polymer. 1986 Apr 1;27(4):483-92.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ExpLn-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ExpLn","text":"ExpLn()\nExpLn(type)\n\n\nModel:\n\nW = Abiggfrac1aexp(a(I_1-3))+b(I_1-2)(1-logI_1-2)-frac1a-bbigg\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\na\nb\n\nKhajehsaeid H, Arghavani J, Naghdabadi R. A hyperelastic constitutive model for rubber-like materials. European Journal of Mechanics-A/Solids. 2013 Mar 1;38:144-51.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ExtendedTubeModel-Tuple{}","page":"API","title":"Hyperelastics.ExtendedTubeModel","text":"ExtendedTubeModel()\n\n\nModel:\n\nW = fracG_c2biggfrac(1-delta^2)(I_1-3)1-delta^2(I_1-3)+log(1-delta^2(I_1-3))bigg+frac2G_ebeta^2sumlimits_i=1^3(lambda_i^-beta-1)\n\nParameters:\n\nGc\nGe\nδ\nβ\n\nKaliske M, Heinrich G. An extended tube-model for rubber elasticity: statistical-mechanical theory and finite element implementation. Rubber Chemistry and Technology. 1999 Sep;72(4):602-32.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.FullNetwork-Tuple{}","page":"API","title":"Hyperelastics.FullNetwork","text":"FullNetwork(; ℒinv)\n\n\nModel:\n\nW = (1-rho)W_3Chain+rho W_8chain\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN\nρ\n\nTreloar LR, Riding G. A non-Gaussian theory for rubber in biaxial strain. I. Mechanical properties. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1979 Dec 31;369(1737):261-80. Wu PD, van der Giessen E. On improved 3-D non-Gaussian network models for rubber elasticity. Mechanics research communications. 1992 Sep 1;19(5):427-33. Wu PD, Van Der Giessen E. On improved network models for rubber elasticity and their applications to orientation hardening in glassy polymers. Journal of the Mechanics and Physics of Solids. 1993 Mar 1;41(3):427-56.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.FungDemiray-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.FungDemiray","text":"FungDemiray()\nFungDemiray(type)\n\n\nModel:\n\nW = fracmu2 * b (exp(b(I_1 - 3)) - 1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nb\n\nFung YC. Elasticity of soft tissues in simple elongation. American Journal of Physiology-Legacy Content. 1967 Dec 1;213(6):1532-44. Demiray H. A note on the elasticity of soft biological tissues. Journal of biomechanics. 1972 May 1;5(3):309-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GenYeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GenYeoh","text":"GenYeoh()\nGenYeoh(type)\n\n\nModel:\n\nW = K_1 (I_1 - 3)^m + K_2 * (I_1 - 3)^p + K_3 * (I_1 - 3)^q\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nK1\nK2\nK3\nm\np\nq\n\nHohenberger TW, Windslow RJ, Pugno NM, Busfield JJ. A constitutive model for both low and high strain nonlinearities in highly filled elastomers and implementation with user-defined material subroutines in ABAQUS. Rubber Chemistry and Technology. 2019;92(4):653-86.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GeneralConstitutiveModel-Tuple{}","page":"API","title":"Hyperelastics.GeneralConstitutiveModel","text":"GeneralConstitutiveModel()\n\n\nModel:\n\nW = G_c N logbigg(frac3N+frac12I_13N-I_1bigg)+G_esumlimits_i=1^3frac1lambda_I\n\nParameters:\n\nGc\nGe\nN\n\nXiang Y, Zhong D, Wang P, Mao G, Yu H, Qu S. A general constitutive model of soft elastomers. Journal of the Mechanics and Physics of Solids. 2018 Aug 1;117:110-22.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Gent-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Gent","text":"Gent()\nGent(type)\n\n\nModel:\n\nW = -fracmu J_m2logbigg(1-fracI_1-3J_mbigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ: Small strain shear modulus\nJₘ: Limiting stretch invariant\n\nGent AN. A new constitutive relation for rubber. Rubber chemistry and technology. 1996 Mar;69(1):59-61.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GentThomas-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GentThomas","text":"GentThomas()\nGentThomas(type)\n\n\nModel:\n\nW = C_1(I_1-3)+C_2log(fracI_23)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParamters:\n\nC1\nC2\n\nGent AN, Thomas AG. Forms for the stored (strain) energy function for vulcanized rubber. Journal of Polymer Science. 1958 Apr;28(118):625-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.GornetDesmorat-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.GornetDesmorat","text":"GornetDesmorat()\nGornetDesmorat(type)\n\n\nModel:\n\nW = h_1intexph_3(I_1-3)^2textdI_1+3h_2intfrac1sqrtI_2textdI_2 = frach_1 sqrtpi texterfi(sqrth_3(I_1-3)^2)2sqrth_3+6h_2sqrtI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nh₁\nh₂\nh₃\n\nNotes:\n\nThe differential form was original form and the closed form SEF was determine via symbolic integration in Mathematica. The model is not compatible with AD and has methods for the Second Piola Kirchoff Stress Tensor and Cauchy Stress Tensor implemented.\n\nGornet L, Marckmann G, Desmorat R, Charrier P. A new isotropic hyperelastic strain energy function in terms of invariants and its derivation into a pseudo-elastic model for Mullins effect: application to finite element analysis. Constitutive Models for Rubbers VII. 2012:265-71.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Gregory-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Gregory","text":"Gregory()\nGregory(type)\n\n\nModel:\n\nW = fracA2-n(I_1-3+C^2)^1-fracn2+fracB2+m(I_1-3+C^2)^1+fracm2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nB\nC\nm\nn\n\nGregory IH, Muhr AH, Stephens IJ. Engineering applications of rubber in simple extension. Plastics rubber and composites processing and applications. 1997;26(3):118-22.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HainesWilson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HainesWilson","text":"HainesWilson()\nHainesWilson(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 2C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC02\nC20\nC30\n\nHaines DW, Wilson WD. Strain-energy density function for rubberlike materials. Journal of the Mechanics and Physics of Solids. 1979 Aug 1;27(4):345-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HartSmith-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HartSmith","text":"HartSmith()\nHartSmith(type)\n\n\nModel:\n\nW = fracGexp(-9k_1+k_1I_1)k_1+Gk_2logI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nG\nk₁\nk₂\n\nHart-Smith LJ. Elasticity parameters for finite deformations of rubber-like materials. Zeitschrift für angewandte Mathematik und Physik ZAMP. 1966 Sep;17(5):608-26.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HartmannNeff-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HartmannNeff","text":"HartmannNeff()\nHartmannNeff(type)\n\n\nModel:\n\nW = sumlimits_ij=0^MNC_i0(I_1-3)^i -3sqrt3^j+alpha(I_1-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nα\nCi⃗0\nC0j⃗\n\nHartmann S, Neff P. Polyconvexity of generalized polynomial-type hyperelastic strain energy functions for near-incompressibility. International journal of solids and structures. 2003 Jun 1;40(11):2767-91.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HauptSedlan-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HauptSedlan","text":"HauptSedlan()\nHauptSedlan(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 2C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC02\nC30\n\nHaupt P, Sedlan K. Viscoplasticity of elastomeric materials: experimental facts and constitutive modelling. Archive of Applied Mechanics. 2001 Mar;71(2):89-109.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HorganMurphy-Tuple{}","page":"API","title":"Hyperelastics.HorganMurphy","text":"HorganMurphy()\n\n\nModel:\n\nW = -frac2mu J_mc^2logleft(1-fraclambda_1^c+lambda_2^c+lambda_3^c-3J_mright)\n\nParameters:\n\nμ\nJₘ\nc\n\nHorgan CO, Murphy JG. Limiting chain extensibility constitutive models of Valanis–Landel type. Journal of Elasticity. 2007 Feb;86(2):101-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HorganSaccomandi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HorganSaccomandi","text":"HorganSaccomandi()\nHorganSaccomandi(type)\n\n\nModel:\n\nW = -fracmu J2logbigg(fracJ^3-J^2I_1+JI_2-1(J-1)^3bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nJ\n\nHorgan CO, Saccomandi G. Constitutive models for compressible nonlinearly elastic materials with limiting chain extensibility. Journal of Elasticity. 2004 Nov;77(2):123-38.> Horgan CO, Saccomandi G. Constitutive models for atactic elastomers. InWaves And Stability In Continuous Media 2004 (pp. 281-294).\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HossMarczakI-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HossMarczakI","text":"HossMarczakI()\nHossMarczakI(type)\n\n\nModel:\n\nW = fracalphabeta(1-exp-beta(I_1-3))+fracmu2bbigg((1+fracbn(I_1-3))^n -1bigg)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nμ\nb\nn\n\nNote:\n\nThe authors suggested this model for low strains.\n\nHoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HossMarczakII-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.HossMarczakII","text":"HossMarczakII()\nHossMarczakII(type)\n\n\nModel:\n\nW = fracalphabeta(1-exp-beta(I_1-3))+fracmu2bbigg((1+fracbn(I_1-3))^n -1bigg)+C_2log(fracI_23)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nμ\nb\nn\nC2\n\nNote:\n\nThe authors suggests this model for high strains.\n\nHoss L, Marczak RJ. A new constitutive model for rubber-like materials. Mecánica Computacional. 2010;29(28):2759-73.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Isihara-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Isihara","text":"Isihara()\nIsihara(type)\n\n\nModel:\n\nW = sumlimits_ij=0^2 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC20\nC01\n\nIsihara A, Hashitsume N, Tatibana M. Statistical theory of rubber‐like elasticity. IV.(two‐dimensional stretching). The Journal of Chemical Physics. 1951 Dec;19(12):1508-12.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.JamesGreenSimpson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.JamesGreenSimpson","text":"JamesGreenSimpson()\nJamesGreenSimpson(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 1C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC11\nC20\nC30\n\nJames AG, Green A, Simpson GM. Strain energy functions of rubber. I. Characterization of gum vulcanizates. Journal of Applied Polymer Science. 1975 Jul;19(7):2033-58.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.KhiemItskov-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.KhiemItskov","text":"KhiemItskov()\nKhiemItskov(type)\n\n\nModel:\n\nW = mu_c kappa n logbigg(fracsin(fracpisqrtn)(fracI_13)^fracq2sin(fracpisqrtn(fracI_13)^fracq2bigg)+mu_tbigfracI_23^12 - 1 big\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμcκ\nn\nq\nμt\n\nKhiêm VN, Itskov M. Analytical network-averaging of the tube model:: Rubber elasticity. Journal of the Mechanics and Physics of Solids. 2016 Oct 1;95:254-69.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Knowles-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Knowles","text":"Knowles()\nKnowles(type)\n\n\nModel:\n\nW = fracmu2bleft(left(1+fracbn(I_1-3)right)^n-1right)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nb\nn\n\nKnowles JK. The finite anti-plane shear field near the tip of a crack for a class of incompressible elastic solids. International Journal of Fracture. 1977 Oct;13(5):611-39.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.LambertDianiRey-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.LambertDianiRey","text":"LambertDianiRey()\nLambertDianiRey(type)\n\n\nModel:\n\nW = intlimits_3^I_1expbigg(sumlimits_i=0^na_i(I_1-3)^ibigg)textdI_1+intlimits_3^I_2sumlimits_j=0^mb_ilog(I_2)^itextdI_2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\na⃗\nb⃗\n\nLambert-Diani J, Rey C. New phenomenological behavior laws for rubbers and thermoplastic elastomers. European Journal of Mechanics-A/Solids. 1999 Nov 1;18(6):1027-43.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Lim-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Lim","text":"Lim()\nLim(type; ℒinv)\n\n\nModel:\n\nW = left(1-fleft(fracI_1-3hatI_1-3right)right)W_NeoHookean(μ₁)+fW_ArrudaBoyce(μ₂ N)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ₁\nμ₂\nN\nÎ₁\n\nLim GT. Scratch behavior of polymers. Texas A&M University; 2005.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Lion-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Lion","text":"Lion()\nLion(type)\n\n\nModel:\n\nW = sumlimits_ij=0^51C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC01\nC50\n\nLion A. On the large deformation behaviour of reinforced rubber at different temperatures. Journal of the Mechanics and Physics of Solids. 1997 Nov 1;45(11-12):1805-34.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.LopezPamies-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.LopezPamies","text":"LopezPamies()\nLopezPamies(type)\n\n\nModel:\n\nW = frac3^1 - alpha_i2alpha_i mu_i (I_1^alpha_i - 3^alpha_i)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα⃗\nμ⃗\n\nLopez-Pamies O. A new I1-based hyperelastic model for rubber elastic materials. Comptes Rendus Mecanique. 2010 Jan 1;338(1):3-11.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MCC-Tuple{}","page":"API","title":"Hyperelastics.MCC","text":"MCC()\n\n\nModel:\n\nW = frac12zeta k T sumlimits_i=1^3(lambda_i^2-1)+frac12mu k Tsumlimits_i=1^3B_i+D_i-log(1+B_i)-log(1+D_i)\n\nwhere:\n\nB_i = frackappa^2(lambda_i^2-1)(lambda_i^2+kappa)^2\n\nand\n\nD_i = fraclambda_i^2 B_ikappa\n\nParameters:\n\nζkT\nμkT\nκ\n\nErman B, Monnerie L. Theory of elasticity of amorphous networks: effect of constraints along chains. Macromolecules. 1989 Aug;22(8):3342-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MansouriDarijani-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.MansouriDarijani","text":"MansouriDarijani()\nMansouriDarijani(type)\n\n\nModel:\n\nW = A_1expm_1(I_1-3)-1+B_1expn_1(I_2-3)-1\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA1\nm1\nB1\nn1\n\nMansouri MR, Darijani H. Constitutive modeling of isotropic hyperelastic materials in an exponential framework using a self-contained approach. International Journal of Solids and Structures. 2014 Dec 1;51(25-26):4316-26.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedFloryErman-Tuple{}","page":"API","title":"Hyperelastics.ModifiedFloryErman","text":"ModifiedFloryErman(; ℒinv)\n\n\nModel:\n\nW = W_textArruda-Boyce+sumlimits_i=1^3fracmu2B_i+D_i\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN\nκ\n\nEdwards SF. The statistical mechanics of polymerized material. Proceedings of the Physical Society (1958-1967). 1967 Sep 1;92(1):9.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedGregory-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ModifiedGregory","text":"ModifiedGregory()\nModifiedGregory(type)\n\n\nModel:\n\nW = fracA1+alpha(I_1-3+M^2)^1+alpha+fracB1+beta(I_1-3+N^2)^1+beta\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nα\nM\nB\nβ\nN\n\nHe H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ModifiedYeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.ModifiedYeoh","text":"ModifiedYeoh()\nModifiedYeoh(type)\n\n\nModel:\n\nW = C_10 * (I_1 - 3) + C_20 * (I_1 - 3)^2 + C_30 * (I_1 - 3)^3 + alpha beta * (1 - exp-beta * (I_1 - 3))\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC10\nC20\nC30\nα\nβ\n\nHe H, Zhang Q, Zhang Y, Chen J, Zhang L, Li F. A comparative study of 85 hyperelastic constitutive models for both unfilled rubber and highly filled rubber nanocomposite material. Nano Materials Science. 2021 Jul 16.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.MooneyRivlin-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.MooneyRivlin","text":"MooneyRivlin()\nMooneyRivlin(type)\n\n\nModel:\n\nW = C_10(I_1-3)+C_01(I_2-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC01\nC10\n\nMooney M. A theory of large elastic deformation. Journal of applied physics. 1940 Sep;11(9):582-92.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.NeoHookean","page":"API","title":"Hyperelastics.NeoHookean","text":"NeoHookean()\nNeoHookean(type)\n\n\nModel:\n\nW = fracmu2(I_1-3)\n\nArguments\n\ntype = PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ: Small strain shear modulus\n\nTreloar LR. The elasticity of a network of long-chain molecules—II. Transactions of the Faraday Society. 1943;39:241-6.\n\n\n\n\n\n","category":"type"},{"location":"API/#Hyperelastics.NonaffineMicroSphere-Tuple{}","page":"API","title":"Hyperelastics.NonaffineMicroSphere","text":"NonaffineMicroSphere(; ℒinv, n)\n\n\nModel: See Paper\n\nArguments:\n\nℒinv=CohenRounded3_2(): Sets the inverse Langevin approximation used.\nn=21: Order of quadrature for spherical integration\n\nParameters:\n\nμ: Small strain shear modulus\nN: Number of chain segments\np: Non-affine stretch parameter\nU: Tube geometry parameter\nq: Non-affine tube parameter\n\nMiehe C, Göktepe S, Lulei F. A micro-macro approach to rubber-like materials—part I: the non-affine micro-sphere model of rubber elasticity. Journal of the Mechanics and Physics of Solids. 2004 Nov 1;52(11):2617-60.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.NonaffineTube-Tuple{}","page":"API","title":"Hyperelastics.NonaffineTube","text":"NonaffineTube()\n\n\nModel:\n\nW = G_c sumlimits_i=1^3fraclambda_i^22+G_esumlimits_i=1^3lambda_i+frac1lambda_i\n\nParameters:\n\nGc\nGe\n\nRubinstein M, Panyukov S. Nonaffine deformation and elasticity of polymer networks. Macromolecules. 1997 Dec 15;30(25):8036-44.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Ogden-Tuple{}","page":"API","title":"Hyperelastics.Ogden","text":"Ogden()\n\n\nModel:\n\nW = sumlimits_i=1^Nfracmu_ialpha_i(lambda_1^alpha_i+lambda_2^alpha_i+lambda_3^alpha_i-3)\n\nParameters:\n\nμ⃗\nα⃗\n\nOgden RW. Large deformation isotropic elasticity–on the correlation of theory and experiment for incompressible rubberlike solids. Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences. 1972 Feb 1;326(1567):565-84.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.PengLandel-Tuple{}","page":"API","title":"Hyperelastics.PengLandel","text":"PengLandel()\n\n\nModel:\n\nW = Esumlimits_i=1^3bigglambda_i - 1 - log(lambda_i) - frac16log(lambda_i)^2 + frac118log(lambda_i)^3-frac1216log(lambda_i)^4bigg\n\nParameters:\n\nE\n\nPeng TJ, Landel RF. Stored energy function of rubberlike materials derived from simple tensile data. Journal of Applied Physics. 1972 Jul;43(7):3064-7.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.PucciSaccomandi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.PucciSaccomandi","text":"PucciSaccomandi()\nPucciSaccomandi(type)\n\n\nModel:\n\nW = KlogfracI_23-fracmu J_m2log1-fracI_1-3J-m\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nK\nμ\nJₘ\n\nPucci E, Saccomandi G. A note on the Gent model for rubber-like materials. Rubber chemistry and technology. 2002 Nov;75(5):839-52.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Shariff-Tuple{}","page":"API","title":"Hyperelastics.Shariff","text":"Shariff()\n\n\nModel:\n\nW = Esumlimits_i=1^3sumlimits_j=1^Nalpha_j Phi_j(lambda_i)\n\nParameters:\n\nE\nα⃗\n\nShariff MH. Strain energy function for filled and unfilled rubberlike material. Rubber chemistry and technology. 2000 Mar;73(1):1-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Swanson-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Swanson","text":"Swanson()\nSwanson(type)\n\n\nModel:\n\nW = sumlimits_i=1^N frac32(fracA_i1+alpha_i(fracI_13)^1+alpha_i+fracB_i1+beta_i(fracI_23)^1+beta_i\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA⃗\nα⃗\nB⃗\nβ⃗\n\nSwanson SR. A constitutive model for high elongation elastic materials.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.TakamizawaHayashi-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.TakamizawaHayashi","text":"TakamizawaHayashi()\nTakamizawaHayashi(type)\n\n\nModel:\n\nW = -clogleft1-left(fracI_1-3J_mright)^2right\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nc\nJₘ\n\nTakamizawa K, Hayashi K. Strain energy density function and uniform strain hypothesis for arterial mechanics. Journal of biomechanics. 1987 Jan 1;20(1):7-17.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ThreeChainModel-Tuple{}","page":"API","title":"Hyperelastics.ThreeChainModel","text":"ThreeChainModel(; ℒinv)\n\n\nModel:\n\nW = fracmusqrtN3sumlimits_i=1^3bigg(lambda_ibeta_i+sqrtNlogbigg(fracbeta_isinh beta_ibigg)bigg)\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ: Small strain shear modulus\nN: Square of the locking stretch of the network.\n\nJames HM, Guth E. Theory of the elastic properties of rubber. The Journal of Chemical Physics. 1943 Oct;11(10):455-81.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Tube-Tuple{}","page":"API","title":"Hyperelastics.Tube","text":"Tube()\n\n\nModel:\n\nW = sumlimits_i=1^3fracG_c2(lambda_i^2-1)+frac2Gebeta^2(lambda_i^-beta-1)\n\nParameters:\n\nGc\nGe\nβ\n\nHeinrich G, Kaliske M. Theoretical and numerical formulation of a molecular based constitutive tube-model of rubber elasticity. Computational and Theoretical Polymer Science. 1997 Jan 1;7(3-4):227-41.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ValanisLandel-Tuple{}","page":"API","title":"Hyperelastics.ValanisLandel","text":"ValanisLandel()\n\n\nModel:\n\nW = 2musumlimits_1^3(lambda_i(loglambda_i -1))\n\nParameters:\n\nμ\n\nValanis KC, Landel RF. The strain‐energy function of a hyperelastic material in terms of the extension ratios. Journal of Applied Physics. 1967 Jun;38(7):2997-3002.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.VanDerWaals-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.VanDerWaals","text":"VanDerWaals()\nVanDerWaals(type)\n\n\nModel:\n\nW = -mu(lambda_m^2-3)log(1-Theta)+Theta-frac2alpha3bigg(fracI-32bigg)^32\n\nwhere:\n\nTheta = fracbeta I_1 + (1-beta)I_2-3lambda_m^2-3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nμ\nλm\nβ\nα\n\nKilian HG, Enderle HF, Unseld K. The use of the van der Waals model to elucidate universal aspects of structure-property relationships in simply extended dry and swollen rubbers. Colloid and Polymer Science. 1986 Oct;264(10):866-76. Ambacher H, Enderle HF, Kilian HG, Sauter A. Relaxation in permanent networks. InRelaxation in Polymers 1989 (pp. 209-220). Steinkopff. Kilian HG. A molecular interpretation of the parameters of the van der Waals equation of state for real networks. Polymer Bulletin. 1980 Sep;3(3):151-8.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.VerondaWestmann-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.VerondaWestmann","text":"VerondaWestmann()\nVerondaWestmann(type)\n\n\nModel:\n\nW = C_1 (exp(alpha(I_1 - 3)) - 1) + C_2 (I_2 - 3)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nα\n\nVeronda DR, Westmann RA. Mechanical characterization of skin—finite deformations. Journal of biomechanics. 1970 Jan 1;3(1):111-24.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Vito-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Vito","text":"Vito()\nVito(type)\n\n\nModel:\n\nW = alpha (expbigg(beta (I_1 - 3)bigg) + gamma (I_2 - 3)) - 1)\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nα\nβ\nγ\n\nVito R. A note on arterial elasticity. Journal of Biomechanics. 1973 Sep 1;6(5):561-4.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.YamashitaKawabata-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.YamashitaKawabata","text":"YamashitaKawabata()\nYamashitaKawabata(type)\n\n\nModel:\n\nW = C_1(I_1-3)+C_2(I_2-3)+fracC_3N+1(I_1-3)^N+1\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nC1\nC2\nC3\nN\n\nYamashita Y, Kawabata S. Approximated form of the strain energy-density function of carbon-black filled rubbers for industrial applications. Nippon Gomu Kyokaishi(Journal of the Society of Rubber Industry, Japan)(Japan). 1992;65(9):517-28.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Yeoh-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Yeoh","text":"Yeoh()\nYeoh(type)\n\n\nModel:\n\nW = sumlimits_ij=0^3 0C_ij(I_1-3)^i(I_2-3)^j\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC10\nC20\nC30\n\nYeoh OH. Characterization of elastic properties of carbon-black-filled rubber vulcanizates. Rubber chemistry and technology. 1990 Nov;63(5):792-805.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.YeohFleming-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.YeohFleming","text":"YeohFleming()\nYeohFleming(type)\n\n\nModel:\n\nW = fracAB(1-exp-B(I_1-3)) - C_10(I_m-3)log1-fracI_1-3I_m-3\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or `InvariantForm()\n\nParameters:\n\nA\nB\nC10\nIm\n\nYeoh OH, Fleming PD. A new attempt to reconcile the statistical and phenomenological theories of rubber elasticity. Journal of Polymer Science Part B: Polymer Physics. 1997 Sep 15;35(12):1919-31.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Zhao-Union{Tuple{}, Tuple{T}} where T<:Union{InvariantForm, PrincipalValueForm}","page":"API","title":"Hyperelastics.Zhao","text":"Zhao()\nZhao(type)\n\n\nModel:\n\nW = C_-1^1*(I_2-3)+C_1^1(I_1-3)+C_2^1(I_1^2-2I_2-3)+C_2^2(I_1^2-2I_2-3)^2\n\nArguments:\n\ntype=PrincipalValueForm(): Sets the form of the strain energy density function. Either PrincipalValueForm() or InvariantForm()\n\nParameters:\n\nC₋₁¹\nC₁¹\nC₂¹\nC₂²\n\nZhao Z, Mu X, Du F. Modeling and verification of a new hyperelastic modelfor rubber-like materials. Mathematical Problems in Engineering. 2019 May 22019.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.ZunigaBeatty-Tuple{}","page":"API","title":"Hyperelastics.ZunigaBeatty","text":"ZunigaBeatty(; ℒinv)\n\n\nModel:\n\nW = sqrtfracN_3+N_82N_3W_3Chain+sqrtfracI_13N_8W_8Chain\n\nArguments:\n\nℒinv=TreloarApproximation(): Sets the inverse Langevin approxamation used\n\nParameters:\n\nμ\nN₃\nN₈\n\nElı́as-Zúñiga A, Beatty MF. Constitutive equations for amended non-Gaussian network models of rubber elasticity. International journal of engineering science. 2002 Dec 1;40(20):2265-94.\n\n\n\n\n\n","category":"method"},{"location":"API/#Compressible-Models","page":"API","title":"Compressible Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractCompressibleModel","category":"page"},{"location":"API/#Data-Driven-Models","page":"API","title":"Data Driven Models","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nFilter = x -> typeof(x) === UnionAll && x <:Hyperelastics.AbstractDataDrivenHyperelasticModel","category":"page"},{"location":"API/#Hyperelastics.DataDrivenAverageChainBehavior-Tuple{HyperelasticUniaxialTest}","page":"API","title":"Hyperelastics.DataDrivenAverageChainBehavior","text":"DataDrivenAverageChainBehavior(data; fchain)\n\n\nModel:\n\nAdapted from the code provided in the article's supplementary material\n\nParameters:\n\nNone\n\nFields:\n\ndata: A Uniaxial Hyperelastic Test\nfchain(λch, pch): A constructor for an approximation with the form f(x, y) => f̂(x) = y\n\nAmores VJ, Benítez JM, Montáns FJ. Average-chain behavior of isotropic incompressible polymers obtained from macroscopic experimental data. A simple structure-based WYPiWYG model in Julia language. Advances in Engineering Software. 2019 Apr 1;130:41-57.\n\nAmores VJ, Benítez JM, Montáns FJ. Data-driven, structure-based hyperelastic manifolds: A macro-micro-macro approach to reverse-engineer the chain behavior and perform efficient simulations of polymers. Computers & Structures. 2020 Apr 15;231:106209.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.SussmanBathe-Tuple{HyperelasticUniaxialTest}","page":"API","title":"Hyperelastics.SussmanBathe","text":"SussmanBathe(data; interpolant, k)\n\n\nModel:\n\nSee paper\n\nParameters:\n\nNone\n\nFields:\n\ndata: Hyperelastic Uniaxial test to be used for determining the interpolation\nk: Order of the summation in the model.\ninterpolant: Function of the form, f(s, λ) which returns a function f(λ) = s\n\nSussman T, Bathe KJ. A model of incompressible isotropic hyperelastic material behavior using spline interpolations of tension–compression test data. Communications in numerical methods in engineering. 2009 Jan;25(1):53-63.\n\n\n\n\n\n","category":"method"},{"location":"API/#Helper-Functions","page":"API","title":"Helper Functions","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nOrder = [:function]","category":"page"},{"location":"API/#ContinuumMechanicsBase.CauchyStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.CauchyStressTensor","text":"CauchyStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n λ⃗::Array{R, 1},\n p;\n kwargs...\n) -> Any\n\n\nReturns the Cauchy stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.CauchyStressTensor-Union{Tuple{S}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{S}, Any}} where {T<:PrincipalValueForm, S}","page":"API","title":"ContinuumMechanicsBase.CauchyStressTensor","text":"CauchyStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{S, 2},\n p;\n kwargs...\n)\n\n\nReturns the Cauchy stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₁-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₁","text":"I₁(λ⃗)\n\n\nFirst stretch invariant - Currently requires the addition of 5 times the machine precision to allow AD to work correctly\n\nI_1(veclambda) = lambda_1^2+lambda_2^2+lambda_3^2 + 5varepsilon\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₂-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₂","text":"I₂(λ⃗)\n\n\nSecond Stretch invariant\n\nI_2(veclambda) = lambda_1^-2+lambda_2^-2+lambda_3^-2\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.I₃-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.I₃","text":"I₃(λ⃗)\n\n\nThird Stretch invariant\n\nI_3(veclambda) = (lambda_1lambda_2lambda_3)^2\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.J-Tuple{AbstractVector}","page":"API","title":"ContinuumMechanicsBase.J","text":"J(λ⃗)\n\n\nVolumetric Stretch\n\nJ(veclambda) = lambda_1lambda_2lambda_3\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor","text":"SecondPiolaKirchoffStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{R, 2},\n p;\n kwargs...\n) -> Any\n\n\nReturns the second PK stress tensor for the hyperelastic model ψ with the deformation gradient F with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.SecondPiolaKirchoffStressTensor","text":"SecondPiolaKirchoffStressTensor(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n λ⃗::Array{R, 1},\n p;\n ad_type,\n kwargs...\n) -> Any\n\n\nReturns the second PK stress tensor for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\nad_type: Automatic differentiation backend (see ADTypes.jl)\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.StrainEnergyDensity-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Matrix{R}, Any}} where {T<:PrincipalValueForm, R}","page":"API","title":"ContinuumMechanicsBase.StrainEnergyDensity","text":"StrainEnergyDensity(\n ψ::Hyperelastics.AbstractHyperelasticModel{T<:PrincipalValueForm},\n F::Array{R, 2},\n p\n) -> Any\n\n\nReturns a function for the strain energy density function for the hyperelastic model based on calculating the principal stretches of the deformation gradient, F. The eigen values are found by the following procedure:\n\nC = F^T cdot F\na = transpose(eigvecs(C))\nC^ast = (U^ast)^2 = a^T cdot C cdot a\nveclambda = diag(U)\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nF::Matrix: Deformation gradient matrix\np: Model parameters\n\n\n\n\n\n","category":"method"},{"location":"API/#ContinuumMechanicsBase.StrainEnergyDensity-Union{Tuple{R}, Tuple{T}, Tuple{Hyperelastics.AbstractHyperelasticModel{T}, Vector{R}, Any}} where {T, R}","page":"API","title":"ContinuumMechanicsBase.StrainEnergyDensity","text":"StrainEnergyDensity(\n ψ::Hyperelastics.AbstractHyperelasticModel{T},\n _::Array{R, 1},\n p\n) -> Any\n\n\nReturns the strain energy density for the hyperelastic model ψ with the principle stretches λ⃗ with parameters p.\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\nλ⃗::Vector: Vector of principal stretches\np: Model parameters\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.HyperelasticProblem","page":"API","title":"Hyperelastics.HyperelasticProblem","text":"Creates an OptimizationProblem for use in Optimization.jl to find the optimal parameters.\n\nArguments:\n\nψ: material model to use\ntest or tests: A single or vector of hyperelastics tests to use when fitting the parameters\nu₀: Initial guess for parameters\nps: Any additional parameters for calling predict\nadb: Select differentiation type from ADTypes.jl. The type is automatically applied to the type of AD applied to the Optimization Problem also.\nloss: Loss function from LossFunctions.jl\n\n\n\n\n\n","category":"function"},{"location":"API/#Hyperelastics.Kawabata1981-Tuple{Float64}","page":"API","title":"Hyperelastics.Kawabata1981","text":"Kawabata1981(λ₁)\n\n\nBiaxial experimental data from Kawabata et al. The data is more challenging to correctly fit a hyperelastic model to and is proposed as a better test than the Treloar1944 simple tension dataset. Available data is for fixed λ₁ of:\n\n1.040\n1.060\n1.080\n1.100\n1.120\n1.14\n1.16\n1.2\n1.24\n1.3\n1.6\n1.9\n2.2\n2.5\n2.8\n3.1\n3.4\n3.7\n\nArguments:\n\nλ₁::Float64: Specification of λ₁ stretch for the data.\n\nKawabata S, Matsuda M, Tei K, Kawai H. Experimental survey of the strain energy density function of isoprene rubber vulcanizate. Macromolecules. 1981 Jan;14(1):154-62.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.Treloar1944Uniaxial-Tuple{}","page":"API","title":"Hyperelastics.Treloar1944Uniaxial","text":"Treloar1944Uniaxial()\n\n\nUniaxial data for tension of 8% S Rubber at 20C from Fig 3 of Treloar 1944. This is commonly used for testing hyperelastic models.\n\nTreloar LR. Stress-strain data for vulcanized rubber under various types of deformation. Rubber Chemistry and Technology. 1944 Dec;17(4):813-25.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.parameter_bounds-Tuple{Hyperelastics.AbstractHyperelasticModel, Hyperelastics.AbstractHyperelasticTest}","page":"API","title":"Hyperelastics.parameter_bounds","text":"parameter_bounds(\n _::Hyperelastics.AbstractHyperelasticModel,\n _::Hyperelastics.AbstractHyperelasticTest\n) -> NamedTuple{(:lb, :ub), _A} where _A<:Tuple{NamedTuple{(:Gc, :Ge, :N), _A} where _A<:Tuple{Float64, Float64, Any}, Nothing}\n\n\nReturns a tuple of the parameter bounds provided the experimental data and model\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastic model\ntest or tests: The test or vector of tests to use in finding the parameter bounds.\n\n\n\n\n\n","category":"method"},{"location":"API/#Hyperelastics.parameters-Tuple{Hyperelastics.AbstractHyperelasticModel}","page":"API","title":"Hyperelastics.parameters","text":"parameters(\n ψ::Hyperelastics.AbstractHyperelasticModel\n) -> Tuple{Symbol}\n\n\nReturns a tuple of the parameters required for the model\n\nArguments:\n\nψ::AbstractHyperelasticModel: Hyperelastics model\n\n\n\n\n\n","category":"method"},{"location":"API/#Miscellaneous","page":"API","title":"Miscellaneous","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [Hyperelastics]\nOrder = [:module, :constant, :type, :macro]","category":"page"},{"location":"API/#Hyperelastics.Hyperelastics","page":"API","title":"Hyperelastics.Hyperelastics","text":"Hyperelastics\n\n(Image: Stable) (Image: Dev) (Image: codecov) A hyperelastic model library and fitting toolkit developed by TRACER Lab at Liberty University. A constructor is provided for Optimization.jl for parameter fitting based on experimental data.\n\nCitations\n\nAll relevant citations are located in CITATIONS.bib\n\n\n\n\n\n","category":"module"},{"location":"API/","page":"API","title":"API","text":"","category":"page"}] }