即時通訊工作八度不知道它是否會在matlab中運行,即時通訊試圖做一個簡單的拉格朗日多項式,繪製點,函數和lagrange aproximation,所以我做了以下,非一致性參數拉格朗日多項式(倍頻程)
clear all
clc
function [y] = lagrange(x, x0, y0)
n = size(x0,1);
y = 0;
for i=1:n
p = 1;
for j=1:n
if j == i % avoiding division by 0
continue;
endif;
p *= (x-x0(j))/(x0(i)-x0(j));
endfor;
y += y0(i) * p;
endfor;
endfunction;
x=[0:0.1:5];
x0=[2;2.75;4];
y0=[1/2;1/2.75;1/4];
y=lagrange(x,x0,y0);
我有以下問題,「運算符*:不符合標準參數(OP1是1x41,OP2是1x41)」 x中使用載體時,如果我嘗試和評估例如拉格朗日僅出現(3 ,x0,y0),該功能正常工作,並且沒有問題,問題在於當您使用較大的x向量時,
S我的問題是,有沒有辦法可以修改函數,以便能夠使用更大的向量x,或者有一種方法可以直接在函數中使用較大的向量來繪製函數?
如果你能告訴我們錯誤發生在哪一行,它會有所幫助。我相信錯誤信息應該告訴你。我的猜測是發生在'p * ='行。對於不一致的參數在兩個事物的大小相同的情況下有問題,它必須是一個矩陣乘法,它需要m乘n n n乘p。 –
哦,是的,我很抱歉,是的,錯誤是在'p * ='行 – Zigisfredo