65 Reputation

5 Badges

3 years, 335 days

MaplePrimes Activity

These are questions asked by Rohith

Hi All,

I have been using trignometric functions where the inputs are sometimes intergers. When ever I am having an interger as argument for trignometric functions the out is unevaluated.

expression := 3*sin(z)+9*sin(x)*(1/4);
values := [x = 1, z = 1.570796327];

Now if I evaluate the above expression
eval(expression, values);
output is something like below


but if I change the x value from 1 to 1.0

expression := 3*sin(z)+9*sin(x)*(1/4); values := [x = 1.0, z = 1.570796327];
My output is 4.893309716;

I am doing ths inside a procedure hence I cannot change the values to float manually, Is it possible to change the intergers to floats when using trig functions??

Thank you

I am trying to find local extrema for multi variable functions. Using Hessian matrix and eigen values I am able to find the global extrema. Also by using boundary conditions I am able to solve for critical points with in given domain.

But, when there is no maxima or minima inside a local domain, It is believed to be minima/maxima lies on one of the boundaries(that point cannot be a critical point). I want to add this boundary points to the list of critical points


Term := x^3+x^2*y-2*y^3+6*y;
critical points := [[x = .6928203232, y = -1.039230485], [x = -.6928203232, y = 1.039230485], [x = 0., y = -1.], [x = 0., y = 1.]]
boundaries := [[-1<=x],[ x<=1], [-1<=y], [y<=1]];

now I want to read the boundaries as input and get the output as
boundaries :=[[x = -1,y =0],[x = 1,y =0],[x = 0,y =-1],[x = 0,y =1]];

When I did this manually I observed boundary points are saddle, since eigen values are mixed positive and negitive. But, my interest is to find the function value at boundaries.

Note: I believing value of other variables at perticular boundary is zero. In general I have to deal with multivariable functions with more than 3 variable.

Thank you



I have been working on Maxima and minima, I am able to extract the eigen values for the expression.
Based on following conditions I am able to find out the critical point is maxima or minima or saddle or inconsistant

If all the eigenvalues are positive, the point is a minimum.
If all the eigenvalues are all negative, it's a maximum.
If some eigenvalues are positive, some are negative, and none are zero, then it's a saddle point.
If any eigenvalues are zero, the test is inconclusive


I want to return all the critical points and their extrema.
just for example : For one perticular function I got a Eigen values as which I can find using sign function.

EigenValues := [[-.381966011250105+0.*I, -2.61803398874989+0.*I], [.414213562373095+0.*I, -2.41421356237309+0.*I]]
signDetails := [seq([seq(sign(EigenValues[i][j]), j = 1 .. nops(EigenValues[i]))], i = 1 .. nops(EigenValues))] #

 signDetails :=[[-1, -1], [1, -1]]

Now if I have a 0 in a list. Sign function returns 1 for 0, which is incorrect. How can I handle such conditions


if I have


EigenValues := [[-.381966011250105+0.*I, -2.61803398874989+0.*I], [.414213562373095+0.*I, -2.41421356237309+0.*I], [0, 2]]

I would like to have output [[-1, -1], [1, -1], [0, 1]],

I would like to know how is it possible return output based on above list

in this case my return shouble something like this [maxima, saddle, inconclusive].

Thank you

Hello Everyone,


I have been working on a multi variable expression. I would like to have the intervals where the function is monotonically increasing. I am trying to study any available method for multivariable expressions.

I came across various papers and sites which are explicitly mentioned single variable equations. finding out the critical points and studying the sign of the first derivative. Same cannot be applied for the multi variable expression.

above link explain for single variable functions. I would be grateful if someone could explain me a method or idea  which helps me out in solving for multivariable functions


Thanks a lot in advance

I have two list in which I need to substitute variables from on elist with variables in other list in an expression.

rootElements := [[a, Integer, c, Integer, -k*a, b], [Integer, c, a, Integer, b, -k*a], [Integer, a, b, -k*a, c, Integer], [Integer, a, Integer, c, -k*a, b]];

list1 := [[a[maximum], 0, c[maximum], 0, (-k*a)[minimum], b[minimum]], [0, c[minimum], a[maximum], 0, b[maximum], (-k*a)[maximum]], [0, a[minimum], b[maximum], (-k*a)[maximum], c[maximum], 0], [0, a[minimum], 0, c[minimum], (-k*a)[minimum], b[minimum]]]

let the term be

term :=a*c/(k*a+b);

Terms := seq(applyrule([seq(rootElements[i][j] = list1[i][j], j = 1 .. nops(list1[i]))], term), i = 1 .. nops(list1));

my outputs  are

a[maximum]*c[maximum]/(k*a[maximum]+b[minimum]),# k*a should be minimum, becuae I substituted a earlier it is failing
a[minimum]*c[maximum]/(k*a[minimum]+b[maximum]),# k*a should be maximum, becuae I substituted a earlier it is failing

is there a way to substitute larger terms first[like -k*a first] and goes to smaller variable??

 I am using applyrule since algsubs cannot do for more than one substitution.Also, I would be glad if any other alternative is provided.
thank you

1 2 3 4 Page 1 of 4