2011-10-30 262 views
1

最近开始学习八度。如何通过对每个元素应用函数来从另一个矩阵生成矩阵?从另一个矩阵生成矩阵

例如:

  • 应用2X + 1或2x /(X^2 + 1)或1/X + 3的3x5的矩阵A.
  • 结果应该是一个3x5的矩阵与所述值现在2X + 1
  • 如果A(1,1)= 1,然后用后输出矩阵B
  • B(1,1)= 2.1 + 1 = 3

我主要关注的操作之后是一个使用x的值的函数找到相反的或者如上所述的东西。

关于。

回答

2

您可以尝试

B = A.*2 + 1 

操作.意味着应用程序进行以下操作*到矩阵的每个元素。

在发行包和网页上可以找到许多关于Octave的文档。更好的是,您通常也可以使用Matlab上的大量文档。

已增加。对于更复杂的操作,您可以使用arrayfun(),例如

B = arrayfun(@(x) 2*x/(x^2+1), A) 
+0

嗨Jiri,那很好。我认为它没有用一个很好的例子。假设函数是2x /(x^2 + 1)或1/x + 3。我已经更新了相应的问题。谢谢。 – ritcoder

+0

我扩展了我的答案来处理您的扩展问题。 – Jiri

+0

嗨Jiri,那正是我要找的。我改变了现有的使用2 for循环的代码,并且效果很好。现在学习八度,所以不太熟悉现有的功能。谢谢。 – ritcoder