## How do I make this program run...

Dear,

Last week I made a question, which was kindly answered with the conclusion there might be no solutions.
Now as this cannot be (I'll explain later), I have eliminated all extra aspects of the program to just show the code where the problem is occuring. You can find it via this link prob.mw

The problem is as follows:
I have 3 points, of which I need to determine the distances from the 0,0 point. The distance between the points are known and the angle between the neutral axis and the line through a point are also known. The set-up is shown in the rough sketch. (k1,k2,k3,corner 1, corner 2, corner 3 are known; a,b,c are unknown.). With these values known, I can easily calculate a,b,c via the cosine rule.

However I want to make a sensitivity analysis for a parameter that determines the 3 corners (called f in the code). Herefore I need to become an answer of a,b,c in function of f and only f (as I need them in following calculations which are not shown in the code). However this doesnt seem to work. The program does not return a solution.

Do you guys know how I can make sure that this program is runnable, so I can get my a,b,c values in function of f? I'd be very very very thankful as I'm stuck with this crucial part of my calculation for weeks.

With kind regards
Mathieu

## How to make my program runnable again...

Dear,

I have a perfectly working when all parameters are known (figure 1), however I want to perform a sensitivity analysis by derivating the code if one parameter is unknown. Because of multiple possible answers and because of the complexity of the formula, I cannot run this script and get solutions. Any ideas how I can this calculation lighter so it is able to run? Values should be real and positive (so 1 or 2 solutions are the only one I'm interested in)

Any ideas, how I can make this code runnable? (file is below)

I'm stuck on this for a while now :/ So I hope someone will be able to help me

Question.mw

Figure 1: [URL=http://s1240.photobucket.com/user/laggstar/media/Parameter%20f%20known.png.html][IMG]http://i1240.photobucket.com/albums/gg494/laggstar/Parameter%20f%20known.png[/IMG][/URL]

Figure 2: [URL=http://s1240.photobucket.com/user/laggstar/media/Parameter%20f%20unknown.png.html][IMG]http://i1240.photobucket.com/albums/gg494/laggstar/Parameter%20f%20unknown.png[/IMG][/URL]

## Why the parameter I make in MapleSim becomes <...

I make a new parameter in MapleSim, but I don't konw why it becomes to something as shown in the above figure.

## changing values of parameters within dsolve...

Dear all,

I'm trying to solve a system of two differential equations which depend on two parameters, which I call "K" and "polytrope" in my worksheet. The two differential equations are for the density rho(r) of the star and it's mass m(r). What I'm trying to do with dsovle is to change the values of K and polytrope once rho(r) drops below a certain value and letting dsolve continue the integration with the new values for the parameters. I was thinking about using events, but I'm not sure how to do it, since Maple doesn't seem to allow the use of "<" and ">" in the trigger of an action and I'm not sure how to let dsolve distinguish between the cases rho(r)<rho_crit and rho(r)>=rho_crit.

 > restart;
 >
 > polytrope1:=4./3;
 (1)
 > polytrope2:=2.;
 (2)
 > K2:=10^12;
 (3)
 > rho_crit:=4.*10^(-14);
 (4)
 > K1:=K2*rho_crit^(polytrope2-polytrope1);
 (5)
 > odes := diff(rho(r), r) = -(rho(r)*(1+K*rho(r)^(polytrope-1)/(polytrope-1))+K*rho(r)^polytrope)*(4*Pi*r^3*K*rho(r)^polytrope+m(r))/(K*polytrope*rho(r)^(polytrope-1)*r*(r-2*m(r))), diff(m(r), r) = 4*Pi*rho(r)*(1+K*rho(r)^(polytrope-1)/(polytrope-1))*r^2;
 (6)
 > r0:=10.^(-10);
 (7)
 > ics:=rho(r0)=10.^(-13),m(r0)=0;
 (8)
 > TOV:=dsolve({odes,ics},numeric,parameters=[K,polytrope]);
 (9)
 >

## how i can solve set of non linear differential equ...

hi...plese help me

:

how i can solve set of non linear differential equation with a unknown parameter with numeric role in maple software??

thank a lot ...

## Simulate and plot a continuous function with varyi...

Hi there,

I am trying to simulate the behaviour of an equation in the continuous domain for two different populations given a set of parameters.

S(t) = exp(-alpha·D(t)-beta·G·D^2(t))

where alpha and beta are known (and are different for two populations of cells), and G may be:

Case 1: G=1

Case 2: G = (D1^2+D2^2+2*D1*D2*exp(-lambda*T))/D^2 (where D1=D/3; D2=2·D/3; and lambda is also known)

For the Case 1, I need to simulate for different values of D. Even if for the purposes of this case, D(t) = D0 (a constant); I would like to know how I would do it for a time-dependent D, for example,  D(t) = D0·t, with a varying D0, for example in the range [1..8].

For the Case 2, I need to simulate under different values of T (for example in the range [1..8]), letting D be a constant, known value. In this case, D(t) is a piecewise function:

D(t) =
= D/3 if t=0

= 2·D/3 if t=T
= 0 for any other t

I really don't know how to write the expression for S(t) in this case.

I guess I need an array to store as many instances of S as numbers of parameters I have (8 values for D0 int he first case, and another eight for T).

And besides, it needs to be a function of t (even if in the first case, it is not; I'd like to simulate as if it were).

So I am at a loss when it comes to writing the expressions of S(t), and having it evaluated (and its values plot in the same graph using a palette for differente parameter values) for say, t=0..100.

Attached is my attempt: Mapleprimes_LQ_model_simulation.mw

Any ideas?

Thanks,

jon

## ODE: Fit parameters to multiple experiments...

Hi,

I'm trying to fit some parameters to the data of multiple slightly different experiments.

I've written a function which returns the sums of the error for all experiments.

The function which has to be minimized does the following:

1) Set parameters for the model ODE based on the input parameters

2) calculate the difference (numeric solution of ODE <-> experimentel data)

3) repeat step 1+2 for all experiments

4) return the sum of all differences

The function works as aspected. But when I try to minimize it by calling:

I got an error:

"Error, (in dsolve/numeric/process_parameters) parameter values must evaluate to numeric, got A = A"

For some reason Maple isnt able to set the new parameters of the ODE.

Anyone got an idea how to fix this?

## How to solve non-linear ODE numerically...

Hi,

I'm trying to solve the following differential equation numerically with dsolve:

but dsolve gives me this error:

> res := dsolve(DGL, numeric, parameters = [y0, A, B, C, E]);
Error, (in DEtools/convertsys) unable to convert to an explicit first-order system

I think the problem is that I use the wrong solver. Does Maple provide a solver which is capable of solving this kind of equations (nonlinear ODE)?

## Parameter estimation with differential equations...

Dear all,

I have one quetion. I have written maple code based on Dr.Robert J. Lopez's one.

Here is my code.

> q1 := diff(x(t),t) = -a*x(t)*y(t) + b*z(t);

q2 := diff(y(t),t) = -a*x(t)*y(t) + b*z(t);

q3 := diff(z(t),t) =  a*x(t)*y(t) - b*z(t);

q4:=k(t)=x(t)*y(t)/z(t);

ic := x(0)=10,y(0)=10,z(0)=0;

C := < I put Experimental data….>:

> SS := proc(a,b)

local F, V;

if not type([a,b],['numeric','numeric']) then return 'SS'(a,b);

elif a<0 or b<0 then return 1e100;

end if;

F := dsolve(eval({q1,q2,q3,q4,ic},{:-a=a,:-b=b}),[x(t),y(t),z(t),k(t)],numeric, output=Array([seq(k,k=0..N)]));

V := convert(Column(F[2,1],5),Vector);

Norm(V-C,2);

end proc:

I just put one more equation -eqn4. it is not differential equation.

I currently have error massage from maple. Could you let me know how I solve the equations in this case?

Thanks.

## Non linear system...

Dear all;

I need your help to get all the solution of this nonlinear  system  with four parameters: r1, r2, q1, q2  assumed to be positives. Let the system:

the first equation is: r1*x*(1-x/q1)=x*y/(1+x)

the second equation: r2*y*(exp(-y)-q2)=-x*y/(1+x)

How can get the positive solution ( x, y) of the previous system.

## How do I refer to the symbol name passed as argume...

Hi experts

In a procedure with no declared parameteres I would like to return (print) the passed arguments (expecting Matrix structures) in a modified form along with the name of the symbol holding the structure passed as arguments.

That is, the procedure just iterates through the _passed arguments in a for-loop to display the name of the the passed argument (the symbol), a colon and then the modified matrix structure.

My problem is that when looping from i to _npassed arguments, refering to _passed[i] gives me the evaluated form.Tat is what I need to modify the structure but not to list the symbol name.

Say I wanted to print a transposed version of my passed matrices. Then I would call

M:=<<1,2>|<3,4>>;

myProc(M);

And the result I want would be

M:

But I don't know if _passed holds the symbol names or just the evaluated versions of the passed arguments??

And theoretically the passed argument (assuming a matrix) could be the matrix structure put directly in the procedure call, in which case there is no symbol to refer to.

I hope you get my question and can help me out.

Thanks

Simon

## Solving a system of non-linear equations for diffe...

I have the following system of non-linear equations and want to find their solutions experimenting with my parameters. I also want to restrict the solutions to be non-negative. I have done the following, but i am sure it exist a more efficient way. Can somone help on this?

eqns := [A = (gr_c+delta)*kh^(1-alpha)/sav_rate, theta = Rk*(Rh-Rk)/(gamma*((Rh-Rk)^2+sigma^2)), theta = 1*1+kh, Rk = 1+rk-delta, Rh = 1+rh-delta, rk = A*alpha*kh^(alpha-1), rh = A*(1-alpha)*kh^alpha, sigma = sigmay/theta, varrho = Rap^((eps-1)*eps/(1-gamma)), Rap = Rk^(1-gamma)+(1-gamma)*Rk^(-gamma)*theta*(Rh-Rk)-.5*Rk^(-gamma-1)*gamma*(1-gamma)*theta^2*((Rh-Rk)^2+sigma^2), R = Rk+theta*(Rh-Rk), beta = ((1+gr_c)/R)^(1/eps)/varrho];
print(`output redirected...`); # input placeholder
[
[
[
[
[ (1 - alpha)
[ (gr_c + delta) kh
[A = ----------------------------,
[ sav_rate
[

Rk (Rh - Rk)
theta = ---------------------------, theta = 1 + kh,
/ 2 2\
gamma \(Rh - Rk) + sigma /

Rk = 1 + rk - delta, Rh = 1 + rh - delta,

(alpha - 1) alpha
rk = A alpha kh , rh = A (1 - alpha) kh ,

/(eps - 1) eps\
|-------------|
sigmay \ 1 - gamma /
sigma = ------, varrho = Rap , Rap =
theta

(1 - gamma) (-gamma)
Rk + (1 - gamma) Rk theta (Rh - Rk) - 0.5

(-gamma - 1) 2 / 2 2\
Rk gamma (1 - gamma) theta \(Rh - Rk) + sigma /,

/ 1 \]
|---|]
\eps/]
/1 + gr_c\ ]
|--------| ]
\ R / ]
R = Rk + theta (Rh - Rk), beta = ---------------]
varrho ]
]
vals := [alpha = .36, delta = 0.6e-1, sigmay = sqrt(0.313e-1), gamma = 3, eps = .5, gr_c = 0.2e-1, sav_rate = .23];
eval(eqns, vals);
print(`output redirected...`); # input placeholder
[
[
[
[ 0.64 Rk (Rh - Rk)
[A = 0.3478260870 kh , theta = -----------------------,
[ / 2 2\
[ 3 \(Rh - Rk) + sigma /

0.36 A
theta = 1 + kh, Rk = 0.94 + rk, Rh = 0.94 + rh, rk = ------,
0.64
kh

0.36 0.1769180601
rh = 0.64 A kh , sigma = ------------,
theta

0.1250000000
varrho = Rap ,

1 2 theta (Rh - Rk)
Rap = --- - -----------------
2 3
Rk Rk

2 / 2 2\
3.0 theta \(Rh - Rk) + sigma /
+ --------------------------------, R = Rk + theta (Rh - Rk),
4
Rk

2.000000000]
/1\ ]
1.0404 |-| ]
\R/ ]
beta = ---------------------]
varrho ]
]
eqns := [A = .3478260870*kh^.64, theta = (1/3)*Rk*(Rh-Rk)/((Rh-Rk)^2+sigma^2), theta = 1+kh, Rk = .94+rk, Rh = .94+rh, rk = .36*A/kh^.64, rh = .64*A*kh^.36, sigma = .1769180601/theta, varrho = Rap^.1250000000, Rap = 1/Rk^2-2*theta*(Rh-Rk)/Rk^3+3.0*theta^2*((Rh-Rk)^2+sigma^2)/Rk^4, R = Rk+theta*(Rh-Rk), beta = 1.0404*(1/R)^2.000000000/varrho];
print(`output redirected...`); # input placeholder
[
[
[
[ 0.64 Rk (Rh - Rk)
[A = 0.3478260870 kh , theta = -----------------------,
[ / 2 2\
[ 3 \(Rh - Rk) + sigma /

0.36 A
theta = 1 + kh, Rk = 0.94 + rk, Rh = 0.94 + rh, rk = ------,
0.64
kh

0.36 0.1769180601
rh = 0.64 A kh , sigma = ------------,
theta

0.1250000000
varrho = Rap ,

1 2 theta (Rh - Rk)
Rap = --- - -----------------
2 3
Rk Rk

2 / 2 2\
3.0 theta \(Rh - Rk) + sigma /
+ --------------------------------, R = Rk + theta (Rh - Rk),
4
Rk

2.000000000]
/1\ ]
1.0404 |-| ]
\R/ ]
beta = ---------------------]
varrho ]
]

solve(eqns, [Rk, Rh, varrho, Rap, beta, R, A, sigma, theta, rk, rh, kh]);

## Proper way to use CodeTools:-Test...

Cause CodeTools:-Test will not eval the paramater:

```
f := x -> x+1;

y := 2;

CodeTools:-Test( f(1), 2); # this will work as normal

CodeTools:-Test( f(1), y); # this will not work because `y` will not eval as 2

```

So current my solution is

```
test := subs(y=2, () -> CodeTools:-Test( f(1), y));

test();

```

I don't know is there any more proper solution for this.

More general, is there a way to force evaluate an `uneval` parameter?

## Multi-dimensional matrices/arrays...

Hi there,

I was trying to simulate the behaviour of a one-variable, discrete-time function having three parameters.

M[n+1]=(b·theta^(m)·R[n])/(theta^(m)+R[n]^m)

defined for b, theta, m > 0

Say I want to simulate the function for the following values

b := [seq(1 .. 10, 1)];
theta := [seq(1 .. 5, 1)];
m := [seq(1 .. 2, 1)];

for n from 1 to 10.

I guess I need to build a 4-dimension array. But I was not able to find the right way to do this: should I use the Array strucutre? and if yes, how would I do it? As far as I've read, indexing would be an issue: should I create special indexing functions?

If I'm not wrong Maple matrices (Matrix) are just 2D.

Once the values of M computed, I would like to generate the corresponding plots, varying one parameter while the other two are fixed, and drawing the different M's in the same plot.

How can I achieve this?

Furthermore, if I would like to generate all possible combinations, I guess I would need to insert the solution given to the above question within a for loop. Will Maple display all plots or will it overlap/overwrite the preceding plot if used within a loop?

Thanks,

jon

## Bifurcation and Equilibria points...

Hello,

One again, I have a problem to solve some bifurcation problem using maple.

Discuss the existance of Equilibria and determine any possible bifurcation.

x'=r*x-ln(x+1);

where \$r\$ is a parameter.

many thinks for your help and suggestion.

 1 2 3 4 5 6 7 Page 3 of 7
﻿