vpasolve/solve not returning all answers

36 visualizaciones (últimos 30 días)
Daniel Wildermuth
Daniel Wildermuth el 19 de Mayo de 2021
Respondida: Shashank Gupta el 26 de Mayo de 2021
Hello everyone,
my code doesnt act like i want him to...
thats the code:
y = 1.1*x.^3+400*x.^2-5.5*10^5*x-9.7*10.^6+exp(-(x+1111));
syms x;
Nullstellen = vpasolve(y);
fprintf('Nullstellen: %f\n',Nullstellen);
yx = diff(y);
XPx = vpasolve(yx)
ive tried it also with solve.. i dont know how to get complex solutions and XPx only gets one solutions but it has to be three..
Thanks in advance!

Respuestas (1)

Shashank Gupta
Shashank Gupta el 26 de Mayo de 2021
Hi Daniel,
I see the equation contain exponential terms. There is no way to ask for more than one solution when the input to vpasolve is not a polynomial equation. This is because the approach to solving equations is numerical, and there is no way to know how many solutions actually exist. If you want to know in detail about how to get multiple solution using vpasolve function, check out this link. Or even you can set "random" flag in the function to get other solution, more detail can be found out here. I see your other 2 solution must be conjugate complex solutions but vpasolve or even solve function won't be able to these complex solution because of presence of exponential terms.
I hope this helps.
Cheers.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by