matlab中lsim的用法

2021-07-13 06:03:35 字數 535 閱讀 2293

lsim:針對線性是不變模型,給定任意輸入,得到輸出響應。

系統模型為狀態方程時,同時還可以得到狀態軌跡。

[y,t,x]=lsim[sys,u,t,x0]

輸出y的行數與u的長度相同,列數與輸出個數相同;

狀態x的行數與u的長度相同,列數與狀態的個數相同。

程式如下:

num=[1 1];

den=[1 3 6];

%h=tf(num,den);%獲得傳遞函式

[a,b,c,d]=tf2ss(num,den);%將傳遞函式轉化為狀態方程

[u,t]=gensig('pulse',2,10,0.1);%取樣間隔為0.1,時間長度為10,在2的倍數處訊號幅度為1,其餘時間為0.

x=u;

sys=ss(a,b,c,d);

x0=[0 0];

t=0:0.1:10;%此處時間為上面取樣時間相同

[y,t,x]=lsim(sys,u,t,x0)%模型的輸出響應

plot(t,y,'b',t,u,'g');

結果:

matlab中 的用法

場景 有時需要定義乙個函式來計算某個表示式的值,可以直接用語法 輸入引數 表示式,來建立乙個匿名函式,返回該函式控制代碼。然後就可以用該控制代碼來計算了。優點 減少 量,簡潔清晰。例項 在曲線擬合中需要定義擬合函式modelfunc,常用這種方法來定義。t1 fit func x,a a 1 exp...

matlab中 的用法

是用於定義函式控制代碼的操作符。函式控制代碼既是一種變數,可以用於傳參和賦值 也是可以當做函式名一樣使用。舉例 sin是matlab中的乙個函式,但sin只是函式名,還不是函式控制代碼,不可以用於傳參。f sin 這行 定義了乙個函式控制代碼,變數名是f。這樣就可以當做引數傳遞了 這就是上面 中的意...

matlab中的矩陣用法

1 矩陣的輸入 a 1,2,3 4,5,6 7,8,9 要直接輸入矩陣時,矩陣一行中的元素用空格或逗號隔開 矩陣行與行之間用分號 隔開,這個矩陣放在方括號 裡。a 1,2,3 矩陣的分行輸入 4,5,6 7,8,9 a 1 2 3 4 5 6 7 8 9 說明 指令執行後,矩陣a被儲存在matlab...