L1 複數與複數運算 | matlab視覺化
複數與複數運算 | matlab視覺化
matlab2018a
01 複數
MATLAB中,複數單位通常用 1i
來表示,例如z = 1 + 1i
。這裡需要說明的是,i
也可以用來表示複數單位,但是由於i
通常用作迴圈的變數,所以MATLAB建議定義複數時使用1i
。
除了實部虛部的直接定義複數的方法,還可以使用指數式定義複數,例如,z = exp(a + 1i*b)
基本的函式:
real(z)
、image(z)
:分別求虛數的實部和虛部。
abs(z)
、angle(z)
:複數模長與幅角
conj(z)
:共軛複數
exp(z)
、log(z)
:以e為底的指數和對數
02 複數的視覺化函式
z = A*cplxgrid(m)
呼叫cplxgrid
函式,生成以A為半徑,半徑方向上的網格數為m,幅角上的網數為2m+1的圓形複數域。
cplxmap(z,f)
以z為座標點,f為函式值作出影像。
案例1:畫出 z , z 3 , z 1 / 2 , z 1 / 3 z,z^3,z^{1/2},z^{1/3} z,z3,z1/2,z1/3的影像
z = 2*cplxgrid(10);
format rat
index = [1,3,1/2,1/3];
for i = 1:4
%將4張圖畫在一起
subplot(2,2,i)
cplxmap(z,z.^index(i)); %進行點對點運算
title(['f(z) = z\^',num2str(index(i)) ])
end
上圖中,座標系的z軸表示的是f(z)的實部,顏色表示的f(z)的虛部。
案例2: 1 1 − z \dfrac{1}{1-z} 1−z1的影像
%方案一:直接利用cplxmap進行視覺化
z = 2*cplxgrid(10);
z(find(z == 1)) = NaN; %去除奇點
cplxmap(z,1./(1-z))
title('f(z) = z^{-1}')
該影像還可以利用洛朗級數展開來進行計算
當
∣
z
∣
<
1
,
進
行
泰
勒
展
開
,
1
1
−
z
=
∑
k
=
0
∞
z
k
當
∣
z
∣
>
1
,
進
行
洛
朗
展
開
,
1
1
−
z
=
−
1
z
1
1
−
1
/
z
=
−
1
z
∑
k
=
0
∞
z
−
k
當|z|<1,進行泰勒展開,\\ \frac{1}{1-z} = \sum^{\infty}_{k=0}z^k\\ 當|z|>1,進行洛朗展開,\\ \frac{1}{1-z} = -\frac{1}{z}\frac{1}{1-1/z}= -\frac{1}{z}\sum^{\infty}_{k=0}z^{-k}
當∣z∣<1,進行泰勒展開,1−z1=k=0∑∞zk當∣z∣>1,進行洛朗展開,1−z1=−z11−1/z1=−z1k=0∑∞z−k
%方法二:利用洛朗級數展開
z = 2*cplxgrid(10);
z1 = z;
z1(find(abs(z1) >= 1)) = NaN; %確定泰勒展開的區域
w1 = 1; u1 = 1;
for i = 1:100
u1 = u1.*z1;
w1 = w1 + u1;
end
subplot(1,2,1)
cplxmap(z1,w1)
title('泰勒展開')
z2 = z;
z2(find(abs(z2) <= 1)) = NaN; %確定泰勒展開的區域
w2 = -1./z2; u2 = w2;
for i = 1:100
u2 = w2./z2;
w2 = w2 + u2;
end
subplot(1,2,2)
cplxmap(z2,w2)
title('洛朗展開')
案例3:
ln
(
z
)
\ln(z)
ln(z)對數函式
為了更好地展現
ln
(
z
)
\ln(z)
ln(z)為多值函式,採用兩種的不同的方式畫圖,先以z軸作為實部,顏色作為虛部,幅角取值範圍為
[
0
,
6
π
]
[0, 6\pi]
[0,6π];在以z軸作為虛部,實部作為顏色,再畫圖。
%以實部作為z軸
z = cplxgrid(20);
z(find(abs(z) == 0)) = NaN;
w = log(z);
subplot(1,2,1)
surf(real(z),imag(z),real(w),imag(w))
for k = 1:3
w = w + 1i*2*pi;
subplot(1,2,2)
surf(real(z),imag(z),imag(w),real(w));
hold on %將[0 6*pi]分3個週期畫在圖中
end
其他的一些函式都可以使用類似方法的畫出,大家可以自行嘗試一下sin(z),cos(z),sinh(z),cosh(z)
等等。
相關文章
- 數字化運營與視覺化管理的區別視覺化
- matlab輸出複數到檔案Matlab
- 資料統計與視覺化複習總結(二):非引數檢驗、生存分析視覺化
- 複數的四則運算(C語言實現)C語言
- 複數與複變函式選題函式
- 簡單c++實現複數的四則運算C++
- 《視覺化複分析》作者的新書視覺化新書
- matlab之生成不重複的隨機整數Matlab隨機
- matlab符號運算結果的分數怎麼轉化為小數Matlab符號
- .NET的數學庫NMath實用教程——複數的值操作和邏輯運算
- 《複分析:視覺化方法》啥時候再版啊?視覺化
- Matlab資料視覺化Matlab視覺化
- 複數域傅立葉級數
- 利用位運算判斷陣列中是否有重複的數字陣列
- 基於數字孿生+視覺化技術的智慧充電站視覺化運維平臺方案視覺化運維
- AI/機器學習(計算機視覺/NLP)方向面試複習1AI機器學習計算機視覺面試
- 視覺化數學分析軟體MATLAB R2021b for Mac視覺化MatlabMac
- GNU Radio 實數與複數訊號分析
- Shell階段02 shell變數運算(整數運算/小數運算), shell變數案例變數
- Excel 透視表如何不重複計數Excel
- ECharts與資料視覺化:如何高效使用JavaScript實現複雜圖表Echarts視覺化JavaScript
- 科學計算與視覺化之二(Matlab C/C++函式庫) (轉)視覺化MatlabC++函式
- 複雜SQL查詢和視覺化報表構建SQL視覺化
- 1051 複數乘法
- 匹配指定位數不重複數字
- 我給中國??奧運?數做了視覺化視覺化
- 圖撲智慧充電樁視覺化運營平臺|新能源數字化視覺化
- 算數運算子
- NOIP複習之1 數學數論
- 同花順股票分數視覺化 | R爬蟲&視覺化第3季視覺化爬蟲
- 【機器視覺與影象處理】基於MATLAB的角度計算視覺Matlab
- Python 數字運算及格式化Python
- 機器學習中的範數規則化之(一)L0、L1與L2範數機器學習
- onnx模型視覺化以及pytorch運算元與onnx節點對應關係模型視覺化PyTorch
- 企業數字化轉型實戰:管理視覺化視覺化
- CNN超引數優化和視覺化技巧詳解CNN優化視覺化
- Matlab學習-視覺化和程式設計Matlab視覺化程式設計
- OpenCV計算機視覺學習(2)——影像算術運算 & 掩膜mask操作(數值計算,影像融合,邊界填充)OpenCV計算機視覺