Skip to content

Commit cca10fb

Browse files
committed
fix nonlinear mooney rivlin
1 parent cd932f6 commit cca10fb

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

src/PhysicalModels/MechanicalModels.jl

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,8 @@ struct NonlinearMooneyRivlin3D <: IsoElastic
356356
H(F) = det(F) * inv(F)'
357357

358358
Ψ(F) = μ1 / (2.0 * α1 * 3.0^(α1 - 1)) * (tr((F)' * F))^α1 + μ2 / (2.0 * α2 * 3.0^(α2 - 1)) * (tr((H(F))' * H(F)))^α2 - (μ1 + 2 * μ2) * logreg(J(F)) +
359-
/ 2.0) * (J(F) - 1)^2
359+
/ 2.0) * (J(F) - 1)^2 +
360+
-μ1/(2.0 * α1 * 3.0^(α1 - 1))*3^α1 -μ2/(2.0 * α2 * 3.0^(α2 - 1))*3^α2
360361

361362
∂Ψ_∂F(F) = (μ1 / (3.0^(α1 - 1)) * (tr((F)' * F))^(α1 - 1)) * F
362363
∂Ψ_∂H(F) = (μ2 / (3.0^(α2 - 1)) * (tr((H(F))' * H(F)))^(α2 - 1)) * H(F)
@@ -389,7 +390,8 @@ struct NonlinearMooneyRivlin2D <: IsoElastic
389390
J(F) = det(F)
390391
H(F) = det(F) * inv(F)'
391392
Ψ(F) = μ1 / (2.0 * α1 * 3.0^(α1 - 1)) * (tr((F)' * F) + 1.0)^α1 + μ2 / (2.0 * α2 * 3.0^(α2 - 1)) * (tr((F)' * F) + J(F)^2)^α2 - (μ1 + 2.0 * μ2) * logreg(J(F)) +
392-
/ 2.0) * (J(F) - 1)^2
393+
/ 2.0) * (J(F) - 1)^2 +
394+
-μ1/(2.0 * α1 * 3.0^(α1 - 1)) * 3^α1 -μ2/(2.0 * α2 * 3.0^(α2 - 1)) * 3^α2
393395

394396
∂Ψ_∂F(F) = ((μ1 / (3.0^(α1 - 1)) * (tr((F)' * F) + 1.0)^(α1 - 1)) + μ2 / (3.0^(α2 - 1)) * (tr((F)' * F) + J(F)^2)^(α2 - 1)) * F
395397
∂log∂J(J) = J >= Threshold ? 1 / J : (2 / Threshold - J / (Threshold^2))
@@ -426,7 +428,8 @@ struct NonlinearMooneyRivlin2D_CV <: IsoElastic
426428
J(F) = det(F)
427429
H(F) = det(F) * inv(F)'
428430
Ψ(F) = μ1 / (2.0 * α1 * 3.0^(α1 - 1)) * (tr((F)' * F) + 1.0)^α1 + μ2 / (2.0 * α2 * 3.0^(α2 - 1)) * (tr((F)' * F) + J(F)^2)^α2 - (μ1 + 2.0 * μ2) * log(J(F)) +
429-
(λ) * (J(F)^(γ) + J(F)^(-γ))
431+
λ * (J(F)^(γ) + J(F)^(-γ)) +
432+
-μ1/(2.0 * α1 * 3.0^(α1 - 1)) * 3^α1 -μ2/(2.0 * α2 * 3.0^(α2 - 1)) * 3^α2 -2λ
430433

431434
∂Ψ_∂F(F) = ((μ1 / (3.0^(α1 - 1)) * (tr((F)' * F) + 1.0)^(α1 - 1)) + μ2 / (3.0^(α2 - 1)) * (tr((F)' * F) + J(F)^2)^(α2 - 1)) * F
432435
∂Ψ_∂J(F) = μ2 / (3.0^(α2 - 1)) * J(F) * (tr((F)' * F) + J(F)^2)^(α2 - 1) - (μ1 + 2.0 * μ2) * (1.0 / J(F)) + λ * γ * (J(F)^- 1) - J(F)^(-γ - 1))
@@ -461,7 +464,10 @@ struct NonlinearMooneyRivlin_CV <: IsoElastic
461464
H(F) = det(F) * inv(F)'
462465
Ψ(F) = μ1 / (2.0 * α1 * 3.0^(α1 - 1)) * (tr((F)' * F))^α1 +
463466
μ2 / (2.0 * α2 * 3.0^(α2 - 1)) * (tr((H(F))' * H(F)))^α2 -
464-
(μ1 + 2 * μ2) * log(J(F)) + λ * (J(F)^(γ) + J(F)^(-γ))
467+
(μ1 + 2 * μ2) * log(J(F)) + λ * (J(F)^(γ) + J(F)^(-γ)) +
468+
-μ1 / (2.0 * α1 * 3.0^(α1 - 1)) * 3^α1 +
469+
-μ2 / (2.0 * α2 * 3.0^(α2 - 1)) * 3^α2 +
470+
-2λ
465471

466472
∂Ψ_∂F(F) = ((μ1 / (3.0^(α1 - 1)) * (trAA(F))^(α1 - 1))) * F
467473
∂Ψ_∂H(F) = ((μ2 / (3.0^(α2 - 1)) * (tr((H(F))' * H(F)))^(α2 - 1))) * H(F)

0 commit comments

Comments
 (0)