Closed adtzlr closed 2 years ago
The driving force of the 1d micro-sphere model has to be integrated w.r.t. the stretch, in order to obtain the 1d strain energy function. The Padé approximation of the inverse Langevin function will be integrated w.r.t. the stretch. Here is the result of WolframAlpha
integrate (3*N - λ^2)/(N-λ^2) dλ
which gives:
λ + 2 sqrt(N) tanh^(-1)(λ/sqrt(N))
This is transformed into a Python function:
def langevin(stretch, mu, N):
"""Langevin model (Padé approximation) given by the free energy
of a single chain as a function of the stretch."""
return mu * (stretch + 2 * sqrt(N) * atanh(stretch / sqrt(N)))
This is possible via e6159557341e6473f7d841f37e8d55db51a2947a:
import matadi
quadrature = matadi.models.microsphere.quadrature.BazantOh(n=21)
Mat = matadi.MaterialHyperelastic(
fun=matadi.models.microsphere.affine.stretch,
r=quadrature.points,
w=quadrature.weights,
f=matadi.models.microsphere.langevin,
bulk=5000,
kwargs={"mu": 1.0, "N": 10}
)
lab = matadi.Lab(Mat)
data = lab.run(ux=True, bx=True, ps=True, num=50)
fig, ax = lab.plot(data, stability=True)
r
and w
to a class called quadrature
.This seems more intuitive as in 17b1038b0380a7e46bda91f4250c03621d40d8c0
import matadi
Mat = matadi.MaterialHyperelastic(
fun=matadi.models.microsphere.affine.stretch,
quadrature=matadi.models.microsphere.quadrature.BazantOh(n=21),
f=matadi.models.microsphere.langevin,
bulk=5000,
kwargs={"mu": 1.0, "N": 10}
)
lab = matadi.Lab(Mat)
data = lab.run(ux=True, bx=True, ps=True, num=50)
fig, ax = lab.plot(data, stability=True)
Implement the affine, non-affine, stretch and area-stretch micro-sphere models for rubber elasticity [1].
Tasks
References
[1] C. Miehe, “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, vol. 52, no. 11. Elsevier BV, pp. 2617–2660, Nov. 2004.
[2] P. Bažant and B. H. Oh, “Efficient Numerical Integration on the Surface of a Sphere,” ZAMM - Journal of Applied Mathematics and Mechanics / Zeitschrift für Angewandte Mathematik und Mechanik, vol. 66, no. 1. Wiley, pp. 37–49, 1986.