matlab演算法
1. matlab 演算法如何使用
遺傳演算法可以用來最優化計算,即計算一個東西的最大或最小的東西,或者最優解。不知道你想用來具體解決什麼問題,沒法仔細回答。你把具體想幹啥和原始數據發到郵箱[email protected],我可以幫你解答
2. 如何使用matlab計算加權平均分
計算加權平均分的示例代碼如下:
>> x = [80 92 83 67]; % 各科成績
>> w = [2.5 1.0 1.5 3.0]; % 各科學分
>> y = sum(x.*w)/sum(w) %加權成績
y =77.1875
(2)matlab演算法擴展閱讀:
Matlab常用函數和命令
size 矩陣的大小
slice 立體切片圖
solve 求代數方程的符號解
spalloc 為非零元素配置內存
sparse 創建稀疏矩陣
spconvert 把外部數據轉換為稀疏矩陣
semilogx: x軸為對數刻度,y軸為線性刻度
semilogy: x軸為線性刻度,y軸為對數刻度
floor(x):下取整,即捨去正小數至相鄰整數
ceil(x):上取整,即加入正小數至相鄰整數
3. matlab 矩陣演算法
你所說的可能是指MATLAB的向量化運算(Vectorization)吧?
MATLAB顧名思義,本來就是為向量或矩陣運算設計的,所以很多場合,如果能夠使用向量化運算,就應盡量避免使用顯式循環(for和while)。這一點是和普通的高級編程語言如C++、Fortran有顯著差別的。
舉一個簡單的例子:生成一個對數表,如果使用循環
x = .01;
for k = 1:1001
y(k) = log10(x);
x = x + .01;
end
而在MATLAB中可以用這種向量化的代碼:
x = .01:.01:10;
y = log10(x);
二者的差別不僅在於代碼量的大小,效率差別也很大。
這方面也沒什麼特殊的資料,屬於比較基礎的,如果想用好MATLAB,就請多花點時間把基本功練扎實點(事實上很多人並沒做到)。特別提醒一下,很多時候注意使用MATLAB的「點運算操作符」,如.*, ./, .^等。想進一步了解這方面的內容,可以在MATLAB幫助系統里搜索一下Vectorization,有一些相關的主題和例子。
4. MATLAB如何計算
symsx
y=log(x)/(2+exp(x));
d2y=diff(y,x,2)
symsx
y=3^x*(x^2+1);
f=int(y)
5. matlab函數演算法
MATLAB有個東西叫做"腳本"有個東西叫做"函數", 你是不是把function [s,w]=shang(x)放到腳本里去了?
6. matlab計算
這樣寫:
x = 1:10;
g2 = 0;
a = 1.50;
for i = 1:10
s = x;
s(i) = [];
g2 = g2 + prod((1.5-s)./(x(i)-s));
end
g2
7. matlab hash演算法
代碼沒問題,可這樣輸入:
>> algs='MD2';h=hash('my sample text',algs)
h =
>> algs='MD5';h=hash('abcd',algs)
h =
>> algs='MD5';h=hash('1234',algs)
h =
>> algs='SHA-1';h=hash('1234',algs)
h =
8. matlab計算
n的階乘:factorial函數就可以求自然數的階乘,例如,要求5的階乘:
>> factorial(5)
ans =
120
n中取m的組合數:用combntns函數,例如求5中取2的組合數:
>>c=size(combntns(1:5,2));c(1)
ans =
10
再如,求10中取4的組合數:
>> c=size(combntns(1:10,4));c(1)
ans =
210
兩個多項式(不一定同階)的系數,求這兩個多項式的和:編程
function p=polyplus(p1,p2)
%p=polyplus(p1,p2)
%input p1: 第一個多項式系數向量
% p2: 第二個多項式系數向量
%output p:兩個多項式的系數和
%p1和p2必須是行向量
l1=length(p1);
l2=length(p2);
if l1>=l2
p3=[zeros(1,l1-l2),p2];
p=p1+p3;
else
p3=[zeros(1,l2-l1),p1];
p=p2+p3;
end
驗證:
>> a=[1 2 3 4 5];
b=[6 1 0 2];
polyplus(a,b)
ans =
1 8 4 4 7
9. matlab的演算法有哪些急用!謝謝啊!
MATLAB 產品族可以用來進行以下各種工作:
● 數值分析
● 數值和符號計算
● 工程與科學繪圖
● 控制系統的設計與模擬
● 數字圖像處理 技術
● 數字信號處理 技術
● 通訊系統設計與模擬
● 財務與金融工程
MATLAB 的應用范圍非常廣,包括信號和圖像處理、通訊、控制系統設計、測試和測量、財務建模和分析以及計算生物學等眾多應用領域。附加的工具箱(單獨提供的專用 MATLAB 函數集)擴展了 MATLAB 環境,以解決這些應用領域內特定類型的問題。
matlab特點
●此高級語言可用於技術計算
●此開發環境可對代碼、文件和數據進行管理
●互動式工具可以按迭代的方式探查、設計及求解問題
●數學函數可用於線性代數、統計、傅立葉分析、篩選、優化以及數值積分等
●二維和三維圖形函數可用於可視化數據
●各種工具可用於構建自定義的圖形用戶界面
●各種函數可將基於MATLAB的演算法與外部應用程序和語言(如 C、C++、Fortran、Java、COM 以及 Microsoft Excel)集成
MATLAB的優勢
(1)友好的工作平台和編程環境
MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函數和文件,其中許多工具採用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調試器、路徑搜索和用於用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業化以及軟體本身的不斷升級,MATLAB的用戶界面也越來越精緻,更加接近Windows的標准界面,人機交互性更強,操作更簡單。而且新版本的MATLAB提供了完整的聯機查詢、幫助系統,極大的方便了用戶的使用。簡單的編程環境提供了比較完備的調試系統,程序不必經過編譯就可以直接運行,而且能夠及時地報告出現的錯誤及進行出錯原因分析。
(2)簡單易用的程序語言
Matlab一個高級的矩陣/陣列語言,它包含控制語句、函數、數據結構、輸入和輸出和面向對象編程特點。用戶可以在命令窗口中將輸入語句與執行命令同步,也可以先編寫好一個較大的復雜的應用程序(M文件)後再一起運行。新版本的MATLAB語言是基於最為流行的C++語言基礎上的,因此語法特徵與C++語言極為相似,而且更加簡單,更加符合科技人員對數學表達式的書寫格式。使之更利於非計算機專業的科技人員使用。而且這種語言可移植性好、可拓展性極強,這也是MATLAB能夠深入到科學研究及工程計算各個領域的重要原因。
(3)強大的科學計算機數據處理能力
MATLAB是一個包含大量計算演算法的集合。其擁有600多個工程中要用到的數學運算函數,可以方便的實現用戶所需的各種計算功能。函數中所使用的演算法都是科研和工程計算中的最新研究成果,而前經過了各種優化和容錯處理。在通常情況下,可以用它來代替底層編程語言,如C和C++ 。在計算要求相同的情況下,使用MATLAB的編程工作量會大大減少。MATLAB的這些函數集包括從最簡單最基本的函數到諸如矩陣,特徵向量、快速傅立葉變換的復雜函數。函數所能解決的問題其大致包括矩陣運算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運算、傅立葉變換和數據的統計分析、工程中的優化問題、稀疏矩陣運算、復數的各種運算、三角函數和其他初等數學運算、多維數組操作以及建模動態模擬等。
(4)出色的圖形處理功能
圖形處理功能 MATLAB自產生之日起就具有方便的數據可視化功能,以將向量和矩陣用圖形表現出來,並且可以對圖形進行標注和列印。高層次的作圖包括二維和三維的可視化、圖象處理、動畫和表達式作圖。可用於科學計算和工程繪圖。新版本的MATLAB對整個圖形處理功能作了很大的改進和完善,使它不僅在一般數據可視化軟體都具有的功能(例如二維曲線和三維曲面的繪制和處理等)方面更加完善,而且對於一些其他軟體所沒有的功能(例如圖形的光照處理、色度處理以及四維數據的表現等),MATLAB同樣表現了出色的處理能力。同時對一些特殊的可視化要求,例如圖形對話等,MATLAB也有相應的功能函數,保證了用戶不同層次的要求。另外新版本的MATLAB還著重在圖形用戶界面(GUI)的製作上作了很大的改善,對這方面有特殊要求的用戶也可以得到滿足。
(5)應用廣泛的模塊集合工具箱
MATLAB對許多專門的領域都開發了功能強大的模塊集和工具箱。一般來說,它們都是由特定領域的專家開發的,用戶可以直接使用工具箱學習、應用和評估不同的方法而不需要自己編寫代碼。目前,MATLAB已經把工具箱延伸到了科學研究和工程應用的諸多領域,諸如數據採集、資料庫介面、概率統計、樣條擬合、優化演算法、偏微分方程求解、神經網路、小波分析、信號處理、圖像處理、系統辨識、控制系統設計、LMI控制、魯棒控制、模型預測、模糊邏輯、金融分析、地圖工具、非線性控制設計、實時快速原型及半物理模擬、嵌入式系統開發、定點模擬、DSP與通訊、電力系統模擬等,都在工具箱(Toolbox)家族中有了自己的一席之地。
(6)實用的程序介面和發布平台
新版本的MATLAB可以利用MATLAB編譯器和C/C++數學庫和圖形庫,將自己的MATLAB程序自動轉換為獨立於MATLAB運行的C和C++代碼。允許用戶編寫可以和MATLAB進行交互的C或C++語言程序。另外,MATLAB網頁服務程序還容許在Web應用中使用自己的MATLAB數學和圖形程序。MATLAB的一個重要特色就是具有一套程序擴展系統和一組稱之為工具箱的特殊應用子程序。工具箱是MATLAB函數的子程序庫,每一個工具箱都是為某一類學科專業和應用而定製的,主要包括信號處理、控制系統、神經網路、模糊邏輯、小波分析和系統模擬等方面的應用。
(7)應用軟體開發(包括用戶界面)
在開發環境中,使用戶更方便地控制多個文件和圖形窗口;在編程方面支持了函數嵌套,有條件中斷等;在圖形化方面,有了更強大的圖形標注和處理功能,包括對性對起連接注釋等;在輸入輸出方面,可以直接向Excel和HDF5進行連接。