Solve a matrix that has nonlinear coefficients
3 views (last 30 days)
Show older comments
I am trying to solve a matrix that has the following form,
f(T_n) * T_(n-1) - T_n + f(T_n) * T(n+1) = f(T_n)
How this should be handled?
0 Comments
Accepted Answer
Torsten
on 9 Oct 2023
Edited: Torsten
on 9 Oct 2023
If the coefficients contain the unknowns, a matrix representation of your system of equations leads you nowhere.
Write your system of equations in the unknowns T_n as a system of algebraic equations G(T) = 0 and use "fsolve" to solve.
2 Comments
Torsten
on 9 Oct 2023
Edited: Torsten
on 9 Oct 2023
Thank you, I thought there was a way to solve with matrix representation.
The matrix representation of the equations is only useful if the matrix coefficients and the right-hand side are constant.
Sometimes it's necessary to use fixedpoint iteration
T^(i+1) = A(T^i)*T^i + b(T_i) (i: iteration index)
with T = (T(1),...,T(n)) if n is large, but if possible solve A(T)*T + b(T) - T = 0 using "fsolve". This will be much more efficient.
More Answers (0)
See Also
Categories
Find more on Systems of Nonlinear Equations 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!