mgystarmgy 发表于 2008-10-17 00:44

【求助】如何不用循环给函数赋值

现在有一个多元函数,要用矩阵的每一行赋值给其中的某些变量,然后算出一列表达式。
现在的问题是矩阵比较大,循环太慢,不知道有没有直接用矩阵的可能。
望指教。

sigma665 发表于 2008-10-17 08:31

回复 楼主 mgystarmgy 的帖子

举个例子

mgystarmgy 发表于 2008-10-17 21:37

比如函数是f(x1,x2,x3,a)=x1*exp(x2)+(x3)^a
现在数据是n*3的矩阵,每行的数赋值给x1,x2,x3得到一个关于a的函数
然后一共得到n*1关于a的函数
请问不用循环如何实现
实际的函数比这个复杂,是由Matlab的求偏微分生成的。

liuxiaoping 发表于 2008-10-17 22:25

不必循环,最好的方法是将函数内的参数用向量表示,如将x1*x2改成x1.*x2,这样就可以在调用函数时直接用矩阵了,而用标量仍然能正常运行。

mgystarmgy 发表于 2008-10-17 22:28

不太明白 怎么改 多谢
页: [1]
查看完整版本: 【求助】如何不用循环给函数赋值