2016-02-26 57 views
1

的我在做什麼是如下一個簡單的例子轉換:如何DOM ::矩陣功能

s := t*0.2: 
b := matrix([0.5,0.6,0.1]): 
f := matrix([sin(s),cos(s),s]): 
X := transpose(b)*(f); 
plotfunc2d(X,t=-2*PI..2*PI); 

的錯誤是:

Error: Expecting an arithmetical expression or a function. Got a 'Dom::Matrix()' for attribute 'Function' in the 'Function2d' object.

所以,我需要轉換從Dom::MatrixFunction的類型。我曾嘗試:

coerce(X,DOM_EXPR); 

我知道,簡單地說,這個工程:

s := t*0.2: 
x := 0.5*sin(s)+0.6*cos(s)+0.1*s; 
plotfunc2d(x,t=-2*PI..2*PI); 

有沒有一種方法來轉換這些類型的?

回答

1

雖然可變X本身就是一個DOM::Matrix(),它包含了一個元素是一個算術表達式,所以你需要的元素本身傳遞給繪圖功能:

plotfunc2d(X[1],t=-2*PI..2*PI); 
+0

完美!我沒有想到它。 – NKN