how to solve a equation
2 次查看(过去 30 天)
显示 更早的评论
I have a cell array,its elements are all of expression with symbol variables a{i,j}.
for example
cell array:f{n},
*f{1} = 3*b{3,5}*b{1,2} + 4*b{2,2} + ...+b{i,j},
f{2} = 4*b{3,5} + 4*b{6,2}*b{1,1} + ...+, ;
f{n} = b{2,3} + b{7,8} +;
f{n} = 0;*
I know every .expression of f{i},
if I use fsolve function,I have to display all equations,for large i, it is impractical. so is there any other method to get every b{i,j}'s value ,
can i use fsolve like these fsolve(f);
thank you!!
3 个评论
采纳的回答
Matt J
2013-12-14
编辑:Matt J
2013-12-14
if I use fsolve function,I have to display all equations,for large i, it is impractical.
You should be using vectorized commands to generate f, not scalar expressions. For example, if I had equations
f(1)=x(1)+1
f(2)=x(2)+2
f(3)=x(3)+3
...
f(N)=x(N)+N
I would generate f in the single statement,
f=x+1:length(x)
regardless of the size of N.
2 个评论
Matt J
2013-12-15
编辑:Matt J
2013-12-15
but this means I have to write every equation,
No, I already told you that you don't have to. You must look for an alternative matrix/vector valued way of expressing f.
Also, if you already "get every expression", it means you've already written them down, or that you have them in some sort of executable form.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!