## 30 Reputation

7 years, 356 days

## dsolve initial conditions...

Maple 2015

Consider a simple differential equation:

f1 := t -> sin(t);
f2 := t -> cos(t);
dsys := {diff(x(t), t) = x(t)*f1(t)+f2(t), x(0) = 3};
solution_procedure := dsolve(dsys, type = numeric, output = listprocedure);

If initial condition is given like this: x(0)=3, then it compiles. But if I define x(0)=f1(3) then it gives an error:

Error, (in dsolve/numeric/process_input) invalid specification of initial conditions, got HFloat(3.0) = sin(3)

How can I handle this?

## Precomputing data for animation...

Maple 2015

I'm trying to make 3D-animation and the procedure takes an enormous amount of time to make frames for it. It took over 10 minutes to create animation consisting of 50 frames (over t=0..1000). If I increase the number of frames or range of time, it just wouldn't reach the end of calculation (keeps evaluating till I lose patience or my faith in Maple)

Is there a way to somehow precompute data for animation (maybe store it somewhere) so that it could gather it from there and the animation construction itself would be faster?

Here's the code: ClassicalTrajectoriesH2X_harm.mw (animation is in the end of the file)

P.S. I have Asus X555LJ; Intel Core i5-5200U, 2.2GHz; 12Gb RAM, for the last few months it presented itself as a rather fast piece of machinery.

## Integrate a procedure...

Maple 2015

I'm trying to numerically integrate components of the procedure-vector.

interim:=t->evalf(int(r1_lab_deriv(x)[1],x=0..t));

interim(5);

Getting this type of error:

Error, (in r1_rot_deriv) invalid input: fdiff expects its 2nd argument, N, to be of type {integer, name, list(integer), list(name), list(name = constant), set(name), set(name = constant), name = constant}, but received t = x

A bit of googling gave me an impression that integration of procedures can be rather quirky.

File: ProcIntergration.mw (Problem occurs in the last lines of the file.)

## Multiple animation windows...

Maple 2015

Is it possible to create several animation windows and run them simultaneously?

I'm feeling that the answer to this question will be no, so I explain my problem. I have an animation of rotating object and I have some quantity that relates to the rotation. I want to see the rotation of object and the propagation of the graph of the quantity simultaneously. Maybe there is a way to somehow split the plot window in two, so in the left would be the rotation animation, and in the right would be the function animation.

## Plotting eigenvectors...

Maple 2015

I'm trying to plot the lines that are based on eigenvectors of the matrix. (Functions r1(t),r2(t), q(t) are defined earlier. I can upload file if necessary)

with(LinearAlgebra):
x1:=t->-r1(t)*cos(Pi/2-q(t)/2):
y1:=t->-r1(t)*sin(Pi/2-q(t)/2):
z1:=t->0:
x2:=t->r2(t)*cos(Pi/2-q(t)/2):
y2:=t->-r2(t)*sin(Pi/2-q(t)/2):
z2:=t->0:
Ixx:=t->m*(y1(t)^2+z1(t)^2)+m*(y2(t)^2+z2(t)^2):
Iyy:=t->m*(x1(t)^2+z1(t)^2)+m*(x2(t)^2+z2(t)^2):
Izz:=t->m*(x1(t)^2+y1(t)^2)+m*(x2(t)^2+y2(t)^2):
Ixy:=t->-m*x1(t)*y1(t)-m*x2(t)*y2(t):
Ixz:=t->-m*x1(t)*z1(t)-m*x2(t)*z2(t):
Iyz:=t->-m*y1(t)*z1(t)-m*y2(t)*z2(t):

InertiaTensor:=t-><<Ixx(t),Ixy(t),Ixz(t)>|<Ixy(t),Iyy(t),Iyz(t)>|<Ixz(t),Iyz(t),Izz(t)>>:

Here I define the matrix as a function of time.

EV:=t->Eigenvectors(InertiaTensor(t));
V1:=t->Column(Re(EV(t)[2]),1);
V2:=t->Column(Re(EV(t)[2]),2);

Producing two eigenvectors also as functions of time.

InertiaAxis1 := t->plot(x, V1(t)[2]*x/V1(t)[1], x = -2 .. 2);
InertiaAxis2 := t->plot(x, V2(t)[2]*x/V2(t)[1], x = -2 .. 2);

InertiaAxis1(1);

And here I've got an error:

Error, (in plot) unexpected options: [-HFloat(7.378655652881484e-6)*x, x = -2 .. 2]

I tried to set "datatype=float"-option in plot function, to evaluate the coefficient by eval-function, it wouldn't help. What does this error mean exactly?

 1 2 Page 1 of 2
﻿