簡體   English   中英

從輸入Matlab計算矩陣點

[英]Calculating matrix points from input Matlab

我有一個坐標矩陣,例如[x1 y1 z1; x2 y2 z2; ... xn yn zn] [x1 y1 z1; x2 y2 z2; ... xn yn zn] [x1 y1 z1; x2 y2 z2; ... xn yn zn]
當前,這些坐標是手動輸入的,但是,我只想輸入x1y1z1並通過for循環,很好地計算其他點:
x1=7y1=-x^2z1=tanx ,它通過將x1減1(例如z1=tanx等)並通過計算其他x2y2z2等來計算其他y2 ,最后得到數組[x1 y1 z1; x2 y2 z2; ... xn yn zn] [x1 y1 z1; x2 y2 z2; ... xn yn zn] [x1 y1 z1; x2 y2 z2; ... xn yn zn]

編輯1:
如果我希望參數中的x,y,z方程為x1=7y1=-x^2z1=tanx

我的代碼:

function funC(x1,y1,z1)
x=7;
y=-x^2;
z=tanx;
for ii=1:7
    array = [x-1 y z];
    %not showing correct result
end

您可以使用匿名函數 首先,創建您的函數,如下所示:

function array = funC(x1, y1, z1)
    x = (x1:-1:1).';
    array = [x y1(x) z1(x)];
end

然后,這樣稱呼它:

% Define x1
>> x1 = 7

% Define y1 and z1 as anonymous functions
>> y1 = @(x) -x.^2;
>> z1 = @(x) tan(x);

% Call your function
>> funC(x1,y1,z1)

ans =

    7.0000  -49.0000    0.8714
    6.0000  -36.0000   -0.2910
    5.0000  -25.0000   -3.3805
    4.0000  -16.0000    1.1578
    3.0000   -9.0000   -0.1425
    2.0000   -4.0000   -2.1850
    1.0000   -1.0000    1.5574

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM