首頁 > 健康生活 > 職場 > 如何在Matlab中運用餘弦函式

如何在Matlab中運用餘弦函式

來源:時髦谷    閱讀: 1.06W 次
字號:

用手機掃描二維碼 在手機上繼續觀看

手機檢視

如何在Matlab中運用餘弦函式,Matlab是一款常用的資料處理科學軟體,它在日常工作中,教學科研,影象處理,金融資料分析等等領域均有廣泛的應用,那麼如何在Matlab中運用餘弦函式?

如何在Matlab中運用餘弦函式1

首先我們需要開啟Matlab軟體(可通過桌面快捷方式或者開始選單軟體啟動按鈕,或者軟體安裝資料夾的軟體啟動按鈕開啟Matlab軟體)

如何在Matlab中運用餘弦函式

Matlab軟體開啟後的介面如下圖所示,軟體介面包括導航欄,命令欄,變數顯示欄等,軟體上部的選單中包含豐富的命令,我們將在接下來的步驟中用到其中的`部分命令。

如何在Matlab中運用餘弦函式 第2張

在Matlab軟體的導航欄右擊滑鼠,選擇“new file”,“script”,從而新建的一個新的Matlab指令碼檔案,具體操作如圖所示。

如何在Matlab中運用餘弦函式 第3張

通過雙擊新建的Matlab指令碼檔案,從而開啟“script”,進而可以編輯Matlab指令碼檔案進而將相關程式碼寫入指令碼檔案。

如何在Matlab中運用餘弦函式 第4張

開啟指令碼檔案後,我們可以往指令碼檔案中寫入如下命令:

x=1:0.01:10;

y=cos(x);

如圖所示,我們可以通過點選Matlab軟體的選單欄上的“run”按鈕從而實現執行剛才所寫入指令碼檔案的程式碼。

如何在Matlab中運用餘弦函式 第5張

我們也可以在command視窗展示執行結果,注意,用以顯示結果的那行程式碼尾部不能有分號。

如何在Matlab中運用餘弦函式 第6張

如何在Matlab中運用餘弦函式2

如何用matlab產生正弦表資料

這裡說明兩種方式:

(一)這個方法只在matlab中生成資料表,需要自己手動的

往mif檔案中新增資料

1.假設用到的DA晶片為14為,則2^14=16384

2.一個完整的正弦波為0-2pi

3.正弦波ROM的深度為4096(地址總數)

4.由於FPGA中不識別負數,加入一個直流分量,加8192

則用matlab產生正弦表的'函式為:

Y=ceil((16384/2-1)*sin(0:pi*2/4096:2*pi)+8192)

其中ceil函式描述如下:

ceil(x) : 大於x 的最小整數

>> ceil( [3.12 -3.12])ans =4 -3

如何在Matlab中運用餘弦函式 第7張

(二)可以直接生成mif檔案

直接生成mif檔案

depth = 4096;width =14;x=ceil(16384/2*sin(0:pi*2/4096:2*pi)+8192)

fid = fopen('d:','w');

fprintf(fid,'depth= %d ;

',depth);

fprintf(fid,'width= %d ;

',width);

fprintf(fid,'address_radix=uns;

');

fprintf(fid,'data_radix = uns;

');

fprintf(fid,'Content Begin

');

for(k=1:depth)

fprintf(fid,'%d: %d ;

',k-1,x(k));endfprintf(fid,'end;');

用上面這段程式最大值會出現16384,在Quartus II中會認為是超出資料

範圍,所以需要手動的改寫為16383.------

----把x=ceil(16384/2*sin(0:pi*2/4096:2*pi)+8192) 改寫為下面語句

x=ceil((16384/2-1)*sin(0:pi*2/4096:2*pi)+8192) 就不存在上述問題

資料量小的話,可以用第一種方法,要是資料量大的話,介意用第二種方法。

如何在Matlab中運用餘弦函式3

方法/步驟

開啟matlab在app中找到curve fitting擬合工具箱,開啟它

如何在Matlab中運用餘弦函式 第8張

在命令視窗輸入你的原始資料,例如x=1:1:100;y=x;

我們需要通過擬合工具箱來擬合出y=x這個方程得兩個引數a,b

在擬合工具箱的頁面左邊欄把原始資料放進去,檢視擬合結果,在如圖所示箭頭區域,可以選擇擬合的'函式,最基本的一階函式,正弦函式

如何在Matlab中運用餘弦函式 第9張

運用擬合函式擬合最基本的是polyfit,

程式如此:

x=1:1:100;

y=x;

m=polyfit(x,y,1);

如何在Matlab中運用餘弦函式 第10張

結果輸出兩個值,用polyfit函式時用法為

[a,b]=polyfit(x,y,n)其中a,b是直線方程y=a*x+b中的a,b兩個引數

x,y是原始資料,n為擬合的階數,

在matlab擬合函式中還有lsqcurvefit等,需要在matlab官網上尋找並看他的用法,我推薦是有matlab的固有擬合工具箱,在擬合一些比較複雜的函式時,用擬合函式時,引數必須有初始向量,只有禁言豐富的人才可以確定,所以一般建議使用擬合工具箱,簡單函式可以使用擬合函式

健康養生
生活保健
常見疾病
女性健康
單身
戀愛
婚姻
話題