solve an equation by iterration
Show older comments
Hello everyone!
I haven't been using matlab for a while and I struggle on a simple equation.
I need to obtain this result: Sigma = solve( Sigma== Sigma0*(1+k*(Epsilon-Sigma/E))^n; ) All parameters sigma0, k, Epsilon, E and n=0.2; are known. The only reason for witch I need matlab is the fact that sigma (the unknown), is on both side of the equation, and I need a iterative solver.
I though about the ode45 function but I can not find a example that fit's what I want to obtain. if I am not mistaken, I can find the derivative of the function.
dSigma= -n*Sigma0*(1+k*(Epsilon-Sigma/E))^(n-1)*(k/E)
Can someone tell me the few lines required to solve this? Thank you!
Answers (2)
Massimo Zanetti
on 8 Oct 2016
2 votes
Put Sigma in the other side of the equation by changing it sign, and then use fsolve. https://it.mathworks.com/help/optim/ug/fsolve.html
1 Comment
Brice Thomas
on 11 Oct 2016
Brice Thomas
on 8 Oct 2016
0 votes
2 Comments
John D'Errico
on 8 Oct 2016
Please stop adding answers every time you make a comment. This is not an answer. There is a button to make a comment. Use it.
Torsten
on 11 Oct 2016
Use
Z=fsolve(@Test1,X0)
instead of
Z=fsolve(Test1(X),X0)
Best wishes
Torsten.
Categories
Find more on Mathematics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!