current.mws

Initialize

> s:=rand(0..10000);

s := proc () local t; global _seed; _seed := irem(4...

> Digits:=5;

Digits := 5

> m:=3;

m := 3

> n:=2;

n := 2

> g:=matrix(n,n,[][]);

g := array(1 .. 2,1 .. 2,[])

> g_inv:=matrix(n,n,[][]);

g_inv := array(1 .. 2,1 .. 2,[])

> alpha:=0.5;

alpha := .5

> sub_alpha:=2/(1-alpha);

sub_alpha := 4.0000

> add_alpha:=(1+alpha)/2;

add_alpha := .75000

> F:=matrix(2,3,[[0.8,0.5,0.1],[0.1,0.5,0.8]]);

F := matrix([[.8, .5, .1], [.1, .5, .8]])

Set Functions

> m_alpha:=(x,theta1,theta2)->((F[1,x]*theta1+F[2,x]*theta2)/sub_alpha)^sub_alpha;

m_alpha := proc (x, theta1, theta2) options operato...

> eta:=(j,theta1,theta2)->sum(F[j,'x']*m_alpha('x',theta1,theta2)^add_alpha, 'x'=1..m)/add_alpha;

eta := proc (j, theta1, theta2) options operator, a...

> eta_q:=j->sum(F[j,'x']*(q['x']^add_alpha), 'x'=1..m)/add_alpha;

eta_q := proc (j) options operator, arrow; sum(F[j,...

> psi:=(theta1,theta2)->sum(m_alpha('x',theta1,theta2),'x'=1..m)/add_alpha;

psi := proc (theta1, theta2) options operator, arro...

> d:=(tq1,tq2)->psi(tq1,tq2)-(theta1_q*eta_q(1)+theta2_q*eta_q(2));

d := proc (tq1, tq2) options operator, arrow; psi(t...

> D_alpha:=(theta1,theta2)->psi(theta1,theta2)-(theta1*eta_q(1)+theta2*eta_q(2))-d(theta1_q,theta2_q);

D_alpha := proc (theta1, theta2) options operator, ...

> delta:=(theta1,theta2,theta3)->theta3-D_alpha(theta1,theta2);

delta := proc (theta1, theta2, theta3) options oper...

Calculation g

> for i from 1 to n do for j from 1 to n do g[i,j]:=sum(F[i,'x']*F[j,'x']*m_alpha('x',theta1,theta2)^alpha,'x'=1..3) end do end do;

Calculation g Inverse

> inv:=proc(t::algebraic)local i;

> i:=t[1,1]*t[2,2]-t[1,2]*t[2,1];

> matrix(2,2,[[t[2,2]/i,-t[1,2]/i],[-t[2,1]/i,t[1,1]/i]]);

> end proc;

inv := proc (t::algebraic) local i; i := t[1,1]*t[2...

> g_inv:=inv(g);

g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...
g_inv := matrix([[(.1e-1*sqrt((.20000*theta1+.25000...

> DD:=(j,theta1,theta2)->eta(j,theta1,theta2)-eta_q(j);

DD := proc (j, theta1, theta2) options operator, ar...

> q := [s()*0.001, s()*0.001,s()*0.001];

q := [6.885, 1.614, 2.135]

> RD:=(j,theta1,theta2)->sum(F[j,'x']*(m_alpha('x',theta1,theta2)^add_alpha-q['x']^add_alpha), 'x'=1..m)/add_alpha;

RD := proc (j, theta1, theta2) options operator, ar...

> init_theta:=[s()*0.0001,s()*0.0001];

init_theta := [.6941, .3851]

> ode1:=-(g_inv[1,1]*RD(1,theta1,theta2)+g_inv[1,2]*RD(2,theta1,theta2));

ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...
ode1 := -(.1e-1*sqrt((.20000*theta1+.25000e-1*theta...

> ode2:=-(g_inv[2,1]*RD(1,theta1,theta2)+g_inv[2,2]*RD(2,theta1,theta2));

ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...
ode2 := (.8e-1*sqrt((.20000*theta1+.25000e-1*theta2...

> ff:=dsolve({diff(theta1(t),t)=ode1,diff(theta2(t),t)=ode2,theta1(0)=init_theta[1],theta2(0)=init_theta[2]},{theta1(t),theta2(t)}, type=numeric, output=listprocedure);

ff := [t = proc (t) option `Copyright (c) 1993 by t...

> with(plots):

> odeplot(ff,[[t,theta1(t)],[t,theta2(t)]],0..30,view=[0..30,-30..30],title=cat("alpha=",convert(alpha,string),"\nq=",convert(q,string),"\nInit_Theta=",convert(init_theta,string)),legend=["Theta1", "Theta2"]);

[Maple Plot]

> with(plots):

> fieldplot([ode1,ode2],theta1=2..30,theta2=2..30,title=cat("alpha=",convert(alpha,string),"\nq=",convert(q,string),"\nInit_Theta=",convert(init_theta,string)));

[Maple Plot]

> with(plots):

> implicitplot({ode1=0,ode2=0},theta1=1..30,theta2=1..30,title=cat("alpha=",convert(alpha,string),"\nq=",convert(q,string),"\nInit_Theta=",convert(init_theta,string)));

[Maple Plot]

> conv:=fsolve({ode1=0,ode2=0},{theta1=1..30,theta2=1..30});

conv := {theta2 = 4.1548, theta1 = 7.0780}

> theta1_q:=eval(theta1,conv);

theta1_q := 7.0780

> theta2_q:=eval(theta2,conv);

theta2_q := 4.1548

> tmp:=(i,j)->RD(i,theta1,theta2)*g_inv[i,j]*RD(j,theta1,theta2);

tmp := proc (i, j) options operator, arrow; RD(i,th...

> ode3:=-delta(theta1,theta2,theta3)*(delta(theta1,theta2,theta3)+tmp(1,1)+tmp(1,2)+tmp(2,1)+tmp(2,2));

ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode3 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...

> ode4:=-delta(theta1,theta2,theta3)*(g_inv[1,1]*RD(1,theta1,theta2)+g_inv[1,2]*RD(2,theta1,theta2));

ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode4 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...

> ode5:=-delta(theta1,theta2,theta3)*(g_inv[2,1]*RD(1,theta1,theta2)+g_inv[2,2]*RD(2,theta1,theta2));

ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...
ode5 := -(theta3-1.3333*(.20000*theta1+.25000e-1*th...

> ff2:=dsolve({diff(theta1(t),t)=ode4,diff(theta2(t),t)=ode5,diff(theta3(t),t)=ode3,theta1(0)=init_theta[1],theta2(0)=init_theta[2],theta3(0)=26},{theta1(t),theta2(t),theta3(t)}, type=numeric, output=listprocedure);

ff2 := [t = proc (t) option `Copyright (c) 1993 by ...

> with(plots):

> odeplot(ff2,[[t,theta1(t)],[t,theta2(t)],[t,theta3(t)]],0..5,view=[0..100,-100..100],title=cat("alpha=",convert(alpha,string),"\nq=",convert(q,string),"\nInit_Theta=",convert(init_theta,string),"\nconv Theta=[",convert(theta1_q,string),",",convert(theta2_q,string),"]"),legend=["Theta1", "Theta2","Theta3"]);

[Maple Plot]

>

>