Rouben Rostamian

MaplePrimes Activity


These are replies submitted by Rouben Rostamian

@Scot Gould Your PDE problem is quite well-posed.  It's not your fault that Maple is returning the wrong solutions.  That's a Maple bug.  See the stripped-down example that I posted a few minutes ago that comes with an exact solution, while Maple gives the wrong answer.

So, for now, you need to solve your prolem in the old-fashioned way by hand.  Hopefully Maple's pdsolve will be corrected in future releases.

@dharr The heat equation with any type of Robin boundary condition is always well-posed.  Physical considerations do not enter the picture.  I suspect that your remarks stem from the unstated desire to have solutions that remain bounded in time.  But that's not a requirement for the solvability of a PDE.

The following example shows that the boundary conditions of the sort that was originally posed by Scott Gould is quite viable.  The solution is easily constructed by hand.  Maple 2024.1 returns the wrong solution.

restart;

pde := diff(u(x,t),t) = diff(u(x,t),x,x);

diff(u(x, t), t) = diff(diff(u(x, t), x), x)

bc := u(0,t) + D[1](u)(0,t) = 0, u(1,t) + D[1](u)(1,t) = 0;

u(0, t)+(D[1](u))(0, t) = 0, u(1, t)+(D[1](u))(1, t) = 0

ic := u(x,0) = exp(-x);

u(x, 0) = exp(-x)

pdsolve({pde, bc, ic});

u(x, t) = 0

That is obviously wrong since it does not satisfy the initial condition.

 

But the solution can be computed by hand through a straighforward separation

of variables technique, whereby we obtain

ans := u(x,t) = exp(t-x);

u(x, t) = exp(t-x)

pdetest(ans, [pde, bc, ic]);

[0, 0, 0, 0]


Download robin.mw

@Gabriel Barcellos If your goal is to plot m versus T and G versus T, you don't need to calculate a sequence of points first.  You can plot them directly.  Here is how.

restart;

with(plots):

plots[setoptions](font=[TIMES,18], labelfont=[TIMES,24]);

eq1 := m = tanh(6*m/T);

m = tanh(6*m/T)

eq2 := G = -T*ln(2*cosh(6*m/T)) + 3*m^2;

G = -T*ln(2*cosh(6*m/T))+3*m^2

The graph of m versus T

 

Equation eq1 provides a relationship between m and T.

Certainly m=0 is a solution for any T>0.

But if T<6, we have two additional solutions of the form m=+a and m=-a

where a depends on T.  The following graph of m versus T illustrates that:

implicitplot(eq1, T=0..9, m=-1..1,
        color=red, thickness=5, view=[0..9, -1.2..1.2]);

Further down, we will need the equation of the curved part of

that graph.  The graph is symmetric about the horizontal axis,

so we need the equation of the upper half of that curve only.

The following proc receives an argument T < 6 and returns the
value of the corresponding m value.
As the curve does not go beyond T=6, the proc fails

to return a value if T>=6. That's by design.

F := proc(T)
        if not type (T, realcons) then return 'procname'(args) end if;
        fsolve(m = tanh(6*m/T), m=1e-9..1);
end proc:

For example, we have

F(4);

.8585596366

 

The graph of G versus T

   

Eq2 gives G as a function of m and T.  But m = F(T) as we saw

in the previous section. Therefore G is determined by T alone.

We wish to plot G versus T, but let us first
make a couple of observations.

 

1. m=0 is a solution of eq1 for all T.  Therefore we plug

m=0 in eq2 and obtain

    G = -T ln(2).

The graph of this branch of the solution is just a straight line.

 

2. If 0<T<6 we have two more solutions to eq1 given by m = F(T)

and m=-F(T).  But G is an even function of m, and therefore both

these solutions yield the same value of G.

 

We conclude that G versus T consists of two graphs.  One extends

for all values of T>0, and the other only for 0<T<6.  Here's what

those graphs look like.

eval(eq2, m=0);
p1 := plot(rhs(%), T=0..9, color="Red", thickness=5);

G = -T*ln(2)

myG := subs(m=F(T), eq2);
p2 := plot(rhs(%), T=0..6, color="Green", thickness=5);

G = -T*ln(2*cosh(6*F(T)/T))+3*F(T)^2

 

 

The graph of G versus T

display(p1, p2, labels=[T,G]);

Download mw.mw

 

 

I was bothered by the fact that the simple answer, b=11, was obtained after combining some considerably large and messy expressions.  I looked and found a very simple solution that avoids the mess.  Maple is not of much help in this alternative approach, so I will just post my non-Maple calculation here.

@vv That's much better than my brute-force calculation, and also more correct in accounting for the order of tangency.  Vote up!

Your equation is y' = (1-x)*y^(-1).  That's the Benoulli equation with P(x)=0, Q(x)=1-x, n=-1.

@imparter 

There have been over 30 exchanges in this thread, and we are not yet close to obtaining the results that you are looking for. It seems to me that you are attempting to program in Maple at a level which is beyond your current state of knowledge. Perhaps you should set this project aside and focus on learning the basics of Maple programming, and then tackle this more advanced problem after gaining sufficient mastery of the basics.  Attempting to force your way through solving this particular problem is not a good way of learning Maple.

@imparter A few more errors fixed.  Pay closer attention to the details.

Query-Comments2.mw

@imparter In the attached worksheet I have pointed out a few issues that require your attention.  See if you can fixed those.

Query-Comments.mw

@imparter This worksheet handles the two sets of data through a for-loop.

Two_data-Fixed.mw

@imparter Upload your worksheet so that I may modify it.

@imparter I don't see a question in what you have written, so I can't tell what sort of response will be of help to you.  But for one thing, I see that you have not included the linestyle=dash in your code that I had suggested.  Did you try that?

@imparter The plot option linestyle=dash will plot with dashed lines.  Additionally, you may specify a list of colors for the graphs if you don't like the default colors.  So you may replace your current plot commands with

my_plot_1 := plot([%], r=0..h(z), color=["Red", "Green", "Blue", "Cyan"], linestyle=solid);
...
my_plot_2 := plot([%], r=0..h(z), color=["Red", "Green", "Blue", "Cyan"], linestyle=dash);

and then superimpose the two plots with

plots:-display(my_plot_1, my_plot_2);

 

Posting a picture of your worksheet is useless because I can look at it but cannot execute it. To get helpful responses, upload your Maple worksheet.  How?  In the message editor's toolbar, click on the big fat green arrow to upload your worksheet.

 

@imparter I don't know much about HPM and honestly, am not much interested in it.  From the page of calculations that you have supplied, it seems to me that the calculations are elementary and can be done easily by hand, if you know what you are doing, which I don't.  You don't need Maple for those calculations.

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