matlab的计算

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
1.1 变量
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
1.2 变量的管理
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣函数预分配数组,然后对每个元素赋值
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
3.1 矩阵运算基础
¾逻辑运算函数例题:
在[0,3π]区间,求y=sin(x)的值。

要求:
(1)消去负半波,即(π,2π)区间内的函数值置0
(2)(π/3, 2π/3 )和(7π/3, 8π/3 )区间内取值均为sin π/3
思路:先根据自变量向量x产生
函数值向量y,再对y进行处理
x=0:pi/100:3*pi;
y=sin(x);
y1=(x<pi|x>2*pi).*y; %消去负半波
q=(x>pi/3&x<2*pi/3)|(x>7*pi/3&x<8*pi/3);
qn=~q; %q为0,运算结果为1
y2=q*sin(pi/3)+qn.*y1; %按要求处理(2)
plot(x,y+1,x,y1+0.5,x,y2),%绘图
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
4.1 数据处理
¾曲线拟合:用简单的函数逼近复杂或未知的函数,使
误差ξ=g(x
i
)-f(x i)最小
X=linspace(0,2*pi,50); Y=sin(X);
[P1,S1]=polyfit(X,Y,3), Y1=polyval(P1,X);
%根据拟合的多项式求各点拟合数值
plot(X,Y, ':o',X,Y1, '-*'), P2=polyfit(X,Y,4), P1 =
0.0912 -0.8596 1.8527 -0.1649
S1 =
R: [4x4 double]
df: 46
normr: 0.5055
P2 =
-0.0000 0.0912 -0.8596 1.8527 -0.1649
函数调用格式:[P,S]=polyfit(X,Y,m)
含义:根据采样点X及函数值Y产生一个m次多项式(P为长度为m+1的向量),在采样点处误差为S
¾例题:用三次多项式在区间逼近sinx
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
表示多项式
X2+2x+3
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣MATLAB第二讲:MATLAB数值与符号计算北京林业大学陈来荣
4.3 数值微积分
¾数值微分的实现
对向量X求向前差分:DX=diff(X)
对向量X求n阶向前差分:DX=diff(X)
对矩阵X求n阶向前差分:DX=diff(X,n,dim)1,按列求2,按行求
例题:求f(x)=six(x)在[0 2π]之间的数值微分x=0:0.1:2*pi;
p=polyfit(x,sin(x),5) %5次多项式拟合
dp=polyder(p);%5次多项式求导
dpx=polyval(dp,x);%dp在各点的函数值
dx=diff(sin([x,6.4]))/0.1; %直接求数值导
数,0.1步长
plot(x,dpx+1, ‘x',x,dx+0.5,'*',x,cos(x),'O'),
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
4.3 数值微积分
数值积分的基本原理
ba [ f (a ) + f (b)] 2 ba a+b [ f (a) + 4 f ( ) + f (b)] 基本辛普森求积公式 S 2 = 6 2 n 1 复合梯形求积公式 S3 = h [ f (a ) + f (b) + 2∑ (a + ih)] 2 i 1
基本梯形求积公式
4.3 数值微积分
被积函数为一个解释式数值积分实现
函数名
积分下限 积分上限
format long x1=quad('sin(x)',0,pi) x2=quadl('sin(x)',0,pi)
S1 =
quad(filename,a,b,tol,trace) quad(filename, tol, trace) 或quad(filename,a,b,tol,trace) quad(filename,a,b,tol,trace)
精度 默认10-6
默认0,不展现积分过程 非0展现积分过程
x1 = 1.99999999639843 x2 = 1.99999997747113
复合辛普森求积公式
S4 =
h n 1 i +1 ∑ [ f (a + ih) + 4 f (a + 2 h) + f (a + (i + 1)h)] 6 i =0
被积函数为一个表格定义
trapz(X,Y), X,Y是等长的向量,积分区间[x1,x2] trapz(X,Y), X,Y是等长的向量,积分区间[x1,x2]
x=0:0.1:pi; y=sin(x); trapz(x,y),
ans = 1.99746892659093
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
4.3 数值微积分
二重积分
dblquad(filename,a,b,c,d,tol,trace),积分区间[a,b] ×[c,d] dblquad(filename, ,c,d,tol,trace),积分区间[a,b] c,d]
4.4 线性方程组求解
直接求解:利用矩阵的运算法则 利用矩阵LU分解求解:把一个非奇异矩阵分解为 变换形式下三角阵和上三角阵的积
[L,U]=lu(X),产生LU=X,L上三角阵, U变换形式的下三角阵 [L,U]=lu(X),产生LU=X, [L,U,P]=lu(X), LU=PX,L上三角阵, U下三角阵,P置换矩阵 [L,U,P]=lu(X), LU=PX, 下三角阵,P
L1 =0.1250 1.0000 0 0.5000 0.5714 1.0000 1.0000 0 0 U1 =8.0000 9.0000 10.0000 0 0.8750 1.7500 0 0 0 A1 = 1 2 3 4 5 6 8 9 10 L2 =1.0000 0 0 0.1250 1.0000 0 0.5000 0.5714 1.0000 U2 = 8.0000 9.0000 10.0000 0 0.8750 1.7500 0 0 0 P2 = 0 0 1 1 0 0 0 1 0 ans =1 2 3 4 5 6 8 9 10
计算二重积分 I = ∫
1
1 2

2
e x
2
/2
sin( x 2 + y )dxdy
function f=fxy(x,y) %建立一个函数文件 global ki; %定义全局变量 ki=ki+1; %ki统计被积函数调用的次数 f=exp(-x.^2/2).*sin(x.^2+y); global ki;ki=0 I=dblquad('fxy',-2,2,-1,1) ki
ki =0 I =1.57449318974494 ki =1050
f=inline('exp(-x.^2/2).*sin(x.^2+y)','x','y'); %定义一个语句函数 I=dblquad(f,-2,2,-1,1)
A=[1,2,3;4,5,6;8,9,10] [L1,U1]=lu(A), %分解 A1=L1*U1, %验证 [L2,U2,P2]=lu(A), %分解 inv(P2)*L2*U2, %验证
I= 1.57449318974494
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
4.4 线性方程组求解
利用矩阵LU分解求解
[L,U]=lu(X),AX=b的解为x=U\(L\b) [L,U]=lu(X),AX=b的解为x=U\(L\ [L,U,P]=lu(X), AX=b的解为x=U\(L\P*b) [L,U,P]=lu(X), AX=b的解为x=U\ (L\
A=[1,2,3;4,6,6;9,9,10]; b=[20,20,0]'; [L1,U1]=lu(A); %分解 x1=U1\(L1\b), %求解 [L2,U2,P2]=lu(A); %分解 x2=U2\(L2\P2*b), %求解
x1 = -13.0000 3.0000 9.0000 x2 = -13.0000 3.0000 9.0000
4.4 线性方程组求解
利用矩阵QR分解求解:把方阵X分解为正交矩阵Q和上 三角矩阵R
[Q,R]=qr(X),X=QR,AX=b的解为x=R\(Q\b) [Q,R]=qr(X),X=QR, AX=b的解为x=R\ (Q\ [Q,R,E]=qr(X),XE=QR(E置换矩阵),AX=b的解为x=E*R\(Q\b) [Q,R,E]=qr(X),XE=QR(E置换矩阵) AX=b的解为x=E*R\ (Q\
Q2 =-0.2491 -0.7495 -0.6134 Q1 = -0.1010 -0.4445 -0.8900 -0.4983 -0.4439 0.7448 -0.4041 -0.7992 0.4450 -0.8305 0.4912 -0.2629 -0.9091 0.4046 -0.0989 R2 = -12.0416 -9.7163 -10.9620 R1 = -9.8995 -10.8086 -11.8188 0 1.8955 0.2583 0 -2.0429 -2.0829 0 0 0.8762 0 0 -0.9889 E2 = 0 1 0 x1 = -13.0000 0 0 1 3.0000 1 0 0 9.0000 x2 = -13.0000 3.0000 9.0000
A=[1,2,3;4,6,6;9,9,10]; b=[20,20,0]'; [Q1,R1]=qr(A), %分解 x1=R1\(Q1\b), %求解 [Q2,Q2,E2]=qr(A), %分解 x2=E2*(R2\(Q2\b)) %求解


MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
4.4 线性方程组求解
迭代求解基本原理
4.4 线性方程组求解
Jacobi迭代法求解线性方程组:将非奇异方阵A分解为 A=D-L-U,D为对角阵,L为下三角阵, U上三角阵,
function [y,n]=jacobi(A,b,x0,eps) %函数文件 if nargin==3 eps=1.0e-6; elseif nargin<3 error return end D=diag(diag(A)); %求A的对角矩阵 L=-tril(A,-1); %求A的下三角阵 U=-triu(A,1); %求A的上三角阵 B=D\(L+U); f=D\b; y=B*x0+f; n=1; %迭代次数 while norm(y-x0)>=eps x0=y; y=B*x0+f; n=n+1; end
10 x1 x2 = 9 x1 10 x2 2 x3 = 7 改写为 2 x + 10 x = 6 1 3
x1 = 10 x2 2 x3 7 x2 = 10 x1 9 x = (6 + 2 x ) /10 2 3
Ax = b 转化为:
x = D 1 ( L + U ) + D 1b
x1( k +1) = 10 x2 ( k ) 2 x3( k ) 7 迭代公式 x2 ( k +1) = 10 x1( k ) 9 x ( k +1) = 0.6 + 0.2 x ( k ) 2 3
迭代公式: x ( k +1) = D 1 ( L + U ) x k + D 1b
A=[1,2,3;4,6,6;9,9,10]; b=[20,20,0]'; [x,n]=jocabi(A,b,[0,0,0] ' ,1.0e-6) %调用jocabi函数文件,[0,0,0] ‘为初 始解 ,1.0e-6为精度),n为迭代次数
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
4.5 非线性方程组求解
单变量非线性方程求解
函数名
求根初值
MATLAB的数值计算
变量、语句 MATLAB的数据类型 MATLAB的矩阵运算 MATLAB的数值运算 MATLAB的符号计算
符号运算基础 多项式计算 数值的微积分 线性方程组求解
是否显示 迭代信息
格式: fzero(filename,x0,tol,trace) 求解x0最近的解
精度
例题:求 f ( x) = x
1 + 5 在x0=-5和1作为迭代初值的解 x
x1 = -5.1926 x2 = 0.1926
function f=fz(x) %建立函数文件 f=x-1/x+5 x1=fzero(‘fz’,-5,0), x2=fzero(‘fz’,1,1),
非线性组方程求解
格式: x=fsolve(filename,x0,option)
最优化工具箱 的优化函数
非线性方程求解
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.1 符号运算基础
基本含义:运算对象是没赋值的符号变量,运算结果 以标准的符号形式表达,可以获得任意精度的解 空格 建立符号变量
1、定义单个符号量sym函数:符号变量名=sym(符号字符串) 定义单个符号量sym函数: 2、定义多个符号量syms: syms arg1 arg2 arg3 arg4 定义多个符号量syms:
pi1=sym('pi');k1=sym('8');k2=sym('3'); %定义符号变量 pi2=pi;r1=8;r2=3; %定义数字变量 x1=sin(pi1/3), %符号计算 x2=sin(pi2/3), %数值计算 y1=sqrt(k1+sqrt(k2)), %符号计算 y2=sqrt(r1+sqrt(r2)), %数值计算
x1 = 1/2*3^(1/2) x2 = 0.8660 y1 = (8+3^(1/2))^(1/2) y2 = 3.1196
5.1 符号运算基础
基本符号运算
1、使用数值运算符:+,-,*,/,^ 使用数值运算符: 2、符号表达式symadd,symsub,symmul,symdiv 符号表达式symadd,symsub,symmul,symdiv
提取分子和分母
[n,d]=number(s),将符号表达式有理化后,分子分母存放为n和d 符号表达式为符号矩阵, n和d分别是分子矩阵和分母矩阵
a11=sym(‘1/(x-1)’); %建立符号变量 a12=sym('1/(x+1)'); a21=a11+a12, a22=a11*a12, a=[a11,a12;a21,a22], %符号矩阵 [n,d]=numden(a) %提取分子和分母
a21 = 1/(x-1)+1/(x+1) a22 = 1/(x-1)/(x+1) a = [ 1/(x-1), 1/(x+1)] [1/(x-1)+1/(x+1), 1/(x-1)/(x+1)] n = [1, 1] [2*x, 1] d = [x-1, x+1] [ (x-1)*(x+1), (x-1)*(x+1)]
建立符号表达式
1、利用单引号生成:y= '1/sqrt(2*x)' 利用单引号生成: 2、利用函数sym生成: y= sym('1/sqrt(2*x)‘) y= sym(‘[a,b;c,d] ') 利用函数sym生成: sym( sym(


MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.1 符号运算基础
符号表达式的因式分解与展开
factor(s) 对符号表达式s分解因式 factor(s) 对符号表达式s expand(s)对符号表达式s进行展开 expand(s)对符号表达式s collect(s) 合并同类项 collect(s) collect(s,v) 对符号表达式按v合并同类项 collect(s,v) 对符号表达式按v
syms a b x y A=a^4-b^4; A1=factor(A), %对A分解因式 B=(x+y)^5; A2=expand(B), %对B展开 A3=collect(A2,x), %对A2按x展开 factor(sym('120')), %对符号整数分解因式
A1 =(a-b)*(a+b)*(a^2+b^2) A2 = x^5+5*x^4*y+10*x^3*y^2+10*x^2* y^3+5*x*y^4+y^5 A3 = x^5+5*x^4*y+10*x^3*y^2+10*x^2* y^3+5*x*y^4+y^5 ans =(2)^3*(3)*(5)
5.1 符号运算基础
符号表达式的化简
simplify(s) 应用函数规则对s进行化简 simple(s) 调用matlab的其他函数进行化简并显示过程
符号表达式与数值表达式之间的转换
sym 数值表达式转化为符号表达式 numeril、eval 将符号表达式转化数值表达式
符号表达式之间的转换
findsym(s,n) 查找符号表达式的n个符号变量,没有n查找全部 在具体计算中,按默认符号变量(离x较近)进行计算
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
符号矩阵运算
5.1 符号运算基础
缺省值为默 认符号变量
5.2 符号函数与应用
符号函数的极限
缺省值0
所有符号表达式运算都可以在矩阵进行,对象是矩阵每个元素 很多数值计算运算符可以用于符号矩阵 专门的符号矩阵运算 transpose(s) 求转置矩阵 transpose(s)
syms a b x y z m=sym('[a^3-b^3,sin(z)^2+cos(z)^2; (15*x*y-3*x^2)/(x-5*y),78]') m1=factor(m), %因式分解 m2=simplify(m), %因式化简 m3=transpose(m), %求转置 m4=det(m), %求行列式的值
m = [ a^3-b^3, sin(z)^2+cos(z)^2] [ (15*x*y-3*x^2)/(x-5*y), 78 ] m1 =[ (a-b)*(a^2+a*b+b^2), sin(z)^2+cos(z)^2] [ -3*x, 78 ] m2 = [ a^3-b^3, 1] [ -3*x, 78] m3 =[a^3-b^3, (15*x*y-3*x^2)/(x-5*y)] [sin(z)^2+cos(z)^2, 78 ] m4 =78*a^3-78*b^3+3*x*sin(z)^2+3*x*cos(z)^2
limit(f,x,a) 应用函数规则对s进行化简 limit (f,x,a,‘right’,) 求符号函数极限,从右边趋近
syms a x f1=(sqrt(x)-sqrt(a) -sqrt(x-a))/ sqrt(x^2-a^2); f2=sin(x-a)/abs(x-a); m1=limit(f1), m2=limit(f2,x,a), m3=limit(f2,x,a, 'left'),
m1 =(-a^(1/2)-(-a)^(1/2))/(-a^2)^(1/2) m2 =NaN m3 =-1
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.2 符号函数与应用
符号函数的求导
缺省值为默 认符号变量 缺省值1
5.2 符号函数与应用
符号函数的不定积分
缺省值为默 认符号变量 缺省值为默 认符号变量
例2
xe y z = 2 , 求 Z x ', Z y ' y
syms x y z f=x*exp(y)/y^2 mx=diff(f,x),my=diff(f,y),
符号函数的定积分
积分上下限
diff(f,v,n) 对符号函数求n阶导数
x = a cos(t ) , 求y x ', y x '' 例1 x = a sin(t )
syms x y t f1=a*cos(t); f2=a*sin(t); m1=diff(f2)/diff(f1), m2=(diff(f1)*diff(f2,2)-diff(f2)*diff(f1,2)) /(diff(f1))^3
m1 =-cos(t)/sin(t) m2 =-(a^2*sin(t)^2+a^2*cos(t)^2)/a^3/sin(t)^3
int(f,v) 对符号函数求不定积分
int(f,v,a,b) 对符号函数求定积分
mx =exp(y)/y^2 my =x*exp(y)/y^2-2*x*exp(y)/y^3

例3
∫ 1+ x
5 xt
2
dt和∫
5 xt dx 1 + x2
例 求∫
sin(x)
2
sin(x) 4 x 4x dt和 ∫ dx 2 t t
z = f ( x , y )由方程 x 2 + y 2 + z 2 = a 2
确定,求 Z x ', Z y '
syms a x y z f=x^2+y^2+z^2-a^2 zx=-diff(f,x)/diff(f,z), zy=-diff(f,y)/diff(f,z),
zx =-x/z zy =-y/z
syms x t f=5*x*t/(1+x^2); m1=int(f,t), m2=int(f),
m1 =5/2*x*t^2/(1+x^2) m2 =5/2*t*log(1+x^2)
syms t x m1=int(4*x/t,t,2,sin(x)), m2=int(4*x/t, 2,sin(x)),
m1 =4*log(sin(x))*x-4*log(2)*x m2 =2/t*(sin(x)^2-4)


MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.2 符号函数与应用
积分变换 :把一个函数(原函数)转化为另一函数 (像函数) b 积分变换
5.2 符号函数与应用
fourier(f,x,t) 对函数f(x)的傅立叶像函数F(t) ifourier(F,t,x) 对傅立叶像函数F(t)的原函数f(x) laplace(f,x,t) 对函数f(x)的傅立叶像函数F(t) ilaplace(F,t,x) 对傅立叶像函数F(t)的原函数f(x)
syms t x f=x^2 f1=fourier(f,x,t), %傅立叶变换 f2=ifourier (f1,t,x), %傅立叶逆变 f3=laplace(f,x,t), %拉普拉斯变化 f4=ilaplace(f3,t,x), %拉普拉斯逆变换
f1 =-2*pi*dirac(2,t) f2 =x^2 f3 =2/t^3 f4 =x^2
F ( t ) = ∫ f ( x ) K ( x , t )d x
t
像函数 傅立叶变换
原函数 拉普拉斯变换
变换的核
F (t ) = ∫
f ( x )=
+∞ ∞
f ( x )e
+∞ ∞
itx
dx
F (t )= ∫
+∞ 0
f ( x )e
xt
dx
傅立叶变换逆变换
拉普拉斯变换逆变换
1 2π

F ( t ) e itx dt
f ( x )= ∫
+∞
0
F ( t ) e xt dt
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.2 符号函数与应用
普通级数求和
求和开始 项和末项
syms n s1=symsum(1/n,n,1,inf), s2=symsum(1/n^2,n,1,inf), s3=symsum(1/n^3,n,1,inf),
s1 =Inf s2 =1/6*pi^2 s3 =zeta(3)
5.3 符号方程求解
符号代数方程求解
代数方程(等式) 表达式(=0) 解变量
symsum(f,v,m,n) 通项为f级数和 求和通项 求和变量
泰勒级数求和
展开到m项(m1次),默认值6
syms x a f=(1+x+x^2)/ (1-x+x^2) t1=taylor(f), t2=taylor(f,2,a), t3=taylor(f,x,5),
f =(1+x+x^2)/(1-x+x^2) t1 =1+2*x+2*x^2-2*x^4-2*x^5 t2 = (1+a+a^2)/(1-a+a^2)+(1+2*a-(1+a+a^2)/(1a+a^2)*(-1+2*a))/(1-a+a^2)*(x-a) t3 =1+2*x+2*x^2-2*x^4
solve(eq,v) 求解代数方程 solve(eq1, eq1, eqn,v1,v2,vn) 求解代数方程组
syms x y x1=solve(x+x*exp(x)=10) f1=x^2+y^2-5; f2=2*x^2-3*x*y-2*y^2; [x,y]=solve(f1,f2,x,y),
在v=a处展开
x1 =1.6335061701558463841931651789789 x =[ -1 1 2 -2]’ y =[ 2 -2 1 -1]’
taylor(f,v,m,a) 将函数f泰勒展开
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
5.3 符号方程求解
常微分方程的表示方法
导数符号 倒数阶数 Dny(0) 求解代数方程 导数变量 求导点
D 2 y + Dy x = 0 表 示 y ''+ y ' x = 5
Dy (0) = 10 表 示 y '(0) = 10
dy x + y 例: = dx 2x2
2
2
d 2x dt 2 y = 0 通解和(1,2)处特解、 d 2 y +x=0 dt 2
5.3 符号方程求解
通解
y1=dsolve('Dy-(x^2+y^2)/(2*x^2)', 'x'), y1=dsolve('Dy-(x^2+y^2)/(2*x^2)','y(1)=1', 'x') [x2,y2]=dsolve('D2x-y', 'D2y+x', ‘t')
常微分方程求解
dsolve(eq,c,v) 求解微分方程 dsolve(eq1, eq1, eqn, c1,c2,cn,v1,v2,vn) 求解代数方程组 初始条件 没有给出求通解
y1 =x*(-2+log(x)+C1)/(log(x)+C1) y2 =x*(-4+log(x))/(log(x)-2) x2 =-C1*exp(-1/2*2^(1/2)*t)*cos(1/2*2^(1/2)*t)+C2*exp(1/2*2^(1/2)*t)*cos(1/2*2^(1/2)*t)C3*exp(-1/2*2^(1/2)*t)*sin(1/2*2^(1/2)*t)+C4*exp(1/2*2^(1/2)*t)*sin(1/2*2^(1/2)*t) y2 =-C1*exp(-1/2*2^(1/2)*t)*sin(1/2*2^(1/2)*t)C2*exp(1/2*2^(1/2)*t)*sin(1/2*2^(1/2)*t)+C3*exp(1/2*2^(1/2)*t)*cos(1/2*2^(1/2)*t)+C4*exp(1/2*2^(1/2)*t)*cos(1/2*2^(1/2)*t)


MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
MATLAB第二讲 : MATLAB数值与符号计算 MATLAB第二讲 MATLAB数值与符号计算
北京林业大学陈来荣
总结
本部分是matlab的基础部分,是后续学习绘图、编 程、工具箱的基础 matlab计算功能非常强大,几乎可以进行所有的一 般数学领域的计算 学习需要结合具体的数学知识及专业技能 学习的重点是了解matlab的功能和基本操作,在实 际应用中要充分利用帮助文件
第二次作业











相关文档
最新文档