2016-03-05 131 views
0

我正在研究數值計算方法。我是八度新手。我從互聯網上下載了兩個m文件。在這裏,我只是要告訴你與問題相關的代碼,而不是整個代碼。從其他m文件繪製函數

從funct.m文件:

function [ y ] = funct (x) 
y=(x*(exp((-x)+3)))-sin((7*x)-4)+(8*x)-20 
endfunction 

我覺得這是有沒有問題。當我嘗試在secant.m文件中繪製函數時發生錯誤。我試過兩種繪圖功能。 plot()fplot()

secant.m文件:

1.plot():

x=linspace(0,10,20); 
plot(x, funct(x)); 

該錯誤消息是不符合標準參數(OP1是1X20,OP2是1X20)

2.fplot():

fplot(funct(x),[0,10],10) 

的錯誤消息是不符合標準的參數(OP1是5X1,OP2是5X1)

我怎樣才能解決這個問題?我熟悉其他編程語言,尤其是類C語法,所以請隨時以技術方式回答它。

+0

嘗試每個元素相乘改變'*'和'*'在funct'的'聲明或'Y =零( size(x))'並在'for循環中定義每個'y(ii)'的值。 – Crowley

回答

0

您需要在funct公式中使用元素方式乘法運算符(.*)。

y = x .* exp(-x + 3) - sin(7*x - 4) + 8*x - 20 

這是因爲你想要的x每個元素由exp(-x + 3)