Rouben Rostamian

MaplePrimes Activity


These are replies submitted by Rouben Rostamian

@Aleks Here are a couple of different workarounds, in addition to what Preben has suggested.

restart;

A := abs(x*Heaviside(x) + x*Heaviside(-x));

abs(x*Heaviside(x)+x*Heaviside(-x))

A1 := simplify(A);

abs(x)

int(A1, x=-1..1);

1

A2 := convert(A, Heaviside);

2*x*Heaviside(x)-x

int(A2, x=-1..1);

1

Considering that your original question appeared more than a year ago, chances are slim that anyone will notice any updates to that question at this time, unless they happen to be looking under the "Recent Conversations" listing.  That I hardly ever do.

I don't see a harm in your asking the question anew.   It will be a good idea to include a link to your last year's question to remove any chance of confusion or accusations of spamming.  And this time don't wait for six months before you react to an answer.

@Carl Love Thanks for your suggestion.  It had not occurred to me to apply combine().

And here's what we get by just adding the point at [0,0]:

display(
	plot(10 + 1/(x-1)^2, x=0..2, thickness= 3),
	pointplot([0,0], symbol=point)
);

@Preben Alsholm That looks good but I don't see why that is preferable over the much simpler

with(plots):
display(
   plot(10 + 1/(x-1)^2, x=0..2),
   pointplot([0,0], symbol=point)
);

which doesn't fail when there are vertical asymptotes, and avoids the overhead of calls to Optimization:-Minimize and Optimization:-Maximize.

 

@Preben Alsholm I do realize that your suggestion of applying Minimize and Maximize is not offered as a serious solution.  I just want to note that it won't work if the function has a vertical asymptote in the range, as in

p := plot(10 + 1/(x-1)^2, x=0..2);

I agree with you that an option to plot, something like 'includeaxis1' ::truefalse with default false, would be a good idea.

@erik10 The max and min values of a plot can be obtained by calling plottools:-getdata.  Then you may calculate the desired range based on that, as done in this proc:

restart;
get_view := proc(p)
    local ymin, ymax;
    plottools:-getdata(p):
    op([2,2], %):
    ymin, ymax := op(1,%), op(2,%);
    ymin := min(ymin,0);
    ymax := max(ymax,0);
    return ymin..ymax;
end proc:    

And here is how you will use it:

plt := plot(2+sin(x), x=2*Pi..4*Pi):
plot(2+sin(x), x=2*Pi..4*Pi, view=get_view(plt));

That said, I much prefer the pointplot method that I noted earlier. 

@Ronan That's good.  Do let us know if you had success with those.

@Rouben Rostamian  Ah, I see now.  I didn't know about the interactive feature of the PDF file format.  I don't think that my suggestion of exporting graphics as EPS will help you at all.  

@acer Setting adaptive=true gets around the problem. Thanks for your suggestion. 

I whittled down the original y to something as simple as y = 1 - cos(t) which exhibits the same issue:

y := 1 - cos(t);
plot(y^(3/2), t=0..2*Pi);

Your suggestion of adaptive=true gets around that problem but I find Maple 2023's default behavior is less than ideal.  I will file an SCR and hope that someone can look into this.

Why keep it a secret?  Tell us the function that you wish to plot!

@mary120 This is what your F looks like near phi=0:

You want to integrate 1/sqrt(-2*F). But F is positive just to the right of origin, so your integrand is complex there.

But I think that your problem lies elsewhere.  Note the vertical coordinates in that graph.  They are of the order 10^(-10).   How much do you trust the coefficients that enter the definition of your F?  Perhaps F(0)=0 and F<0 otherwise?  Does F actually have a root near phi=0.0013 as we see in the graph?  Extremely small changes in the coefficients can change the behavior of F and that can change the value of your integral drastically.

You need to examine the source of your F function and decide which part is meaningful and which is junk.  Try to plot F(phi) to see if it makes sense.

 

@yasi I can't tell what you are saying here.  Try to be more specific.

@JAMET The code you have posted is useless.  How is anyone going to test it?

To get helpful answers, you should learn how to upload your worksheet to this site.  Ask if you don't know how.

 

Do you know how to do that by hand?  If so, then the Maple implementation is quite trivial.

So to clarify, are you asking for the mathematical formulation or a Maple implementation?

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