5. Digital integration of the model#

5.1. Discretization (1D)#

Let us first consider the non-aging case. The creep deformation for the Kelvin \(s\) chain alone is written as follows (see):

(5.1)#\[ {\ mathrm {\ epsilon}} _ {s}} ^ {\ mathit {fl}} (t) =\ underset {{t} _ {0}} {\ overset {t} {\ int}} {\ int}} {J}} {J} _ {s}} {s}\ left (1-\ mathrm {exp}}\ left (1-\ mathrm {exp}}\ left (1-\ mathrm {exp}}\ left (-\ frac {t}} _ {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {J} thrm {\ tau}} _ {s}}\ right)\ right)\ right)\ right)\ frac {\ partial S} {\ partial {t} _ {c}} {\ mathit {dt}}}\ right)\ right)\ right)\ right)\ right)\ frac {\ partial S} {\ partial S} {\ partial {t} _ {c}} {\ mathit {dt}}\]

The numerical integration of the model is done by approximating \(S\left(t\right)\) as a piecewise linear function over the succession of \(n\) time increments \({\mathrm{\Delta }t}_{i}={t}_{i}-{t}_{i-1}\) with \(i=\mathrm{1,}\cdots ,n\). As a result, \(\dot{S}\) is constant on \(t\in [:ref:`{t}_{i-1},{t}_{i} <{t}_{i-1},{t}_{i}>\)] and equal to :math:frac{{mathrm{Delta }S}_{i}}{{mathrm{Delta }t}_{i}}`. The deformation of the chain \(s\) at time \({t}_{n}\) is then given by the following expression:

(5.2)#\[ {\ mathrm {\ epsilon}} _ {s} ^ {\ mathit {fl}} {\ mathit {fl}}} ({t} _ {n}) =\ sum _ {i=1} ^ {n}\ frac {\ mathrm {\ mathrm {\ Delta} {\ Delta} {\ epsilon}}\ frac {\ mathrm {\ Delta} {\ Delta} {\ Delta} {S} {S} {S} {S} {S} {S}} _ {i-1}} {\ mathrm {\ Delta} {S} {S} {S}} _ {i-1}}\ underset {{t}} _ {i-1}} {\ o{ t} _ {i}} {\ int}} {\ int}} {\ int}} {\ int}} {J} _ {int}}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {\ int}} {J} _ {tau}} {J} _ {\ tau}}\ left (1-\ mathrm {\ exp}}\ left (-\ frac {t- {t}} _ {c}} _ {c}}\]

We get:

(5.3)#\[\begin{split} {\ mathrm {\ epsilon}} _ {s} ^ {\ mathit {fl}} {\ mathit {fl}}} ({t} _ {n}) =\ sum _ {i=1} ^ {n}\ left (\ frac {\ mathrm {\ mathrm {\ Delta}} {\ left) {\ mathrm {\ Delta}}\ left (\ frac {\ mathrm {\ mathrm {\ Delta} {\ Delta} {S} {S} {S}} {S} _ {i}} {right) {J} _ {}}\ right) {J} _ {s}\ mathrm {\ Delta} {t} _ {i} -\ sum _ {i}} -\ sum _ {i=1} ^ {n}\ left (\ frac {\ Delta} {S}} _ {i}}} {\ mathrm {i}}}} {\ mathrm {\ i}}} {\ mathrm {\ tau}}} {\ mathrm {\ tau}}} {\ mathrm {\ i}}} {\ mathrm {\ tau}}} {\ mathrm {\ tau}}} {\ mathrm {\ i}}} {\ mathrm {\ tau}}} {\ mathrm {\ tau}}} {\ mathrm {\ delta}}} {\ mathrm {\ tau}}} {left (\ mathrm {exp}\ left (-\ frac {{t} _ {n} _ {n} - {t} _ {i}} {{\ mathrm {\ tau}}} _ {s}}\ right) -\ mathrm {exp}\ right) -\ mathrm {exp}\\ left (-\ frac {{t} _ {\ tau}} _ {i-1}}\ right) -\ mathrm {exp}\ right) -\ mathrm {exp}\ left (-\ frac {{t} _ {i-1}}} {{\ mathrm {\ mathrm {\}}\ right) -\ mathrm {exp}\ right) -\ mathrm {exp}\ left (-\ frac tau}} _ {s}}\ right)\ right)\end{split}\]

And so:

(5.4)#\[ {\ mathrm {\ epsilon}} _ {s}} ^ {\ mathit {fl}}} ({t} _ {n}) = {J} _ {s}\ underset {{A} _ {n}} {n} ^ {n}} ^ {n}}\ underset {0}} ^ {0}}} {\ underset {0}}} {\ underset {0}}} {\ underset {0}}} {\ underset {0}}} {\ underset {0}}} {\ underset {}} {\ underset {}} {\ underset {}} {\ sum _ {f}}} -\ underset {{A} _ {n} ^ {s}} {\ underset {{s}} {\ underset {} {{J} _ {s}\ sum _ {i=1} ^ {n}\ mathrm {\ Delta} {S} {S}}\ mathrm {\ Delta} {S} {S}}\ mathrm {\ Delta} {S} {S}}\ mathrm {\ Delta} {S} {S}\ mathrm {\ Delta} {S} {S} {S}\ mathrm {\ Delta} {S} {S} {S}\ mathrm {\ Delta} {S} {S} {S}\ mathrm {\ Delta} {S} {S} {S}\ mathrm {\ Delta} {S}\ left (\ mathrm {exp}\ left (-\ frac {{t} _ {n} _ {n} - {t} _ {i}}} {{\ mathrm {\ tau}}} _ {s}}\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ left (1-\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ tau}} {t}}\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ right)\ left (1-\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ delta} {t}}\ right)\ right)\ right)\ right {\ mathrm {\ tau}} _ {s}}\ right)\ right)}}} = {J} _ {s} {A} _ {n} ^ {0} - {A}} - {A} _ {n} ^ {s} - {A} _ {n} ^ {s}\]

To \({t}_{n+1}\) you can also write:

\[\]

: label: eq-20

begin {array} {c} {mathrm {epsilon}}} _ {epsilon}} _ {epsilon}}} _ {n+1}) = {J} _ {s}sum _ {i=1}sum _ {i=1}} ^ {1} ^ {n} ^ {n}mathrm {Delta} {n} {n}}mathrm {Delta} {S} - {J} _ {s}sum _ {i=1} ^ {n} ^ {n}mathrm {Delta} {S} {S} _ {i}frac {{mathrm {tau}} _ {s}} {mathrm {Delta} {t}} _ {i}}left (mathrm {exp}}left (-frac {{t}} _ {i}}} {i}}left (mathrm {exp}left (-frac {{t}} _ {i}}}left (mathrm {exp}}left (-frac {{t}} _ {i}}} {i}}left (mathrm {exp}}left (-frac {{t}} _ {i}}} {i}}left m {tau}} _ {s}}right)right)right)right)left (1-mathrm {exp}left (-frac {mathrm {Delta} {t}} _ {i}}}} {{i}}}} {{i}}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} {{s}}} S} _ {n+1} - {J} _ {s}mathrm {Delta} {s} {S} _ {n+1}frac {{mathrm {tau}} _ {s}} {mathrm {Delta}} {s}} {mathrm {delta} {t} {t} _ {n+1}}left (-frac {mathrm {mathrm {tau}} _ {tau}} _ {s}}} {mathrm {tau}} _ {s}}} {mathrm {delta} {t} {t} _ {n+1}}left (-frac {mathrm {mathrm {tau}}} _ {s}}} {s} Delta} {t} _ {n+1}} { {mathrm {tau}} _ {s}}right)right)end {array}

So, with \({\mathrm{\Delta }}_{n+1}={t}_{n+1}-{t}_{n}\):

\[\]

: label: eq-21

begin {array} {c} {mathrm {epsilon}}} _ {epsilon}} _ {epsilon}}} _ {n+1}) = {J} _ {s}sum _ {i=1}sum _ {i=1}} ^ {1} ^ {n} ^ {n}mathrm {Delta} {n} {n}}mathrm {Delta} {S} - {J} _ {s}sum _ {i=1} ^ {n} ^ {n}mathrm {Delta} {S} {S} _ {i}frac {{mathrm {tau}} _ {s}} {mathrm {Delta} {t}} _ {i}}left (mathrm {exp}}left (-mathrm {exp}}left (-frac {{t}} _ {i}}}left (mathrm {exp}}left (-frac {{t}} _ {i}}}left (mathrm {exp}}left (-frac {{t}} _ {i}}}left (mathrm {exp}}left (-frac {{t}} _ {i}}} {tau}} _ {s}}right)right)right)right)left (mathrm {exp}left (-frac {mathrm {Delta} {t} _ {n+1}}}} {{n+1}}}}}}}right)left (-fracmathrm {Delta} {t} _ {i}} {{i}} {{mathrm {tau}} {{s}}right)\ + {J} _ {s}mathrm {Delta} {s}mathrm {Delta} {s}mathrm {Delta} _ {s} _ {n+1}mathrm {delta} {s}mathrm {delta} {s}mathrm {delta} {s}}mathrm {delta} {s}}mathrm {delta} {s} _ {n+1}mathrm {delta} {thrm {tau}} _ {s}} {mathrm {Delta} {t} {t} _ {n+1}}}left (1-mathrm {exp}left (-frac {mathrm {Delta} {t} {t} _ {n+1}}} _ {mathrm {tau}}}left (-frac {mathrm {delta} {t} {t}} {t} _ {n+1}}}} {{n+1}}}} {{mathrm {tau}}} _ {s}}right)right)end {array} {t} _ {n+1}}} {{n+1}}} {{n+1}}} {

We recognize the expression for \({A}_{n}^{0}\) and \({A}_{n}^{s}\) from equation (). In the end, we can therefore write for the chain \(s\):

(5.5)#\[ {\ mathrm {\ epsilon}} _ {s} ^ {\ mathit {fl}}} ({t} _ {n+1}) = {J} _ {s} {A} _ {n} ^ {0} - {a} ^ {0} - {A} ^ {0} - {A} _ {0} - {A} _ {0} - {A} ^ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} - {A} _ {0} n+1}} {{\ mathrm {\ tau}}} _ {s}}}\ right) + {J} _ {s}\ mathrm {\ Delta} {S} _ {n+1} - {J} _ {s} {s}\ mathrm {\ delta}} {s}}\ mathrm {\ delta} {S}} {\ mathrm}} {\ Delta} {t} _ {n+1}}}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} {t} {t} _ {n+1}}}} {{n+1}}}}} {{n+1}}}}} {n+1}}}}} {{n+1}}}}} {{n+1}}}} {{n+1}}}} {{n+1}}}} {{n+1}}}} {{n+1}}}} {{n+1}}}} {{n+1}}}\]

Now let’s consider Kelvin’s eight channels in series. We have:

(5.6)#\[ {\ mathrm {\ epsilon}}} ^ {\ mathit {fl}}} ({t} _ {n}) =\ sum _ {s=1} ^ {8} {\ mathrm {\ epsilon}} {\ mathrm {\ epsilon}}} ^ {s} ^ {\ mathit {fl}}} ({t} _ {n})\]

Let’s say \(J=\sum _{s=1}^{8}{J}_{s}\). According to () and () we have at \({t}_{n}\):

(5.7)#\[ {\ mathrm {\ epsilon}}} ^ {\ mathit {fl}}} ({t} _ {n}) =J {A} _ {n} ^ {0} -\ sum _ {s=1}} ^ {1} ^ {1} ^ {1} ^ {1} ^ {1} ^ {s} ^ {s} ^ {s}\]

At \({t}_{n+1}\) we also have:

(5.8)#\[ {\ mathrm {\ epsilon}}} ^ {\ mathit {fl}}} ({t} _ {n+1}) =J {A} _ {n+1} ^ {0} -\ sum _ {s=1} -\ sum _ {s=1}} ^ {s=1} ^ {1} ^ {1} ^ {1}} ^ {s}\]

With:

\({A}_{n+1}^{0}={A}_{n}^{0}+\mathrm{\Delta }{S}_{n+1}\) and \({A}_{n+1}^{s}={A}_{n}^{s}\mathrm{exp}\left(-\frac{\mathrm{\Delta }{t}_{n+1}}{{\mathrm{\tau }}_{s}}\right)+{J}_{s}\mathrm{\Delta }{S}_{n+1}\frac{{\mathrm{\tau }}_{s}}{\mathrm{\Delta }{t}_{n+1}}\left(1-\text{exp}\left(-\frac{\mathrm{\Delta }{t}_{n+1}}{{\mathrm{\tau }}_{s}}\right)\right)\)

More precisely, if we also take into account the effect of aging and considering the aging coefficient constant on \({\mathrm{\Delta }t}_{i}\), we have:

\({A}_{n+1}^{0}={A}_{n}^{0}+k({t}_{n+1/2})\mathrm{\Delta }{S}_{n+1}\) and \({A}_{n+1}^{s}={A}_{n}^{s}\mathrm{exp}\left(-\frac{\mathrm{\Delta }{t}_{n+1}}{{\mathrm{\tau }}_{s}}\right)+{J}_{s}k({t}_{n+1/2})\mathrm{\Delta }{S}_{n+1}\frac{{\mathrm{\tau }}_{s}}{\mathrm{\Delta }{t}_{n+1}}\left(1-\text{exp}\left(-\frac{\mathrm{\Delta }{t}_{n+1}}{{\mathrm{\tau }}_{s}}\right)\right)\)

Note:

We noted:

*\({\mathrm{\Delta \; X}}_{i}={X}_{i}-{X}_{i-1}\)* . *

  • \({X}_{n+1/2}=\frac{{X}_{n+1}+{X}_{n}}{2}\)

To have \({\mathrm{\epsilon }}^{\mathit{fl}}\) at time \({t}_{n+1}\), you only need to store \({A}^{0}\) and the \({A}^{s}\) of the previous time step, which is nine variables. In 3D, \({A}_{0}\) and \({A}^{s}\) are tensors. We will then associate the two natural flow behavior relationships (9x6) with internal variables corresponding to the components of the \(A\) tensors. They characterize the progress of creep.

Writing in deformation increment \(\mathrm{\Delta }{\mathrm{\epsilon }}_{s}^{\mathit{fl}}({t}_{n+1})={\mathrm{\epsilon }}_{s}^{\mathit{fl}}({t}_{n+1})-{\mathrm{\epsilon }}_{s}^{\mathit{fl}}({t}_{n})\), closer to programming, gives:

(5.9)#\[ \ mathrm {\ Delta} {\ mathrm {\ epsilon}}} _ {\ epsilon}} _ {\ epsilon}} _ {n+1}) = {A} _ {n} ^ {s}\ left (1-\ mathrm {epsilon}}}\ left (-\ frac {\ mathrm {\ Delta} {t}} ^ {s} ^ {s}} {s}\ left (1-\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ Delta} {t}} _ {n} ^ {s}} {s}\ s}\ left (1-\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ Delta} {t}} {n} ^ {\ mathrm {\ tau}} _ {s}}\ right)\ right)\ right)\ right) + {J} _ {s} k ({t} _ {n+1/2})\ mathrm {\ Delta} {S} {S}} _ {s}} _ {s}} {\ mathrm {\ delta} {s}} _ {n+1}\ left (1-\ frac {{\ mathrm {\ tau}}} _ {n+1}\ left (1-\ frac {{\ mathrm {\ tau}}} _ {n+1}}\ left (1-\ frac {{\ mathrm {\ tau}}} _ {n+1}}\ left (1-\ frac {{\ mathrm {\ tau}}} +1}}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} {t} _ {n+1}} {{\ mathrm {\ tau}}} _ {S}}\ right)\ right)\ right)\ right)\]

5.2. Integrating the behavioral relationship#

We note \(\mathrm{\Delta }\mathrm{\epsilon }\) the infinitesimal deformation increment such that:

(5.10)#\[ \ mathrm {\ Delta}\ mathrm {\ epsilon} =\ frac {1} {2}\ left (\nabla (\ mathrm {\ Delta} u) + {\nabla}} ^ {T} (\ mathrm {\ Delta} u)\ right)\]

If we take into account, in the deformation partition, thermal deformation, deformations associated with endogenous shrinkage and desiccation shrinkage, then we have:

\[\]

: label: eq-30

mathrm {Delta}mathrm {epsilon} =mathrm {epsilon} =mathrm {epsilon}} ^ {e} +mathrm {Delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {{mathit {th}} +mathrm {Delta} {mathrm {epsilon}} ^ {mathit {ret} -mathit {end}}} +mathrm {Delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {delta} {mathrm {delta} {delta} {mathrm {epsilon}}}

With elastic deformation such as:

\[\]

: label: eq-31

{mathrm {epsilon}}} ^ {e} =Hmathrm {sigma}

\(H\) is Hooke’s elasticity tensor. Thermal deformation is written as:

\[\]

: label: eq-32

{mathrm {epsilon}}} ^ {mathit {th}} =mathrm {alpha} (T- {T} _ {mathit {ref}}}) {mathit {ref}}) {I} _ {d}

For a given temperature \(T\), with \(\mathrm{\alpha }\) the thermal expansion coefficient and \({T}_{\mathit{ref}}\) the reference temperature. Endogenous shrinkage and desiccation deformations:

(5.11)#\[ {\ mathrm {\ epsilon}} ^ {\ mathit {ret} -\ mathit {end}} =-\ mathrm {\ beta}\ mathrm {\ xi} {i} {i} _ {d}\]

With \(\mathrm{\xi }\) hydration, \(C\) water concentration, \({C}_{\mathit{ref}}\) reference drying and \((\mathrm{\beta },\mathrm{\kappa })\) material characteristics.

Note:

In the rest of the document, we will note \(\mathrm{\Delta }{\mathrm{\epsilon }}^{A}=\mathrm{\Delta }{\mathrm{\epsilon }}^{\text{th}}+\mathrm{\Delta }{\mathrm{\epsilon }}^{\text{ret}\text{}\text{end}}+\mathrm{\Delta }{\mathrm{\epsilon }}^{\text{ret}\text{}\text{des}}\) .

In 3D, for the deviatory part, we therefore have the following constraint:

(5.12)#\[ \ stackrel {~} {\ mathrm {\ sigma}}} =2\ mathrm {\ mu} {\ stackrel {~} {\ mathrm {\ epsilon}}}} ^ {e} =\ frac {2\ mathrm {\ sigma}} =2\ mathrm {\ mu}} {\ stackrel {\ epsilon}}}} {\ stackrel {~}} =\ frac {2\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}} {\ mathrm {\ mu}}} {\ thrm {\ sigma}}} ^ {-} +2\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ delta}\ stackrel {~} {\ mathrm {\ epsilon}}} -2\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}}\ mathrm {\ mu}}\ mathrm {\ mu}}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}}\ mathrm {\ mu}\ mathrm {\ mu}}\ mathrm {\ mu}\]

And the creep deformation:

(5.13)#\[ {\ stackrel {~} {\ mathrm {\ epsilon}}}}}} ^ {\ mathit {fl}} ({t} _ {n+1}) = (1+ {\ mathrm {\nu}}} _ {f}}} _ {f}})\ left (J {\ stackrel {\ epsilon}}}}} ^ {A}} ({t} _ {n+1}}) = (1+ {\ mathrm {\nu}}}} _ {f}}} _ {f})\ left (J {\ stackrel {~} {A}}} _ {0} -\ sum _ {s=1}} ^ {0} -\ sum _ {s=1}} {f})\ left (J {\ stackrel {8} {\ stackrel {~} {A}}} _ {n+1} ^ {s}\ right)\]

To simplify the writing, note:

(5.14)#\[ {A} _ {n+1}\ Rightarrow A {A} _ {n}\ Rightarrow {A} ^ {-}\]

First, we express the equivalent (deviatoric) stress increment from ():

(5.15)#\[ \ mathrm {\ Delta}\ stackrel {~} {S} =h\ stackrel {~} {\ mathrm {\ sigma}} - {h} ^ {-} {\ stackrel {-} {\ stackrel {~} {\ stackrel {~}} {\ stackrel {~}} {\ stackrel {~}} {\ stackrel {~}} {\ stackrel {~} {\} {\ stackrel {~}} {\ stackrel {~}} {\ stackrel {~}} {\\]

By applying the deviatoric part of () (sum over all strings) to the expression of the deviatoric constraint ():

(5.16)#\[\begin{split} \ begin {array} {c}\ stackrel {~} {\ mathrm {\ sigma}}} =\ frac {2\ mathrm {\ mu}} {2 {\ mathrm {\ mu}}} ^ {-}} ^ {-}} {-}} {\ stackrel {~}} {\ mathrm {\ sigma}}}} ^ {-}} +2\ mathrm {\ mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {mu}}} ^ {Delta}\ stackrel {~} {\ mathrm {\ epsilon}} -\\\ phantom {\ rule {6em} {0ex}} 2\ mathrm {\ mu} (1+ {\ mathrm {\nu}}}} _ {f}} _ {f})\ left [\ sum _ {s}}\ left\ {{\ stackrel {~} {a}} {A}} (1+ {\ mathrm {\nu}}}} _ {f}} _ {f})\ left [\ sum _ {s}}\ left [\ sum _ {s}}\ left\ {{\ stackrel {~} {A}} {A}}} ^ {u}}} _ {f})\ left [\ sum _ {s}}\ left}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ mathrm {\ tau}} _ {s}}\ right)\ right)\ right)\ right)\ right\}\ right\ right\}\ right\ right\}}\ right\ right\}\ right\ right\}\ right\ right\}}\ right\ right\}\ right\ right\}\ right\ right\}\ right\}\ right\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\}\ right\\ left\ {{J} _ {s}\ left (1-\ frac {{\ mathrm {\ tau}} _ {s}} {\ mathrm {\ Delta} t}\ left (1-\ mathrm {exp}\ exp}\ left (-\ frac {\ mathrm {\ Delta} t}} { {\ mathrm {\ tau}} _ {S}}\ right)\ right)\ right)\ right\}\ right]\ end {array}\end{split}\]

We inject () into it, which gives:

(5.17)#\[\begin{split} \ begin {array} {c}\ stackrel {~} {\ mathrm {\ sigma}}\ left [1+2\ mathrm {\ mu} (1+ {\ mathrm {\nu}}} _ {f}) (hk ({t}}}) {\ f}) (hk ({t} _ {f})) (hk ({t} _ {f})) (hk ({t} _ {f})) (hk ({t} _ {f})) (hk ({t} _ {\ mathrm {\ mathrm {\nu}}} _ {f})) (hk ({t} _ {f})) (hk ({t} _ {f})) (hk ({t} _ {\ mathrm {\ u}}} thrm {\ tau}} _ {s}} {\ mathrm {\ Delta} t}}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ mathrm {\ delta}} t} {\ mathrm {\ tau}}}}\ left (1-\ mathrm {\ tau}}}\ right)\ left (-\ frac {\ mathrm {\ Delta} t}} {{\ mathrm {\ tau}}} _ {S}}\ right)\ right)\ right] =\\\ frac {2\ mathrm {\ tau}}} _ {S}}\ right)\ right)\ right)\ right] =\\\ frac {2\ mathrm {\ mu}} {2 {\ mathrm {\ mu}}} ^ {-}} {\ stackrel {-}} {\ mathrm {\ sigma}}} ^ {-} +2\ mathrm {\ mu}\ mathrm {\ mu}\ mathrm {\ mu}}\ mathrm {\ mu}}\ mathrm {\ mu} (1+ {\ mathrm {\nu}} _ {f})\ left [\ sum _ {f})\ left [\ sum _ {s}\ left\ {{\ stackrel {~} {A}}} ^ {-, s}\ left (1-\ mathrm {\ exp})\ left (-\ frac {\ mathrm {\ Delta}} {\ delta}}\ left (1-\ mathrm {exp}\ exp}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ delta} t} {{\ mathrm {\ tau}} _ {s}}\ right)\ right)\ right)\ right)\ right\} -k ({t} _ {n+1/2}) {h} ^ {-} {\ stackrel {~} {\ stackrel {~} {} {} {\} {\} {\ stackrel {~} {} {} {} {} {} {} {} {\} {\ stackrel {~} {} {\} {\} {\} {\} {\ left (1-\ mathrm {\ sigma}}} {\ right)}}} ^ {-}} ^ {-}\ sum _ {s} _ {s}\ left (1-\ frac {\ sigma}}} {\ mathrm {\ sigma}}}}} thrm {\ tau}} _ {s}} {\ mathrm {\ Delta} t}}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ mathrm {\ delta}} t} {\ mathrm {\ tau}}}}} _ {\ mathrm {\ tau}}}} _ {S}}\ right)\ right)\ right)\ right\ right\}\ right]\ end {array}\end{split}\]

Likewise, for the spherical part we have:

(5.18)#\[ \begin{align}\begin{aligned} \ mathit {tr} (\ mathrm {\ sigma}}) =\ frac {\ sigma}) =\ frac {3K}} {3 {K} ^ {sigma}} ^ {-}) +3K\ mathit {-}) +3K\ mathit {-}) +3K\ mathit {-}) -3K\ mathit {-}) -3K\ mathit {tr} (\ mathrm {\ Delta} {\ mathrm {\ epsilon}}} ^ {\ mathit {fl}}) -3K\ mathit {tr} (\ mathrm {\ Delta} {\ delta} {\ mathrm {\ epsilon}}} ^ {A})\\ With the expression for the trace of the creep deformations (sum over all the chains):\end{aligned}\end{align} \]
(5.19)#\[ \begin{align}\begin{aligned}\begin{split} \ begin {array} {c}\ mathit {tr} ({\ mathrm {\ epsilon}}} ^ {\ mathit {fl}}) =\\ (1-2 {\ mathrm {\nu}}} _ {f})\ sum _ {f})\ sum _ {f})\ sum _ {s})\ sum _ {s})\ f})\ sum _ {f})\ sum _ {s})\ sum _ {s})\ sum _ {s})\ left (1-\ mathrm {exx}) p}\ left (-\ frac {\ mathrm {\ delta} t} {{\ mathrm {\ tau}} _ {s}}\ right)\ right\} +\\ k ({t} _ {n+1/2})\ mathit {n+1/2})\ mathit {\ delta} t} {\ delta} t} {{r} t})\ mathit {\ delta} t} {{r} t})\ mathit {tr} (S)\ sum _ {s}\ left (1-\ frac {{\ mathrm {\ tau}} _ {s}} {\ mathrm {\ Delta} t}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ delta} t} {{\ mathrm {\ delta}} t} {{\ mathrm {\ delta}}} {\ mathrm {\ tau}}} _ {S}}\ right)\ right)\ right\}\ right\}\ end {array}\end{split}\\ Finally:\end{aligned}\end{align} \]
(5.20)#\[\begin{split} \ begin {array} {c}\ mathit {tr} (\ mathrm {\ sigma})\ left [1+3K (1-2 {\ mathrm {\nu}} _ {f}) (hk ({t} _ {n+1/2})) (hk ({t} _ {n+1/2}))\ sum _ {n+1/2}))\ sum _ {n+1/2}))\ sum _ {n+1/2}))\ sum _ {n+1/2}))\ sum _ {s}\ left (1-\ frac {{\ mathrm {\ mathrm {\ mathrm {\ 1/2}))\ sum _ {n+1/2}))\ sum _ {\ mathrm {\ 1/2}) tau}} _ {s}} {\ mathrm {\ delta} t}}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ mathrm {\ tau}}}}} _ {\ tau}}}}} _ {tau}}}}} _ {tau}}}} _ {tau}}} _ {tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}} _ {\ tau}}}} _ {tau}}}} _ {tau}} K} ^ {-}}\ mathit {tr} ({\ mathrm {\ sigma}}} ^ {-}) +3K\ mathit {tr} (\ mathrm {\ Delta}\ mathrm {\ epsilon}) -3K\ mathit {\ epsilon}) -3K\ mathit {\ epsilon}) -3K\ mathit {tr} (\ mathrm {\ Delta}} ^ {epsilon}) -3K\ mathit {tr} (\ mathrm {\ Delta}} ^ {epsilon}) -3K\ mathit {\ epsilon}) -3K\ mathit {tr} (\ mathrm {\ Delta}} ^ {epsilon}) -3K\ mathit {\ epsilon}) -\\ 3K (1-2 {\ mathrm {\nu}}} _ {f})\ left [\ sum _ {s}\ left\ {\ mathit {tr} ({A} ^ {-, s})\ left (1-\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ Delta})\ left (-\ frac {\ mathrm {\ Delta}})\ left (1-\ mathrm {\ Delta}) } {{\ mathrm {\ tau}} _ {s}}\ right)\ right)\ right)\ right)\ right)\ right\ right\} - {h} ^ {-}\ mathit {tr} ({\ mathrm {\ sigma}}} ^ {-}} ^ {-}} ^ {-}} ^ {-}) k ({t}}\ -}) k ({t} _ {-}) k ({t} _ {n+1/2})\ sum _ {n+1/2})\ sum _ {s} _ {J} _ {s}\ left (1-\ frac {\ mathrm {\ tau}} _ {s}} {\ mathrm {\ Delta}}} {\ mathrm {\ delta} t}\ left (-\ frac {\ mathrm {\ Delta} t} {{\ mathrm {\ Delta}} t} {\ mathrm {\ delta}}} {\ mathrm {\ tau}}}}\ left (1-\ mathrm {\ delta}} t} {\ mathrm {\ delta} t} {\ mathrm {\ tau}}} _ {S}}\ right)\ right)\ right\}\ right]\ end {array}\end{split}\]

We then deduce \(\mathrm{\sigma }\) since \({\mathrm{\sigma }}_{\mathit{ij}}={\stackrel{~}{\mathrm{\sigma }}}_{\mathit{ij}}+\frac{1}{3}\mathit{tr}\mathrm{\sigma }{\mathrm{\delta }}_{\mathit{ij}}\)

5.3. State variables#

The state variables of the two behavioral relationships are therefore:

  • \(\mathrm{\sigma }\): stress tensor,

  • \(\mathrm{\epsilon }\): deformation tensor,

  • \(T\): temperature,

  • \(C\): water concentration,

  • \(\mathrm{\xi }\): degree of hydration,

  • \({A}_{s}\): tensors characteristic of the progress of the creep, i.e. \(6\mathrm{\times }9\) variable,

  • \(a\): the age of concrete.

The components of the eight tensors \({A}_{s}\) and \(a\) are the internal variables of the law of behavior (BETON_GRANGER as BETON_GRANGER_V). The dimension of each \({A}_{s}\) tensor depends on the modeling (four components in 2D and six in 3D). So we have:

  • in 3D, 55 internal variables:

    • VI1… VI6: components of the \({A}_{1}\) tensor

    • VI7… VI12: components of the \({A}_{2}\) tensor

    *

    • VI43… VI48: components of the \({A}_{8}\) tensor

    • VI49… VI54: components of the \({A}_{0}\) tensor

    • VI55: \(a\)

  • in 2D, 37 internal variables:

    • VI1… VI4: components of the \({A}_{1}\) tensor

    • VI5… VI8: components of the \({A}_{2}\) tensor

    *

    • VI29… VI32: components of the \({A}_{8}\) tensor

    • VI33… VI36: components of the \({A}_{0}\) tensor

    • VI37: \(a\)

5.4. Tangent matrix#

The tangent matrix is expressed by the following formula:

(5.21)#\[ \ frac {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ epsilon}} =\ frac {\ partial\ stackrel {~} {\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ sigma}}} {\ partial\ sigma}}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ sigma}}} {\ partial\ mathrm {\ sigma}}} {\ partial\ sigma} {\ sigma})} {\ partial\ mathrm {\ epsilon}} {I} _ {d}\]

With:

(5.22)#\[ \ frac {\ partial\ stackrel {~} {\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ epsilon}} =\ frac {\ partial\ stackrel {~} {\ mathrm {\ sigma}} {\ mathrm {\ sigma}}} {\ mathrm {\ partial\ stackrel}}}\ frac {\ partial\ stackrel}}}\ frac {\ partial\ stackrel}}}\ frac {\ partial\ stackrel}} rel {~} {\ mathrm {\ epsilon}}}} {\ partial\ mathrm {\ epsilon}}\]

This requires the evaluation of the following expressions:

(5.23)#\[ \ frac {\ partial {\ stackrel {~} {\ mathrm {\ epsilon}}}} _ {\ mathit {ij}}} {\ partial {\ mathrm {\ epsilon}}} _ {\ mathit {kl}}} {\ mathit {kl}}} {\ mathit {kl}}} _ {\ mathit {kl}}} _ {\ mathit {kl}}}} _ {\ mathit {kl}}}} _ {\ mathit {kl}}}} {\ mathit {kl}}} {\ mathit {kl}}}} {\ mathit {kl}}} {\ mathit {kl}}}} {\ mathit {kl}}} {\ mathit {kl}}}} {\ mathit {kl}}} mathit {jl}} -\ frac {1} {3} {3} {\ mathrm {\ delta}} _ {\ mathit {ij}} {\ mathrm {\ delta}}} _ {\ mathit {kl}} _ {\ mathit {kl}}\]

For a Newton iteration, we derive the expression ():

(5.24)#\[ \ frac {\ partial\ stackrel {~} {\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ epsilon}}\ left [1+2\ mathrm {\ mu} (1+ {\ mathrm {\ mu}} (1+\ mathrm {\nu}}} {\ mathrm {\nu}}} {\ mathrm {\nu}}} {\ mathrm {\nu}}} {\ mathrm {\ sigma}}}}} {\ partial\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ sigma}}}} {\ partial\ mathrm {\ sigma} _ {s} 1-\ frac {{\ mathrm {\ tau}} _ {\ tau}} _ {s}} {\ mathrm {\ Delta} t}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ tau}}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {\ tau} =2\ mathrm {\ mu} {I} _ {d}\]

And the expression ():

(5.25)#\[ \ frac {\ partial (\ mathit {tr}\ mathrm {\ sigma})} {\ partial (\ mathit {tr}\ mathrm {\ epsilon})}\ left [1+3K (1-2 {\ mathrm {\nu}}\ mathrm {\nu}}}\ mathrm {\nu}}}} _ {sigma})} {\ partial (\ mathit {tr}}\ mathrm {\ epsilon})}\ left\ {J} _ {s}\ left (1-\ frac {{\ mathrm {\ tau}}} _ {s}} {\ mathrm {\ Delta} t}\ left (1-\ mathrm {exp}\ left (-\ frac {\ mathrm {\ tau}}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ tau}}\ left (-\ frac {\ mathrm {exp}}\ left (-\ frac {\ mathrm {\ delta}})\ right\}\ right] =3K {I} _ {d}\]

We are now considering the prediction phase at time step \([{t}_{n},{t}_{n+1}]\). We note beforehand that in 1D, the time derivative of the creep deformation is expressed very simply:

(5.26)#\[ {\ left (\ frac {\ partial {\ partial {\ mathrm {\ epsilon}}} _ {\ mathrm {\ epsilon}}}} {\ partial t}\ right)} _ {{t} _ {n}}} =\ frac {{a}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =\ frac {\ mathrm {\ epsilon}}} =} k ({t} _ {c})\ frac {\ partial S} {\ partial t}\]

We write the problem in speed at moment \({t}_{n}\):

(5.27)#\[ \ frac {\ partial\ stackrel {~} {\ mathrm {\ sigma}}} {\ partial t}\ left [1+2\ mathrm {\ mu}\ sum _ {s} {J} _ {J} _ {s} _ {s} _} k ({s}} k ({t} _ {n}) {h} _ {n}) {h} ^ {-}\ right] =2\ mathrm {\ mu}\ sum _ {J} _ {J} _ {s} _ {s} _ {s} _ {s} _ {s} _ {s} _ {s} k ({t} _ {n}) {h} _ {n}) {h} ^ {-}\ right] =2\ mathrm {\ mu}\ sum _ {J} {~} {\ mathrm {\ epsilon}}}} {\ partial t}} -2\ mathrm {\ mu} (1+ {\ mathrm {\nu}} _ {f})\ left [\ sum _ {s}}\ left (\ sum _ {s}}\ left (\ frac {\ stackrel {~}} {\ stackrel {~}} {{A} _ {s}}} ^ {-}}} {\ sum_ {s}}} {\ mathrm {s}}} {{\ mathrm {s}}} {{\ mathrm {s}}} {{\ mathrm {s}}} {\ mathrm {s}}} {{\ mathrm {s}}} {\ mathrm {s} tau}} _ {s}} - {J} _ {s} k ({t} _ {n}) {\ stackrel {~} {\ mathrm {\ sigma}}}} ^ {-}\ frac {\ mathit {dh}} {\ mathit {dh}} {\ mathit {dt}}}\ right)\ right]\]

For the spherical part:

\[\]

: label: eq-50

begin {array} {c}frac {partial (mathit {tr}sigma)} {partial t}left [1+mathrm {3K} (1-2 {nu} _ {f}) (sum _ {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {f}) (sum _ {s} {{-}})right] =\ =mathrm {3K}mathrm {3K}frac {partial (mathit {tr}epsilon)} {partial t} -mathrm {3K}} (1-2 {nu}} (1-2 {nu}} _ {K} (1-2 {nu} _ {f})frac {sum _ {s} _ {f})left [sum _ {s} _ {f})left [sum _ {s} _ {f})left [sum _ {s} {text -}} {{tau} _ {s}} - {J}} - {J} _ {s}cdot k ({t} _ {n})cdot (mathit {tr} {sigma} ^ {text {-}} ^ {text {-}}})frac {mathit {dh}}}right] +mathrm {3K} (3text {-}}})frac {mathit {dh}}} {mathit {dh}}} {mathit {dt}}right] +mathrm {3K} (3betafrac ac {dxi} {mathit {dt}}) +mathrm {3K} (3kappafrac {mathit {dC}} {mathit {dt}})end {array}}

In the end:

(5.28)#\[\begin{split} \ begin {array} {c}\ Delta (\ text {tr}\ sigma)\ left [1+\ mathrm {3K} (1-2 {\nu} _ {f}) (\ sum _ {s} {J}} _ {J} _ {J} _ {n} _ {sigma)\ left [1+\ mathrm {3K}} (1-2 {\nu} _ {f}) (\ sum _ {s} {J}} _ {f}) (\ sum _ {J}} _ {n}) (\ sum _ {s} {J} _} _ {f}) (\ sum _ {J}} _ {n})\ right] =\ =\ mathrm m {3K}\ Delta (\ text {tr}\ epsilon) -\ mathrm {3K} (1-2 {\nu} _ {f})\ left [\ sum _ {s}\ frac {(\ mathit {tr}\ epsilon) {(\ mathit {tr}} {(\ tr}}\ epsilon) -\ mathrm {3K}} -\ left [\ sum _ {s}}\ frac {(\ mathit {tr}} {(\ tr}}\ epsilon) -\ mathrm {3K}} -\ left [\ sum _ {s}}\ frac {(\ mathit {tr}} {(\ tr}}\ epsilon) -\ mathrm {3K}} -\ left [\ sum _ {s} _ {s}\ cdot k ({t} _ {n})\ cdot (\ text {tr} {\ sigma} ^ {\ text {-}})\ Delta h\ right]\\ -\ mathrm {3K} (3\ alpha\ Delta T} (3\ alpha\ Delta T) +\ mathrm {3K} (3\ alpha\ Delta T) +\ mathrm {3K} (3\ k3) appa\ Delta C)\ end {array}\end{split}\]

Creep therefore introduces a specific second member term during the prediction phase which is in fact overlooked, with no consequence on the results.