Application Center - Maplesoft

Relaxation due to the Sqrt(t)-Law in Comparison with the MAXWELL-Fluid

You can switch back to the summary page by clicking here.

Relaxation due to the Sqrt(t)-Law in Comparison with the MAXWELL-Fluid

Univ.-Prof. Dr.-Ing. habil. Josef  BETTEN

RWTH Aachen University

Templergraben 55

D-52056  A a c h e n

betten@mmw.rwth-aachen.de

This worksheet is concerned with the relaxation functions (11.72 a, b) taken

from BETTEN's book: Creep Mechanics, Third Edition, Springer-Verlag 2008.

 > restart:

 > S(t,B):=sigma(t,B)/sigma(0)=exp(-B*sqrt(t));                                    # sqrt(t)-law (11.72a)

 (1)

 > s(t,b):=sigma(t,b)/sigma(0)=exp(-b*t);                                          # MAXWELL-fluid (11.72b)

 (2)

In the following example, the parameters  b = B = [1/2, 1]  have been assumed.

 > for i in [1/2,1] do S(t,i):=subs(B=i,exp(-B*sqrt(t))) od;

 (3)

 (3)

 > for i in [1/2,1] do s(t,i):=subs(b=i,exp(-b*t)) od;

 (4)

 (4)

 >

 > alias(H=Heaviside,th=thickness,co=color):

 > p[1]:=plot({S(t,1/2),S(t,1)},t=0..2,0..1,              axes=boxed,th=3,co=black):

 > p[2]:=plot({s(t,1/2),s(t,1)},t=0..2,linestyle=4,co=black,      title="Relaxation,  b = B = [1/2, 1]"):

 > p[3]:=plot(H(t-1),t=0.99..1.001,co=black,linestyle=3):

 > p[4]:=plot(H(t-2),t=1.99..2.001,co=black):

 > p[5]:=plots[textplot]({[1.25,0.2,`B = 1`],                           [1.25,0.65,`B = 1/2`]}):

 > plots[display](seq(p[k],k=1..5));

The solid lines in this Figure refer to the equation  S(t, B), while the dashdot lines

represent the relaxation function  s(t, b). The difference between these two functions

(11.72a,b) in a range of  t = [0, 2], also called the distance of the two relaxation

functions, can be expressed by the L-two-error norm defined as:

 > L[2][Norm]:=            sqrt((1/(t[1]-t[0]))*Int((Y(t,B)-y(t,b))^2,t=t[0]..t[1]));

 (5)

For example, for  b = B = 1  on  [0..1], [1..2], and [0..2]  we calculate the following

values:

 > L[2][Norm][0..1]:=sqrt(Int((S(t)-s(t))^2,t=0..1))=  evalf(sqrt(int((S(t,1)-s(t,1))^2,t=0..1)),4);

 (6)

 > L[2][Norm][1..2]:=sqrt(Int((S(t)-s(t))^2,t=1..2))= evalf(sqrt(int((S(t,1)-s(t,1))^2,t=1..2)),4);

 (7)

 > L[2][Norm][0..2]:=sqrt((1/2)*Int((S(t)-s(t))^2,t=0..2))= evalf(sqrt((1/2)*int((S(t,1)-s(t,1))^2,t=0..2)),4);

 (8)

These distances are based upon the assumption  b = B. However, one can find an optimal

parameter  b[opt]  as a function of  B , so that the simple function  s(t, b) can be considered

as the best "best  approximation"  to the sqrt(t)-law  S(t, B). Thus, one can use the simple

evolutional equation

 > restart:

 > dgl:=Diff(s(t,b),t)=-b*s(t,b);

 (9)

instead of  the evolutional equation

 > Dgl:=Diff(S(t,B),t)=(1/2)*B^2*S(t,B)/ln(S(t,B));

 (10)

based upon the sqrt(t)-law  S(t, B).

One can find an optimal parameter  b[opt]  by minimizing the L-two-norm,

as shown in the following MAPLE worksheet:

 > L[2](b,B):=                 sqrt((1/2)*Int((exp(-B*sqrt(t))-exp(-b*t))^2,t=0..2));

 (11)

Minimizing the integral, we arrive at the following results:

 > INT(b)[B]:=                     simplify(int((exp(-B*sqrt(t))-exp(-b*t))^2,t=0..2)):

 > D(b)[B]:=diff(INT(b)[B],b):

 > for i in [1/4,1/2,3/4,1,5/4,3/2,7/4,2] do              D(b)[i]:=subs(B=i,D(b)[B]) od:

 > for i in [1/4,1/2,3/4,1,5/4,3/2,7/4,2] do        b[opt][B=i]:=fsolve(D(b)[i]=0,b) od;

 (12)

 (12)

 (12)

 (12)

 (12)

 (12)

 (12)

 (12)

 > data:=[0,0],[1/4,0.219],[1/2,0.454],[3/4,0.715],                              [1,1.013],[5/4,1.37],[3/2,1.81],[7/4,2.36],[2,3.04];

 (13)

 > plot([data],B=0..2,scaling=constrained,    style=point,symbol=cross,symbolsize=50);

From these data we find a cubic parabola by using the least-squares method:

 > with(stats):

 > fit[leastsquare[[x,y],y=a[1]*x+a[2]*x^2+a[3]*x^3,{a[1],a[2],a[3]}]] ([[0,1/4,1/2,3/4,1,5/4,3/2,7/4,2], [0,0.219,0.454,0.715,1.013,1.37,1.81,2.36,3.04]]);

 (14)

 > b[opt]:=0.92671*B-0.13351*B^2+0.214695*B^3;

 (15)

 > alias(H=Heaviside,th=thickness,co=color):

 > p[1]:=plot([data],B=0..2,scaling=constrained, style=point,symbol=cross,symbolsize=50,                              title="b[opt]  as a function  of  B"):

 > p[2]:=plot(b[opt],B=0..2,0..3,th=3,co=black,axes=boxed):

 > p[3]:=plot(3*H(B-1),B=0.99..1.001,linestyle=4,co=black):

 > p[4]:=plot({1,B},B=0..2,linestyle=3,co=black):

 > plots[display](seq(p[k],k=1..4));

The next Figure represents the relaxation curves  S(t, B) and s(t, b) for the

parameter combinations                                                                                                                                                           {[b = B = 2], [b = 3.04, B = 2]} and {[b = B = 1/2], [b = 0.45, B = 1/2]}

 > restart:

 > S(t,2):=exp(-2*sqrt(t)); s(t,2):=exp(-2*t); s(t,3.04):=exp(-3.04*t);

 (16)

 (16)

 (16)

 > S(t,1/2):=exp(-sqrt(t)/2); s(t,1/2):=exp(-t/2); s(t,0.45):=exp(-0.45*t);

 (17)

 (17)

 (17)

 > alias(H=Heaviside,th=thickness,co=color):

 > p[1]:=plot({S(t,2),S(t,1/2)},t=0..2,0..1,th=3,co=black):

 > p[2]:=plot({s(t,2),s(t,1/2)},t=0..2,axes=boxed,co=black):

 > p[3]:=plot({s(t,3.04),s(t,0.45)},t=0..2,                 th=2,linestyle=4,co=red):

 > p[4]:=plot(H(t-1),t=0.99..1.001,linestyle=4,co=black,                                title="[b = B = 2 # b = 3.04] and [b = B = 1/2 # b = 0.45]"):

 > p[5]:=plots[textplot]({[1.25,0.2,`B = 2`],                           [1.25,0.7,`B = 1/2`]}):

 > plots[display](seq(p[k],k=1..5));

In this Figure the thick  "solid lines"  refer to the parameter  B = [2, 1/2], the thin

"solid lines" represent  b = B , and the  "dashdot lines"  are the approximations                                                     characterized by  b[opt] = [3.04, 0.45].

The above mentioned parameter combinations yield to the following L-two-norms:

 > L[zwei][b=2][B=2]:=              evalf(sqrt((1/2)*int((S(t,2)-s(t,2))^2,t=0..2)),4);

 (18)

 > L[zwei][b=3.04][B=2]:=               evalf(sqrt((1/2)*int((S(t,2)-s(t,3.04))^2,t=0..2)),4);

 (19)

 > L[zwei][b=1/2][B=1/2]:=    evalf(sqrt((1/2)*int((S(t,1/2)-s(t,1/2))^2,t=0..2)),4);

 (20)

 > L[zwei][b=0.45][B=1/2]:=   evalf(sqrt((1/2)*int((S(t,1/2)-s(t,0.45))^2,t=0..2)),4);

 (21)

 >

Appendix

A full-length output of  the calculation of  the optimal parameter  b[opt]  as a function

of the first parameter  B  is listed in the following Worksheet:

 > restart:

 > sqrt((1/2)*Int((exp(-B*sqrt(t))-b*exp(t))^2,t=0..2));

 (22)

 > INT(b)[B]:=                     simplify(int((exp(-B*sqrt(t))-exp(-b*t))^2,t=0..2));

 (23)

 > D(b)[B]:=diff(INT(b)[B],b);

 (24)

 > for i in [1/4,1,2] do D(b)[i]:=subs(B=i,D(b)[B]) od;

 (25)

 (25)

 (25)

 > for i in [1/4,1,2] do b[opt][B=i]:=fsolve(D(b)[i]=0,b) od;

 (26)

 (26)

 (26)

Legal Notice: The copyright for this application is owned by Maplesoft. The application is intended to demonstrate the use of Maple to solve a particular problem. It has been made available for product evaluation purposes only and may not be used in any other context without the express permission of Maplesoft.