student_1

305 Reputation

6 Badges

8 years, 249 days

MaplePrimes Activity


These are questions asked by student_1

Why doesn't the graphs of alpha=0 and alpha=1  appear in the following code?

restart:
v:=t->t:
plot([seq(fracdiff(v(t), t,alpha),alpha=-1..1.5,0.5)],t=0..10,view=[0..9.5,0..5],legend=[seq('alpha'=alpha,alpha=-1..1.5,0.5)],color = [red, blue, green,yellow,cyan,magenta],axis[2]=[gridlines=[linestyle=dot]]);

 

if alpha=1;

fracdiff(t, t,alpha)

gives 1. But it doesn't appear in the figure. 

if alpha=0, 

fracdiff(t, t,alpha)

gives t. But it doesn't appear in the figure, also. 

What do you suggest for graphics that are very close to each other in one figure? 

I am asking for graphics in articles to be sent to a scientific journal.

 

a simple example

restart:
with(plots):
f1:=x->0.95*x;
f2:=x->0.99*x;
f3:=x->0.991*x;
p1:=plot(f1(x),x=0..2,color=red);
p2:=plot(f2(x),x=0..2,color=blue);
p3:=plot(f3(x),x=0..2,color=green);
display(p1,p2,p3);

 

 

Dear all,

I have a long Maple code.

After running the code, suppose that we get an error in one of the lines.  I can't simply find the mouse cursor in the line which includes the error.

Question 1: How to find quickly which line has the error? What are your solution methods?

Question 2: Enlarging more or highlighting the cursor mark maybe works. Is it possible?

Dear all, 

I have a time-fractional PDE as follows.  ( denotes Caputo fractional derivative with respect to t) 

for alpha=1, this is a classical PDE and the exact solution is given as follows (in a book)

 

Question: 

 

1) for alpha=1, I want to find the L2 errors and L∞ errors in a table. 

2) for alpha=0.5, Can Maple find a solution (numeric or exact)?

 

MY TRY: (MAPLE 2020.2)

download the code.mw

restart:
with(plots):
PDE:=diff(y(x,t),t)=y(x,t)*diff(y(x,t),x$3)+y(x,t)*diff(y(x,t),x)+3*diff(y(x,t),x)*diff(y(x,t),x$2) ;


#c is an arbitratry constant
c:=4:
exact_sol:=(x,t)->-8*c/3*(cos ((x-c*t)/4))^2;

# I selected initial and boundary conditions as follows
IBC := { y(x,0)=exact_sol(x,0),y(0,t)=exact_sol(0,t),D[1](y)(0,t)=D[1](exact_sol)(0,t),y(1,t)=exact_sol(1,t)};
 	
numeric_sol := pdsolve(PDE,IBC,numeric);

num3d:=numeric_sol:-plot3d(t=0..1,x=0..1,axes=boxed,
            color=[0,0,y]);
exact3d:=plot3d(exact_sol(x,t),t=0..1,x=0..1,axes=boxed);
display(exact3d,num3d);

pdetest(y(x,t)=exact_sol(x,t),PDE,IBC);


EDIT TIME: 14:30 CET

where P(1) and P(2) are NxN matrix functions.

 

My trial code for STEP 0

 alpha times integral w.r.t. x

 Int_x__alpha:=proc(term,alpha): 
 return
select(has,term,x).P(alpha)^T.remove(has,term,x)
end proc: 

 alpha times integral w.r.t. t

Int_t__alpha:=proc(term,alpha):   #alpha times integral w.r.t. t
 return
remove(has,term,t).P(alpha).select(has,term,t)
end proc:

when I run the last procedure for the testing

 Int_t__alpha(Psi(x)^T.C. Psi(t),2);

I get

But it must be 

Because the multiplication is not commutative in Matrices. So, the last procedure must be corrected. 

DETAILS for the procedures:

-------------------------------------------------------------------------------------------------------------------------------------

MAIN QUESTION:

Suppose that we have a PDE as follows 

                                             ...(3)

 

subject to appropriate Initial and Boundary conditions.

-------------------------------------------------------------------------------------------------------------------------------------

STEP 1

  • Find the highest derivative w.r.t. x and w.r.t. t. Then, Let the trial function be the summation derivative of these highest derivatives. I mean

Trial Function:                                           ...(4)

where Psi(x), Psi(t) are Nx1 vectors and C is a NxN matrix.

I can't write a maple code for selecting the trial function.  May be you can.
trial_function:=diff(u(x,t),x,t)=Psi(x)^T.C. Psi(t); 

# I deliberately used ^T instead of ^+ for Transpose.
# If I use ^+, the transpose sign doesn't appear in 2d output. May be you have an other idea.

 

-------------------------------------------------------------------------------------------------------------------------------------

STEP 2

  • Integrate the Eq.4  w.r.t. t from 0 to t, we have
STEP2:=int(  lhs(trial_function) ,t=0..t)=Int_t__alpha(rhs(trial_function),1);


The code must be improved. Firstly, substitute t=s in lhs(trial_function) and then integrate s=0..t 

-------------------------------------------------------------------------------------------------------------------------------------

STEP 3

 

int(lhs(STEP2),x=0..x)= Int_x__alpha(rhs(STEP2),1);

The code must be improved.

-------------------------------------------------------------------------------------------------------------------------------------
STEP 4

  • Integrate Eq.4 w.r.t x

-------------------------------------------------------------------------------------------------------------------------------------
STEP 5

  • Substitute Eq. (5), Eq. (6), Eq. (7) to Eq. (3),
  • I mean substituting  u_x(x,t), u_t(x,t), u(x,t) to PDE.

-------------------------------------------------------------------------------------------------------------------------------------

STEP 6

DOWNLOAD ALL MAPLE CODE: all_code.mw

1 2 3 4 5 6 7 Last Page 2 of 14