dharr

Dr. David Harrington

8270 Reputation

22 Badges

20 years, 359 days
University of Victoria
Professor or university staff
Victoria, British Columbia, Canada

Social Networks and Content at Maplesoft.com

Maple Application Center
I am a retired professor of chemistry at the University of Victoria, BC, Canada. My research areas are electrochemistry and surface science. I have been a user of Maple since about 1990.

MaplePrimes Activity


These are answers submitted by dharr

The DEplot command has arrows=arrowtype with arrowtype equal to 'SMALL', 'MEDIUM', 'LARGE', 'LINE', or 'NONE'. I tried this with fieldplot and it can do at least the 'LARGE' ones, though they are kind of clunky. Cheers, David.
Not sure which equations you want to solve here, but x*y*z gives empty plot for me (v 9.5)(presumably meaning x*y*z=0). For x*y*z=1 it works and two plots can be combined: implicitplot3d({x*y*z=1,(10-x)*(10-y)*(10-z)^2=1}, x=0..10,y=0..10,z=0..10);
Use a list of functions rather than a set, e.g., plot([x^2,x^3,x^4],x=0..1,legend=["x^2","x^3","x^4"]);
Interesting question. I'm not sure if this is the exact answer, but I'm guessing it relates back to the following example assume(z,real); type(z,real); #error - type real does not exist is(z,real); #true So in your more complicated example, the is(f,complex(extended_numeric) checks that both the real and imaginary parts of f are real and finds this to be the case, but type fails to find this because neither are of type real. Not sure why real wouldn't be a type though.
A bit low tech, and not using the units package deg:=evalf(180/Pi); #force floating point (like your calculator) sin(15*deg)
These are described in the help for "procedure". Here is an example that illustrates all but the lexical table: f:=proc(a)::numeric; local b,sq; global c; options arrow; description "I add c+2"; b:=2; a+b+c; end proc; c:=3; f(2):="yuk"; #add to remember table op(f); # body of procedure op(0,eval(f)); # type (= procedure) op(1,eval(f)); # argseq of formal parameters; op(2,eval(f)); # nseq of local variables; op(3,eval(f)); # nseq of options; op(4,eval(f)); # remember table op(5,eval(f)); # description string; op(6,eval(f)); # nseq of global variables; op(7,eval(f)); # Lexical table - NULL output here op(8,eval(f)); # return type
The printf command has many formatting options, but I don't think you can get the comma for the thousands separator.
Interesting - right clicking on the plot and choosing a style of patch with contour only puts contours on one of the plots. for (a) To get contours on both plots use style=PATCHCONTOUR for each plot, but this gives different contours for each plot. To get common contours, you can specify what the contours are: contourlist:=[seq(2*i,i=0..10)]; F:=plot3d( min(x,30*y), x=0..20, y=0..20,style=PATCHCONTOUR,contours=contourlist): G:=plot3d( min(20*x,y), x=0..20, y=0..20,style=PATCHCONTOUR,contours=contourlist): display({F,G},axes=boxed); I assume this works for the three plot case. Not sure about the convex thing ...
dsolve({diff(x(t),t,t) + 2*diff(x(t),t) + 5*x(t) = 3 , x(0)=0, D(x)(0)=0}); gives me the required answer
odeplot allows you to plot multiple plots on the same graph.
with(plots): p1:=plot([(x/(2*sqrt(x)-3)),(-x+5)],x=-10..10,y=-4..6,discont=true, linestyle=[1,3],color=[red,navy], thickness=2): p2:=textplot([[7,1,"nice blue line"],[7,5,"nice red line"]]): display(p1,p2);
I might try to generate random Hermitians RandomMatrix(4,4,generator=0..1.0,outputoptions=[shape=hermitian]); Then find the minimum eigenvalue. If it is negative, create a DiagonalMatrix with the negative of the min ev as diagonal entries and add it to the original. This pushes the eigenvalues up so the smallest is zero, so then you have a positive semidefinite matrix. Probably you want definite or semidefinite, so you could add a random number to the diagnonal entries to push then up further. Then scale the matrix so the trace is 1. This isn't perfectly random I suppose, but maybe it's OK for your application.
An example of something like this is below (I assume you mean spherical co-ordinates). Note the colour function does some automatic scaling. The axes are hardest, since by default they are cartesian. I think you would have to generate the legend separately. plot3d(phi*cos(phi)^3,theta=0..2*Pi,phi=0..Pi/2, coords=spherical,scaling=constrained,color=phi,style=patchnogrid,axes=normal);

Here it is for xi=x3; fairly easy to generalize.

> y:=x3*(a-(x1+x2+x3+x4+x5)-b);

Maple Equation

> dydx3:=diff(y,x3);

Maple Equation

> solve(dydx3=0,x3);

Maple Equation

>

This post generated using the online HTML conversion tool
Download the original worksheet

you could try to change variables so that x=infinity is at a finite value. E.g. u=1-exp(-x) has u=0 at x=0 and u=1 at x=infinity. The d.e. then becomes I think f'(u)*(1-u)+f(u)*f''(u)=0 and you could then do the same for the boundary conditions.
First 79 80 81 82 Page 81 of 82