返回信息流比如:
for k= 1:10
solve('func_1 = 0',..., 'func_k=0');
end
这里等式的个数随k值而改变,怎么才能实现这个功能?
求教高手指点?
这是一条镜像帖。来源:北邮人论坛 / communications / #18607同步于 2011/8/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Communications机器人发帖
如何在循环体中改变matlab solve() 函数方程的个数??
lastime
2011/8/29镜像同步11 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
这里的func_1, func_K不是实际的函数
举个具体点的例子,如
solve('x1 = 1')
solve('x1 = 1','x1+x2 = 2')
solve('x1 = 1','x1+x2 = 2','x1+x2+x3 = 3')
solve('x1 = 1','x1+x2 = 2','x1+x2+x3 = 3','x1+x2+x3+x4 =4')
solve('x1 = 1','x1+x2 = 2','x1+x2+x3 = 3',... ,'x1+x2+x3+...+x100 =100')
怎么在循环体中实现?
这里改怎样定义一个符号向量把上述的等式连接起来啊?
谢了先!
【 在 yangyanhui 的大作中提到: 】
: 可以把数字变成字符,然后连接到一起,具体函数百度知道就成
: --
不懂帮顶吧
【 在 lastime 的大作中提到: 】
: 这里的func_1, func_K不是实际的函数
: 举个具体点的例子,如
: solve('x1 = 1')
: ...................
这样可以,谢谢!
另外有下面两个问题
solve('1 + A(1) * x + A(2) * x^2 = 0')
这里A 为向量
在解这个方程组时怎样给A(1) A(2)赋值啊
1) 比如 A = [1, 2];
S = solve('1 + A(1) + A(2)*x^2 = 0')
s = subs(S,{A(1) , A(2) },{1,2})
这样不可以
2) 这里A 如果是程序中实时计算出的结果,而不是显示的1,2,3数值,应该怎么求解啊?
【 在 xineohp2007 的大作中提到: 】
: solve(['x1 = 1' ',' 'x1+x2 = 2' ',' 'x1+x2+x3 = 3'])
: 这样可以不?
: --
: ...................
S = solve('1 + A1 + A2*x^2 = 0')
b = cell();
b{1} = 'A1';
b{2} = 'A2';
s = subs(S,b,{1,2})
第三个参数类似
用solve() 比如求解出一个有100个变量的方程组, x1,...,x100
怎样把这100个数都取出来啊?
比如:定义 S = solve('','','');
S.x1
S.x2
...
可以取出数值
但是如果都取出来,不能一个一个这样写吧
怎样利用循环把他们全取出来啊(S.xk)关于k的循环怎样表示?
再次感谢!
【 在 xineohp2007 的大作中提到: 】
: S = solve('1 + A1 + A2*x^2 = 0')
: b = cell();
: b{1} = 'A1';
: ...................
能具体点吗?
偶不太明白
S为结构体,
怎样利用循环取出里面的变量的数值S.xk (k循环)
【 在 yuyugar 的大作中提到: 】
: 用eval函数可以的
: --