MaplePrimes Questions

 

 

 

I have tried to solve a matrix with the function "LinearSolve" as seen in the picture, but instead of solving it just gives me back the operation i wrote (3). My which is to solve an equation system a quick as possible - have a templet fill in the matrix and press enter. I thought this "LinearSolve" function was the easiest way of doing. I know that I can right click and choose the function, but I want it as a command.

 

Any solutions on how to use the "LinearSolve" command to solve an equation system?

 

Hi, 

I'm solving a 2D grid with some finite-diference methods. The result is a surface, i.e f(x,y) = z. Where X and Y and points on a grid. 

 

I then need to integrate over this grid, i.e

int(f(x,y),[x=0..10, y=0..10]) 

I have tried interpolating the grid. I've used CurveFitting:-ArrayInterpolation() to interpolate points in this 2D space and then integrate over them. 

I'm using a 30x30 grid, but this interpolation scheme takes far too long. The function generated from the ArrayInterpolation creates an interpolation every time a point is evaluated, which I assume is why the integral is very computationally expensive. 

I would like to create a piecewise analytic function from the 2-D grid, perhaps using CurveFitting:-Spline(), however from my understanding this only works for 1D objects? 

Is there any better solution for integrating a 2D numeric grid?

Thanks in advance

After using the Groebner and PolynomialIdeals packages, Maple goes into a long calculation when I make an entry of the form

name:=polynomial expression. This can take 10's of minutes for an expression of two lines. The only solution I have found is to save the sheet and restart it and enter the line name:= etc. before loading Groebner and PolynomialIdeals. This is most inconvenient. Is there a better workaround?

Hello

I am working my way back to use Maple for some calculations I did in the past.   ListTools seems to have some of the functions I need but I couldn't find anything that gives me the position of all groups of repeated elements in a list of a list.  For instance, ListTools:~MakeUnique removes the copies of all repeated elements but it seems that there is no counterpart function that gives the position of the repeated elements, is there?

Search and SearchAll return position but they seem to be the only ones.  

Example:

a:=[[x+y+z],[2*x+y+z],[x-y+z],[2*x+y+z]];

and the expected output would be

pos:=[[1],[2,4],[3]];

Many thanks

Ed

 

HI there,

 

I have the following problem: I want to improve the runtime of my script (Maple 2016) and want to use multithreading/tasking.

First I have this script (let's start with an easy example):

>restart;
  with(LinearAlgebra): 
  with(Student[MultivariateCalculus]):
  with(plots):
  with(Statistics):
  with(Threads):
  with(RealDomain): #I know, I don't need all of that here

>cdf := x-> int(PDF(GammaDistribution(4.5/100,2.5),xi-0.068),xi=0.068..x):
>N:= 20:
>sample := (i) -> solve( (1/(2*(N+1))+1/(N+1)*i)=cdf(x),x): #this is an equidistant sampling

> smpl := [Seq(sample(i),i=1..(N-1))]; #I try to run a multithread seq -> got it from the documentation

   Error, (in assuming) when calling 'Engine:-Process'. Received: 'type `System` does not exist'

I get this error message, but I don't really know what to do with it. I googled and searched, but I couldn't find useful help. Note that when I run this command, I still use only one processor (at least until it returns the error). I also tried:

>smpl := Map(sample,sample_dists);>N:= 20:
   Error, (in assuming) when calling 'Engine:-Process'. Received: 'type `System` does not exist'

I also tried to implement it with threads:

> cont := proc()
      global mutex_sample, smpl:
      smpl := [op(smpl), _passed]: #add the results of the tasks to the smpl var.
      print("Sampling Done");
   end proc:

> sample := proc(cdf, min, max, N) #samle the region
      local output:
      seq(solve(,x),i=0..(N-1)); #return value
   end proc:

> startSampling := proc()
      local sampling_tasks,i:

      print("Starting Sampling!");
      sampling_tasks := []:
      for i from 1 to kernelopts(numcpus) do #for each processor
          sampling_tasks := [op(sampling_tasks), Task=[sample, cdf, i/(kernelopts(numcpus)+1),(i+1)/(kernelopts(numcpus)+1),ceil(N/kernelopts(numcpus))]]; #sample a region
      end do:

      print("Starting Sampling Tasks!");
      Threads:-Task:-Continue( cont, op(sampling_tasks)); #start sampling threads
      print("Sampling Tasks started!");
   end proc:

> Threads:-Task:-Start( startSampling ); #start everything

"Starting Sampling!"
"Starting Sampling Tasks!"
"Sampling Tasks started!"
Error, (in assuming) when calling 'Engine:-Process'. Received: 'type `System` does not exist'

 I know I'm doing here something systematically wrong, but I can't figure it out.

I would be very greatful, for your help or insiged.  

 

EDIT: 
1) The presented script might doesn't make sense (or might be pointless), because I have a much larger and more complex (model) in my original script. But, my script didn't work (exactly same error). So, I tried this simple example, to figure out what the problem is. But it didn't work either. I thought, it might be better (didactically) to find the problem in the simple code. It might be easier to explain in a forum and easier to analyse. (SO I could then see why my more complex code is not working).

2) I was running the script in Linux (Ubuntu 16.04 x64) and it produced this error. I also run the script in Windows 10.2 where I got the same error (and sometimes I got an "Maple Kernel cannot be reached" message where I had to restart Maple.

3) I noticed that solve sometimes returns a complex solution (usually it returned: "value + 0.0 I"). I therefore added "with(RealDomain): ", which had the consequence that some sample points were "NULL". I know that, and that is another issue, which I'm not bothered about (right now).

SOLUTION: (most likely)
Thanks to everyone who replied. But Carl_Love probably is right by pointing out that int, solve, fsolve ... are not thread-safe and therefore caused the crahses/error messages, while calling thesefunctions in different threads.

Hello

I wonder if there is a function to retrieve only the monomials from a multivariable polynomial in x, y and z. Below is one such polynomail.

 

theta[2]*x3*x0-theta[8]*x2*x1*x0-theta[2]*x2*x1-theta[6]*theta[2]*x2*x0^2-theta[4]*theta[2]*x2*x0-theta[2]*theta[7]*theta[10]*x1*x0^3+theta[8]*theta[2]*theta[9]*x1*x0^2-theta[2]*theta[5]*theta[10]*x1*x0^2-theta[2]^2*theta[3]*theta[10]*x0^3+theta[6]*theta[2]^2*theta[9]*x0^3+theta[4]*theta[2]^2*theta[9]*x0^2

and the result

[x3*x0,x2*x1*x0,x2*x0^2,x2*x0,x1*x0^3,x1*x0^2,x0^3,x0^2]

Many thanks

 

Ed

 

I downloaded a maplesoft apps, and wat to activate, an activeation form displayed requiring me to put in a purchase code of which i don't know or have. How can i get it or where can i find it? please some one help.

Does anyone know what the default function is for the pre-subscript and pre-superscript?  I would like to use them for a variable name to represent the local reference frame and global reference frame in my multibody calculations.  Thanks

1.I want to plot (x-x0)^2 from x=0..10 with a value for x0 in the plot function not in the procedure. The procedure should 

test x against x0 and if x<x0 then y=0 else y=(x-x0)^2

2.Is it possible to use explore and use x0 as a slider?

 

Regards

Staffan

 

http://mathforum.org/kb/message.jspa?messageID=685890

i find equation above

for ii from 0 by 5 to 365 do
eq1 := x^2 + y^2 = arccos(x/r);
eq2 := y = evalf((atan(-1) - ii*Pi/180)/Pi)*(-1.0)*x;
xy := fsolve({eq1, eq2});
print("M",rhs(xy[1]),rhs(xy[2]),","):
od:

but i do not understand how to set r

i use a line scanning 365 degrees to get the path of swirl 

would like to get path data for c# WPF animation

but this method may have multiple solution because an intersection of swirl 

and a line can have multiple points

how to change rotation angle into slope of line?

with(MTM):
evalf(solve(atan(-1) - 45*Pi/180 = atan(x), x))*180/Pi;

above can not be solved

 

if angle is 30 degree

is following correct?

with(MTM):
angle := 30:
evalf((atan(-1) - 30*Pi/180)/Pi)*(-1.0);

Hello people in mapleprimes,

I have a question:
What are you doing when you use maple in calculating, for example, your paper,
to avoid missing, for example, variables you use, or for your needs to look back the outcomes you obtained before?
If this is a paper-using work, on considering what to do next, you will read some pieces of papers you wrote and
on which you had calculated and obtained necessary equations. But, with small monitor 13 inch, and with
inconvenience of dealing with things in PC, compared with papers, I feel some stress in using maple in writing a paper.
So, now, I am asking you what kind of methods you has devised to make what you are writing compact and easy,
for you to handle with what you are writing.

I know surely that there are the document block, which enables output or input to not be shown, the workbook,
which is helpful in putting attached worksheets or jpg files together at one workbook, and the distinction of ":" and ";",
which in the case of the former, hides expressions in the outcome.

But, yet, I want to ask you about the ways you use to make it easy to write something.
If you have some, I will be very glad if you show it here.

Best wishes.

taro

 

 

 

 

 

 

I would like compute the vertices of the convex hull of finitely many points in some \mathbb{R}^{n}, where the coordinates of these points could be rational numbers or irrational numbers like \sqrt{2}.

I know that PolyhedralSets[ConvexHull] is a direct command, however it does not support irrational numbers. But if I transform all coordinates into floating point numbers, for some rational numbers the rounding error would be large enough to affect the result. For example, after the transform some collinear points are no longer collinear.

Thanks!

 

 

 

Dear All

I need to reduce system of differential equation system into triangular system which I came to know can be done using Maple package "DifferentialAlgebra", but I do not know how to use this package for triangularization.

The differential system is DetSys derived from  some PDE:

 

with(PDEtools):

DepVars := [f(u(x, t)), u(x, t)]; 1; declare(f(u(x, t)), u(x, t))

[f(u(x, t)), u(x, t)]

 

f(u(x, t))*`will now be displayed as`*f

 

u(x, t)*`will now be displayed as`*u

(1)

PDE1 := diff(u(x, t), t, t)-(diff(u(x, t), x, x))-f(u) = 0

diff(diff(u(x, t), t), t)-(diff(diff(u(x, t), x), x))-f(u) = 0

(2)

G := [xi(x, t, u), tau(x, t, u), phi(x, t, u)]

[xi(x, t, u), tau(x, t, u), phi(x, t, u)]

(3)

declare(G)

phi(x, t, u)*`will now be displayed as`*phi

 

tau(x, t, u)*`will now be displayed as`*tau

 

xi(x, t, u)*`will now be displayed as`*xi

(4)

DetSys := DeterminingPDE(PDE1, G, integrabilityconditions = false)

{-2*(diff(diff(tau(x, t, u), t), u))+diff(diff(phi(x, t, u), u), u), 2*(diff(diff(tau(x, t, u), u), x))-2*(diff(diff(xi(x, t, u), t), u)), 2*(diff(diff(xi(x, t, u), u), x))-(diff(diff(phi(x, t, u), u), u)), 2*(diff(tau(x, t, u), x))-2*(diff(xi(x, t, u), t)), 2*(diff(xi(x, t, u), x))-2*(diff(tau(x, t, u), t)), diff(diff(tau(x, t, u), x), x)+2*(diff(diff(phi(x, t, u), t), u))-(diff(diff(tau(x, t, u), t), t))-3*(diff(tau(x, t, u), u))*f(u), diff(diff(xi(x, t, u), x), x)-2*(diff(diff(phi(x, t, u), u), x))-(diff(diff(xi(x, t, u), t), t))-f(u)*(diff(xi(x, t, u), u)), -(diff(diff(phi(x, t, u), x), x))+diff(diff(phi(x, t, u), t), t)-phi(x, t, u)*(diff(f(u), u))+(diff(phi(x, t, u), u))*f(u)-2*(diff(tau(x, t, u), t))*f(u), diff(diff(tau(x, t, u), u), u), diff(diff(xi(x, t, u), u), u), diff(tau(x, t, u), u), diff(xi(x, t, u), u)}

(5)

for EQ in sort([op(DetSys)], length) do EQ = 0 end do:

 

 

Download [1117]_Symmetries_determination.mw

Regards

USB and or RS232 porting from inside maple console. Title explains what i need, or how to port an externally built java app into the maple console, either which will engine my dispatch tonight

First 955 956 957 958 959 960 961 Last Page 957 of 2308