實驗三matlab的符號計算
一、 實驗目的
掌握符號變數和符號表示式的構造方法和運算方法,練使用常用的函式進行計算。
二、 實驗內容
1.驗證本章所舉例子
例4.1
>> a=sym('sin(2)')
a =sin(2)
例4.2
>> a=sym(sin(2))
a =8190223105242182*2^(-53)
例4.3
>> a1=2*sqrt(5)+pi
a1 =
7.6137
>> a2=sym('2*sqrt(5)+pi')
a2 =
2*sqrt(5)+pi
>> a3=sym(2*sqrt(5)+pi)
a3 =
8572296331135796*2^(-50)
>> a4=sym(2*sqrt(5)+pi,'d')
a4 =
7.613728608589372726100918953307
例4.4
>> x=sym('x','real');
>> y=sym('y','real');
>> z=x+i*y;
>> real(z)
ans = x
>> x=sym('x','unreal');
>> real(z)
ans =
x/2 + conj(x)/2
例4.5
>> syms n x;
>> f=x^n;
>> findsym(f,1)
ans =
x例4.6
>> f='exp(x)'
f =exp(x)
>> f='a*x^3+b*x^2+c*x+d=0'
f =a*x^3+b*x^2+c*x+d=0
例4.7
>> f=sym('a*x^2+b*x+c=0')
f =a*x^2+b*x+c=0
例4.8
>> syms x y u;
>> f=exp(x*y/u)
f =exp((x*y)/u)
>> symvar('cos(x*pi)+u')
ans =
'u''x'例4.9
>> syms x a
>> v=[(1+a/x)^x,exp(-x);sin(a+x),cos(a+x)];
>> limit(v,x,0,'left')
ans =
[ 1, 1]
[ sin(a), cos(a)]
例4.10
>> x=sym('x');
>> diff(sin(x^2))
ans =
2*x*cos(x^2)
例4.11
>> syms x
>> int(1/(1+x^2))
ans =
atan(x)
例4.12
>> syms k
>> symsum(1/k^2,1,inf)
ans =
pi^2/6
例4.13
>> syms x
>> factor(x^9-1)
ans =
(x - 1)*(x^2 + x + 1)*(x^6 + x^3 + 1)
例4.14
>> syms x
>> horner(x^3-6*x^2+11*x-6)
ans =
x*(x*(x - 6) + 11) – 6
例4.15
>> syms x
>> expand((x-1)*(x^2+x+1)*(x^6+x^3+1))
ans =
x^9 – 1
>> syms x y
>> expand(cos(x+y)*sin(x*y))
ans =
sin(x*y)*cos(x)*cos(y) - sin(x*y)*sin(x)*sin(y)
例4.16
>> syms x y
>> collect((exp(x)+x)*(x+2))
ans =
2*exp(x) + x*(exp(x) + 2) + x^2
>> collect((x+y)*(x^2+y^2+x*y),y)
ans =
x^3 + 2*x^2*y + 2*x*y^2 + y^3
例4.17
>> syms t
>> poly2sym([1 0 1 -1 2],t)
ans =
t^4 + t^2 - t + 2
例4.18
>> syms a b x
>> solve(a*x^2-b*x-6)
ans =
(b + (b^2 + 24*a)^(1/2))/(2*a)
(b - (b^2 + 24*a)^(1/2))/(2*a)
例4.19
>> solve('a*x^2-b*x-6')
ans =
(b + (b^2 + 24*a)^(1/2))/(2*a)
(b - (b^2 + 24*a)^(1/2))/(2*a)
例4.20
>> dsolve('dy=5')
ans =
5*t+c1
例4.21
>> dsolve('dy=x','x')
ans =
1/2*x^2+c1
dsolve函式還可以用來對微分方程組的求解。
>> [x,y]=dsolve('dx=y+x','dy=2*x') %微分方程組的通解,採用雙輸出
x =-1/2*c1*exp(-t)+c2*exp(2*t)
y =c1*exp(-t)+c2*exp(2*t)
>> s=dsolve('dx=y+x,dy=2*x') %微分方程組的通解,採用結構化輸出
s =x: [1x1 sym]
y: [1x1 sym]
>>ans =
-1/2*c1*exp(-t)+c2*exp(2*t)
>>ans =
c1*exp(-t)+c2*exp(2*t)
>> [x,y]=dsolve('dx=y+x,dy=2*x','x(0)=0,y(0)=1') %加初始條件
x =-1/3*exp(-t)+1/3*exp(2*t)
y =2/3*exp(-t)+1/3*exp(2*t)
2.求極限。
>> syms x
>> f=cos(sqrt(x))^(pi/x);
>> limit(f,x,0,'right')
ans =
1/exp(pi/2)
3.求極限。
>> syms x
>> f=(3*sin(x)+(x^2)*cos(1/x))/((1+cos(x))*log(1+x));
>> limit(f,x,0,'left'), limit(f,x,0,'right')
ans =
3/2ans =
3/24.已知,求的一階微分。
>> syms x
>> f=(tan(sqrt(x+sqrt(x+sqrt(2*x)))))^2;
>> diff(f)
ans =
tan((x+(x+2^(1/2)*x^(1/2))^(1/2))^(1/2))*(1+tan((x+(x+2^(1/2)*x^(1/2))^(1/2))^(1/2))^2)/(x+(x+2^(1/2)*x^(1/2))^(1/2))^(1/2)*(1+1/2/(x+2^(1/2)*x^(1/2))^(1/2)*(1+1/2*2^(1/2)/x^(1/2)))
5.已知,求的二階微分。
>> syms x
>> f=cos(x^2)*(sin(1/x))^2;
>> diff(f,2)
ans =
(2*cos(1/x)^2*cos(x^2))/x^4 - 2*sin(1/x)^2*sin(x^2) - 4*x^2*cos(x^2)*sin(1/x)^2-(2*cos(x^2)*sin(1/x)^2)/x^4+(8*cos(1/x)*sin(1/x)*sin(x^2))/x+(4*cos(1/x)*cos(x^2)*sin(1/x))/x^3
6.求積分。
>> syms x
>> f=sqrt(x)/((1+x)^2);
>> int(f,x,0,inf)
ans =
pi/2
7.求積分
>> syms x
>> f=sqrt((x+1)/(x-1))/x;
>> int(f,x)
ans =
log(- 64*((x + 1)/(x - 1))^(1/2) - 64) - log(64*(1/(x - 1)*(x + 1))^(1/2) - 64) + i*log(- 64*i*((x + 1)/(x - 1))^(1/2) - 64) - i*log(64*i*((x + 1)/(x - 1))^(1/2) - 64)
8.求二重不定積分
>> syms x y
>> f=x*exp(-x*y);
>> >> int(int(f,x),y)
ans =
1/y*exp(-x*y)
9.使用符號運算計算級數。
>> syms n
>> symsum((((2*n)/(2*n-1)+(2*n-1)/(2*n))),1,3)
ans =
397/60
10.求微分方程的通解,指定x為自變數。
>> dsolve('d2y+4*dy+4*y=exp(-2*x)','x')
ans =
exp(-2*x)*c2+exp(-2*x)*x*c1+1/2*x^2*exp(-2*x)
11.求微分方程。
>> dsolve('x^2*dy+x*y=y^2','y(1)=1')
ans =
x/(1+exp(1/x*t)*(x-1)/exp(1/x))
三、實驗總結
這次實驗重點要搞清楚符號變數和符號表示式的定義,要能夠運用符號運算解決一般的微積分和方程求解問題。對於一些函式的格式還是有必要牢記的,對於matlab的學習如果僅僅靠在課堂上的時間是遠遠不夠的,更重要的是課後的練習,只有練習的多了,才能更好、更快的寫出解題的正確的程式,才能更好的掌握,這就需要我們在平時多看多練。
MATLAB實驗報告
數學與計算科學學院 實驗報告 實驗專案名稱 matlab運算基礎 所屬課程名稱數學軟體 實驗型別上機實驗 實驗日期 2011.9.19 班級信計1001 學號 201053100118 姓名劉濤 成績附錄1 源程式 附錄2 實驗報告填寫說明 1 實驗專案名稱 要求與實驗教學大綱一致。2 實驗目的 目...
matlab實驗報告
實驗二特殊函式與圖形 一 實驗目的及意義 掌握用matlab軟體繪製簡單曲線 曲面圖形,並通過繪製一些特殊函式的圖形,更加深入地理解相關函式的性質,了解函式的性態。二 實驗內容 平面作圖 空間作圖,比較數值作圖與符號作圖的異同。三 實驗步驟 1.在d盤建立乙個自己的資料夾 2.開啟軟體平台 matl...
MAtlaB實驗報告
基於matlab的數學實驗 實驗內容 實驗報告1 課程名稱 基於matlab的數學實驗實驗名稱 矩陣與向量的基本運算 實驗地點 數學建模實驗室日期 9.15 時間 7 30 9 30或9 35 11 35 實驗目的 熟悉matlab軟體中關於向量 矩陣的基本運算,並會建立m檔案。實驗裝置 計算機 m...