当前位置:文档之家› ch2_符号计算

ch2_符号计算

ch2_符号计算
ch2_符号计算

第 2 章符号计算

符号计算:

解算数学表达式、方程不是在离散化的数值点上进行,而是凭借一系列恒等式,数学定理,通过推理和演绎,获得解析结果。

特点:

一,相对于MATLAB的数值计算“引擎”和“函数库”而言,符号计算的“引擎”和“函数库”是独立的。

二,在相当一些场合,符号计算解算问题的指令和过程,显得比数值计算更自然、更简明。三,大多数理工科的本科学生在学过高等数学和其他专业基础课以后,比较习惯符号计算的解题理念和模式。

Symbolic Math Toolbox?The computational engine underlying the toolboxes is the kernel of Maple software, a system developed primarily at the University of Waterloo, Canada and, more recently, at the Eidgen?ssiche Technische Hochschule, Zürich, Switzerland. Maple software is marketed and supported by Waterloo Maple, Inc.

运算引擎MuPAD

MuPAD作为MATLAB7.8的符号计算工具箱,是一具有人工智能的数学软件。方程式可以处理复数计算,完美的绘图功能,图型输入,输出,可以输入多个2-D函数或极坐标函数或3-D函数,选择所要绘图参数,就可以完成图形,以及图形的动画制作也是非常方便。数值计算结果并不是MATLAB命令行窗口所得的类似代码形式,而是规范数学格式。并拥有一内建的程序语言,帮助文档以及文本操作,文本操作在一定程度上可以取代word。MathWorks自从2008年10开始,在Matlab的新版本(Matlab2008a,即7.6之后)中使用MuPAD 内核替换原来的Maple符号计算内核!

2.1符号对象和符号表达式

MATLAB依靠基本符号对象(包括数字、参数、变量)、运算符及一些预定义函数来构造和衍生符号表达式和符号方程。

2.1.1符号对象的创建和衍生

一生成符号对象的基本规则

●任何基本符号对象都必须借助专门的符号函数指令sym或syms定义。

●任何包含符号对象的表达式或方程,将继承符号对象的属性。

二符号数字

符号(类)数字的定义:

sym('Num') 创建一个符号数字Num

sc=sym('Num') 创建一个符号常数sc,该常数值准确等于Num

说明:Num代表一个具体的数字

Num必须处于(英文状态下的)单引号内,构成字符串(关于字符串参见附录A.1)。

【例2.1-1】符号(类)数字与数值(类)数字之间的差异。

a=pi+sqrt(5) % 创建方式

sa=sym('pi+sqrt(5)')

Ca=class(a) % 类别判断

Csa=class(sa)

vpa(sa-a)

a =

5.3777

sa =

pi+sqrt(5)

Ca =

double

Csa =

sym

ans =

.138223758410852e-16

三符号参数

表达式e-ax sinbx中的a,b称为参数。

定义格式:

syms Para 定义符号参数Para

Para=sym('Para')

syms Para Flag 定义具有Flag指定属性的符号参数Para

Para=sym('Para', 'Flag')

syms Para1 Para2 ParaN 定义Para1 Para2 ParaN为符号参数

syms Para1 Para2 ParaN Flag 定义Para1 Para2 ParaN为具有Flag指定属性的符号参数●符号参数名不要用处于“字母表中小写字母x及其两侧的英文字母”开头。

●Flag表示参数属性,可具体取以下词条:

positive 表示那些符号参数取正实数;

real 表示那些符号参数限定为实时;

unreal 表示那些符号参数为不限定的复数。

syms x a b

int(1/(x),a,b)

Warning: Warning, unable to determine if 0 is between a and

b; try to use assumptions or set _EnvAllSolutions to true

Warning: Explicit integral could not be found.

> In sym.int at 58

ans =

int(1/x,x = a .. b)

Var=sym('x');

Upp=sym('a','real');

Low=sym('b','real');

Intergral=int(1/(x),a,b)

Warning: Warning, unable to determine if 0 is between a and

b; try to use assumptions or set option _EnvAllSolutions to

Warning: Explicit integral could not be found. > In sym.int at 58 Intergral =

int(1/x,x = a .. b)

Var=sym('x');

Upp=sym('a','positive'); Low=sym('b','positive'); Intergral=int(1/(x),a,b) Intergral =

-log(a)+log(b)

四 符号变量

e -ax

sinbx 中的x 称为变量,符号变量的定义同符号参数。

确定自由符号变量的规则:

● 在专门指定变量名的符号运算中,解题一定围绕指定变量名进行。 ● 自动识别符号变量时,字母的优先次序为x ,y,w,z,v 等。

自动识别表达式中自由、独立的符号变量的指令: findsym(EXPR) 确认表达式EXPR 中所有自由符号变量

findsym(EXPR, N) 确认表达式EXPR 中距离x 最近的N 个自由符号变量

【例2.1-2】用符号计算研究方程02

=++w vz uz 的解。 (1)不指定变量情况

syms u v w z % 定义符号参数/变量 Eq=u*z^2+v*z+w;

result_1=solve(Eq)

%

findsym(Eq,1)

result_1 = -u*z^2-v*z ans = w

(2)指定变量情况

result_2=solve(Eq,z) result_2 =

-1/2*(v-(v^2-4*u*w)^(1/2))/u -1/2*(v+(v^2-4*u*w)^(1/2))/u

【例2.1-3】对独立自由符号变量的自动辨认。 (1)

syms a b x X Y % 定义符号参数/变量 k=sym('3'); % 符号常数

z=sym('c*sqrt(delta)+y*sin(theta1)'); % 直接定义符号表达式 EXPR=a*z*X+(b*x^2+k)*Y; % 构成衍生符号表达式

(2)

findsym(EXPR) ans =

X, Y, a, b, c, delta, theta1, x, y

(3)

findsym(EXPR,1)

x

(4)

findsym(EXPR,2),findsym(EXPR,9)

ans =

x,y

ans =

x,y,theta1,delta,c,b,a,X,Y

【例2.1-4】findsym确定自由变量是对整个矩阵进行的。

syms a b t u v x y

A=[a+b*x,sin(t)+u;x*exp(-t),log(y)+v]

findsym(A,5)

A =

[ a+b*x, sin(t)+u]

[ x*exp(-t), log(y)+v]

ans =

x,y,v,u,t

2.1.2符号计算中的算符

●与数值计算中的算符在形状、名称和使用方法上几乎完全相同。

●仅注意:在符号对象的关系运算符中,只有算符“==”,“~=”

比较结果为“真”时,用1表示; 否则用0表示。

2.1.3符号计算中的函数指令

注意:使用函数注意数据类型。就数字而言,有双精度和符号类数字之分。

2.1.4符号对象的识别

为了函数指令与数据对象的适配,MATLAB提供了用于识别数据对象属性的指令:class(var) 给出变量var的数据类别(如double,sym等)

isa(var, 'Obj') 若变量var是Obj代表的类型,给出1,表示“真”

whos 给出所有MATLAB内存变量的属性

【例2.1-5】数据对象及其识别指令的使用。

(1)

clear

a=1;b=2;c=3;d=4; % 产生4个数值变量

Mn=[a,b;c,d] % 利用已赋值变量构成数值矩阵

Mc='[a,b;c,d]' % 字符串中的a,b,c,d与前面输入的数值变量无关Ms=sym(Mc) % Ms是一个符号矩阵,它与前面各变量无关

Mn =

1 2

3 4

Mc =

[a,b;c,d]

Ms =

[ a, b]

[ c, d]

(2)

SizeMn=size(Mn)

SizeMc=size(Mc)

SizeMs=size(Ms)

SizeMn =

2 2

SizeMc =

1 9

SizeMs =

2 2

(3)

CMn=class(Mn)

CMc=class(Mc)

CMs=class(Ms)

CMn =

double

CMc =

char

CMs =

sym

(4)

isa(Mn,'double')

isa(Mc,'char')

isa(Ms,'sym')

ans =

1

ans =

1

ans =

1

(5)

whos Mn Mc Ms

Name Size Bytes Class Attributes

Mc 1x9 18 char

Mn 2x2 32 double

Ms 2x2 312 sym

2.2符号数字及表达式的操作

2.2.1数值数字与符号数字之间的转换

一数值数字向符号数字的转换

在符号运算中,“数值类数字”会自动地转换为符号数字。

亦可借助sym函数:

sym(Num,'r')或sym(Num)数值类数字Num的广义有理表达

sym(Num,'d') 数值类数字Num的“十进制浮点”近似表达sym(Num,'e') 数值类数字Num的带eps误差的理性近似表达sym(Num,'f') 数值类数字Num的“十六进制浮点”近似表达

a=pi

a1=sym(a,'r')

a2=sym(a,'d')

a3=sym(a,'e')

a4=sym(a,'f')

a =

3.1416

a1 =

pi

a2 =

3.1415926535897931159979634685442

a3 =

pi-198*eps/359

a4 =

'1.921fb54442d18'*2^(1)

a=pi+0.1;

a1=sym(a,'r')

a2=sym(a,'d')

a3=sym(a,'e')

a4=sym(a,'f')

a1 =

7299417733396965*2^(-51)

a2 =

3.2415926535897932048158054385567

a3 =

7299417733396965*2^(-51)

a4 =

'1.9eec82110f9e5'*2^(1)

1、Num只能是数值类数字

2、sym('Num')和sym(Num)区别问题

'Num'数字字符串,理论值,Num表示数字,近似(双精度值)

3、在符号运算中,“数值数字”自动转换为符号运算

二符号数字向双精度数字转换

double(Num_sym) 把符号数字Num_sym转换为双精度数字2.2.2符号数字的任意精度计算

digits 显示当前环境下符号数字“十进制浮点”表示的有效数字位数

digits(n) 设定符号数字“十进制浮点”表示的有效数字位数(默认32位)

xs=vpa(x) 据表达式x得到digits指定精度下的符号数字xs

xs=vpa(x,n) 据表达式x得到n位有效数字的符号数字xs

【例2.2-1】digits, vpa指令的使用。

digits

p0=sym('(1+sqrt(5))/2')

pr=sym((1+sqrt(5))/2)

p d=sym((1+sqrt(5))/2,'d')

e32r=vpa(abs(p0-pr) )

e16=vpa(abs(p0-pd),16) %16位变精度运算计算误差

e32d=vpa(abs(p0-pd))

e16=vpa(abs(p0-pd),64)

digits

2.2.3符号表达式的基本操作

collect(合并同类项)

factor(进行因式分解)

numden(提取公因式)等

最常用:

simple(EXPR) 把EXPR转换成最简形式

【例2.2-2】简化

3

2

3

8

12

6

1

+

+

+

=

x

x

x

f。

syms x

f=(1/x^3+6/x^2+12/x+8)^(1/3); g1=simple(f)

g2=simple(g1)

有时需要多次使用simple

simple(f) %直接看化简过程

simple(ans)

pretty(f)

2.2.4 表达式中的置换操作 一

子表达式置换操作

[RS,ssub]=subexpr(S,ssub) 运用符号变量ssub 置换子表达式,并重写S 为RS

【例2.2-3】对符号矩阵??

?

?

??d c b a 进行特征向量分解。 clear all

syms a b c d W

[V,D]=eig([a b;c d]) % V :特征向量阵 D :特征值阵

[RVD,W]=subexpr([V;D],W) %对矩阵元素中的公共子表达式进行置换表达

只置换较长的表达式

二 通用置换指令

RES=subs(ES,old,new) 用new 置换ES 中的old 后产生RES

RES=subs(ES,new) 用new 置换ES 中的自由变量后产生RES

【例2.2-4】用简单算例演示subs 的置换规则。 (1)产生符号函数

syms a x;f=a*sin(x)+5

f =

a*sin(x)+5

(2)符号表达式置换

f1=subs(f,'sin(x)',sym('y'))

%<2>

class(f1)

(3)符号常数置换

f2=subs(f,{a,x},{2,sym('pi/3')}) % <3> a 被双精度数字置换,x 被符号数字置换 class(f2)

(4)双精度数值置换

f3=subs(f,{a,x},{2,pi/3})

%<4>

class(f3)

(5)数值数组置换之一

f4=subs(subs(f,a,2),x,0:pi/6:pi)

%<5>

class(f4)

(6)数值数组置换之二

f5=subs(f,{a,x},{0:6,0:pi/6:pi})

%<6>

class(f5)

f6=subs(f,{a,x},{0:7,0:pi/6:pi}) %<6>

class(f5)

2.3

符号微积分

2.3.1

极限和导数的符号计算

大学本科高等数学中的大多数微积分问题,都能用符号计算解决,手工笔算演绎的烦劳都可以由计算机完成。

limit(f,v,a) 求极限 )(lim v f a

v →

【例2.3-1】试求kx

x x ??

?

??-∞

→11lim 。

syms x k

Lim_f=limit ((1-1/x)^(k*x),x ,inf)

diff(f,v,n) 求n n dv f

d (n 缺省时,默认n=1)

【例2.3-2】求??

????=x x t t a f ln cos 3求dx df , 22dt f d ,dtdx f

d 2。

syms a t x;f=[a,t^3;t*cos(x), log(x)]; df=diff (f) %f 对x 的导数

dfdt2=diff(f,t,2) %f 对x 的二阶导数 dfdxdt=diff(diff(f,x),t) %二阶混合导数

【例2.3-3】求????

??????=)sin()cos(),(2121212x x x e x x x x f 的Jacobian (雅可比)矩阵?????

???

??????????????????????231

3221

2

2111x f x f x f x f x f x

f 。 syms x1 x2;f=[x1*exp(x2);x2;cos(x1)*sin(x2)];

v=[x1 x2];fjac=jacobian(f,v)

【例2.3-4】x x f sin )(=,求)0(x f ',)(x f x '。 (1)

clear

syms x

syms d positive

f_p=sin(x); % df_p=limit((subs(f_p,x,x+d)-f_p)/d,d,0) % <4>

df_p0=limit((subs(f_p,x,d)-subs(f_p,x,0))/d,d,0) % <5>

(2)

f_n=sin(-x); df_n=limit((f_n-subs(f_n,x,x-d))/d,d,0) % <7> df_n0=limit((subs(f_n,x,0)-subs(f_n,x,-d))/d,d,0) %<8>

(3)

f=sin(abs(x)); dfdx=diff(f,x)

% <10>

dfdx =

cos(abs(x))*abs(1,x) %abs(1,x)表示x 一阶导数

(4)

xn=-3/2*pi:pi/50:0;xp=0:pi/50:3/2*pi;xnp=[xn,xp(2:end)]; hold on

plot(xnp,subs(f,x,xnp),'k','LineWidth',2.5) % <13> plot(xn,subs(df_n,x,xn),'--r','LineWidth',2.5) plot(xp,subs(df_p,x,xp),':r','LineWidth',2.5)

legend(char(f),char(df_n),char(df_p),'Location','NorthEast')% <16> grid on

xlabel('x') hold off

2.3.2 序列/级数的符号求和

symsum(f,v,a,b) 求f 在变量v 取遍[a, b]中所有整数时的和。a,b 缺省时默认求和区间[0, v-1]。

【例2.3-8】求∑-=1

03

],[t t k t ,∑∞

=??

?

???--12

)1(,)12(1k k k k 。 syms k t;f1=[t k^3];f2=[1/(2*k-1)^2,(-1)^k/k];

s1=simple(symsum (f1)) % f1的自变量被确认为t s2=simple(symsum (f2,1,inf)) % f1的自变量被确认为k

syms x y;f1=[y x^3];f2=[1/(2*y-1)^2,(-1)^y/y];

s1=simple(symsum(f1)) % f1的自变量被确认为x

2.3.3 符号积分

int(f,v) 求f 对变量v 的不定积分 int(f,v,a,b) 求f 对变量v 的定积分

【例2.3-9】求

dx x x

x +?11。

clear syms x

f=sqrt((1+x)/x)/x

s=int(f,x)

s=simple(simple(s)) f =

((x + 1)/x)^(1/2)/x s =

- 2*(1/x + 1)^(1/2) - 2*atan((1/x + 1)^(1/2)*i)*i s =

- 2*(1/x + 1)^(1/2) - 2*atan((1/x + 1)^(1/2)*i)*i

【例2.3-10】求dx x x bx ax ????

?

?????sin 1

2。 syms a b x;f=[a*x,b*x^2;1/x,sin(x)];

disp('The integral of f is');pretty(int(f))

【例2.3-11】求积分

???

++2

1

22222)(x x y

x xy

dzdydx z y x 。

syms x y z

F2=int (int (int (x^2+y^2+z^2,z,sqrt(x*y),x^2*y),y,sqrt(x),x^2),x,1,2) VF2=vpa (F2) %积分结果用32位数字表示

【例 2.3-12】求阿基米德(Archimedes )螺线)0(,>?=a a r θ在0=θ到?间的曲线长

度函数,并求出π?2,1==a 时的曲线长度。 (1)

syms a r theta1 phi1 positive x=r*cos(theta1);x=subs(x,r,a*theta1); y=r*sin(theta1);y=subs(y,r,a*theta1);

dLdth=sqrt(diff(x,theta1)^2+diff(y,theta1)^2); L=simple(int(dLdth,theta1,0,phi1))

(2)

L_2pi=subs(L,[a,phi1],sym('[1,2*pi]')) L_2pi_vpa=vpa(L_2pi)

L_2pi =

asinh(2*pi)/2 + pi*(4*pi^2 + 1)^(1/2) L_2pi_vpa =

21.256294148209098800702512272566

(3)

L1=subs(L,a,sym('1'));

ezplot(L1*cos(phi1),L1*sin(phi1),[0,2*pi]) grid on hold on

x1=subs(x,a,sym('1')); y1=subs(y,a,sym('1'));

h1=ezplot(x1,y1,[0,2*pi]);

set(h1,'Color','r','LineWidth',5) title(' ')

legend('螺线长度-幅角曲线','阿基米德螺线') hold off

2.4

利用MAPLE 的深层符号计算资源

【例2.8-1】求

?x

dt t 0 ln 1,)1 ,0(∈x 。注意:被积函数在0=t 无定义,在-

=1t 处为负

无穷。 (1)

syms t, syms x positive ft=1/log(t);

sx=int(ft,t,0,x)

(2)

x=0.5:0.1:0.9

sx_n=-mfun('Ei',1,-log(x))

2.4.1 发挥MAPLE 的计算潜力

【例2.8-2】求递推方程f n f n f n ()()()=----3122的通解。 (1)

gs1=maple('rsolve(f(n)=-3*f(n-1)-2*f(n-2),f(k));')

%<1>

gs1 =

(2*f(0)+f(1))*(-1)^k+(-f(0)-f(1))*(-2)^k

(2)

gs2=maple('rsolve','f(n)=-3*f(n-1)-2*f(n-2)','f(k)')

%<2>

gs2 =

(2*f(0)+f(1))*(-1)^k+(-f(0)-f(1))*(-2)^k

2.4.2 符号计算结果的数值化绘图

【例2.9-4】在)1 ,0(区间,图示t ln 1

和?x dt t

0 ln 1(在例2.8-1中已计算过积分)。 (1)

syms t x positive

ft=1/log(t);

sx=int(ft,t,0,x) sx =

PIECEWISE([NaN, 1 < x],[-Ei(1,-log(x)), otherwise])

(2)

x=0.1:0.05:0.9; sx_n=-mfun('Ei',1,-log(x));

(3)图示被积函数和积分函数

clf

ezplot('1/log(t)',[0.1,0.9]) grid on hold on

plot(x,sx_n,'LineWidth',3) Char1='1/ln(t)';

Char2='{\int_0^x} 1/ln(t) dt'; title([Char1,' and ',Char2])

legend(Char1,Char2,'Location','SouthWest')

交互近似积分

syms x

f=sin(x)+log(x); rsums(f,1,10)

1. 说出以下三条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”

对象?

3/7+0.1, sym(3/7+0.1), vpa(sym(3/7+0.1))

〖答案〗

2. 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是独立自由变量。

sym('sin(w*t)') , sym('a*exp(-X)' ) , sym('z*exp(j*theta)')

〖答案〗

3. 求符号矩阵????

??????=3332

31

232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。

〖答案〗

syms a11 a12 a13 a21 a22 a23 a31 a32 a33 ssub det(A),B=A^-1,

[RS,ssub]=subexpr(B,ssub)

4. 对函数??

?<≥=00

)(k k a

k f k

,当a 为正实数时,求∑

=-0

)(k k

z k f 。(实际上,这

就是根据定义求Z 变换问题。)

〖答案〗

syms a positive

syms z k f=a^k;

symsum(f*z^(-k),k,0,inf)

5. 对于0>x ,求1

20

11122+∞

=∑?

??

??+-+k k x x k 。(提示:理论结果为x ln )

〖答案〗

syms x positive syms z k

f=2/(2*k+1)*(((x-1)/(x+1))^(2*k+1)); symsum(f,k,0,inf)

ans =

piecewise([abs(x - 1) < x + 1, 2*atanh((x - 1)/(x + 1))])

6. (1)通过符号计算求t t y sin )(=的导数dt

dy

。(2)然后根据此结果,求

-

=0

t dt dy 和

2

π

=t dt dy

〖答案〗

syms t

y=abs(sin(t)); dydt=diff(y)

d0=limit(dydt,t,0,'left') dpi_2=limit(dydt,pi/2) dydt =

sign(sin(t))*cos(t) d0 = -1

dpi_2 = 0

d =

abs(1,sin(t))*cos(t) d0_ = -1

dpi_2 = 0

7. 求出

dx x e

x

sin 7.15?

--π

π

的具有64位有效数字的积分值。

〖答案〗

syms x

y=int(exp(-abs(x))*abs(sin(x)),x,-5*pi,1.7*pi) vpa(y,64)

matlab 2010b y =

1/exp(pi) + exp(2*pi) + exp(3*pi) + exp(4*pi) + exp(5*pi)/2 - 1/(8*exp((17*pi)/10)) + exp(pi) - 5^(1/2)/(8*exp((17*pi)/10)) + (2^(1/2)*(5 - 5^(1/2))^(1/2))/(8*exp((17*pi)/10)) + 1 ans =

3617514.635647088707100018393465500554242735057835123431773680704

8. 计算二重积分

??

+2

1

1

222

)(x dydx y x 。

〖答案〗

9. 在]2,0[π区间,画出dt t

t

x y x

?

=

sin )(曲线,并计算)5.4(y 。

〖答案〗

第章MATLAB符号计算习题答案

第9章 MATLAB符号计算 习题9 一、选择题 1.设有a=sym(4)。则1/a+1/a的值是()。B A. B.1/2 C.1/4+1/4 D.2/a 2.函数factor(sym(15))的值是()。D A.'15' B.15 C.[ 1, 3, 5] D.[ 3, 5] 3.在命令行窗口输入下列命令: >> f=sym(1); >> eval(int(f,1,4)) 则命令执行后的输出结果是()。A A.3 B.4 C.5 D.1 4.MATLAB将函数展开为幂级数,所使用的函数是()。D A.tailor B.tayler C.diff D.taylor 5.MATLAB用于符号常微分方程求解的函数是()。C

A.solve B.solver C.dsolve D.dsolver 二、填空题 1.在进行符号运算之前首先要建立,所使用的函数或命令有 和。符号对象,sym,syms 2.对于“没有定义”的极限,MATLAB给出的结果为;对于 极限值为无穷大的极限,MATLAB给出的结果为。NaN,Inf 3.在命令行窗口输入下列命令: >> syms n; >> s=symsum(n,1,10) 命令执行后s的值是。55 4.在MATLAB中,函数solve(s,v)用于代数方程符号求解,其中s 代表,v代表。符号代数方程,求解变量 5.在MATLAB符号计算中y的二阶导数表示为。D2y 三、应用题 1.分解因式。 (1)x9-1 (2)x4+x3+2x2+x+1 (3)125x6+75x4+15x2+1 (4)x2+y2+z2+2(xy+yz+zx) (1):

隐函数方程求解以及导函数——符号计算和数值计算结合

这个问题可以作为符号运算和数值运算结合的很好的一个例子:利用隐函数求导公式对f 进行一二阶求导,然后利用solve得到B关于t的一、二阶导数的符号表达式,然后再利用eval函数转化成数值表达式:整个代码如下: 1. 2.syms A B ; 3.r=1;beta=pi/5;rho=2; 4.%f的符号表达式 5.f=(r*sin(A)-rho*sin(3*B))*(cos(beta)-sin(beta)*cos(3*B)-... 6. sin(beta)*sin(3*B)*tan(B))-(r*cos(A)-rho*cos(beta)*cos(3*B))* tan(B); 7.%将A,B分别用90*t和B(t)替换,为的是好利用符号diff函数来求对B关于 t的隐函数F求导 8. F = subs(f,{'A','B'},{'90*t','B(t)'}); 9.dFt = diff(F,'t');%一阶导数 10.%将diff(B(t), t)用dBt替换,为的是下一步方便用solve求解diff(B(t), t) 的表达式 11.dFt = subs(dFt,'diff(B(t), t)','dBt'); 12.dBt = solve(dFt,'dBt');%得到B关于t的一阶导数的表达式 13.%将dBt用dBt(t)替换,为的是告诉MATLAB,dBt是关于t的函数,能够进一步 求导 14.dFt_ = subs(dFt,'dBt','dBt(t)'); 15.ddFt = diff(dFt_,'t');%二阶导数 16.%替换'diff(dBt(t), t)','diff(B(t), t)',方便求解ddBt的表达式 17.ddFt = subs(ddFt,{'diff(dBt(t), t)','diff(B(t), t)'},{'ddBt','dBt(t)'}); 18.ddBt = solve(ddFt,'ddBt');%求解B关于t的二阶导数的表达式 19.B = @(t) fzero(@(B) (r*sin(90*t)-rho*sin(3*B))*(cos(beta)-... 20. sin(beta)*cos(3*B)-sin(beta)*sin(3*B)*tan(B))-... 21. (r*cos(90*t)-rho*cos(beta)*cos(3*B))*tan(B),1);%B关于t的函数 22.eval(['dBt = @(t) ',char(dBt),';' ])%利用eval函数将符号dBt的表达式 转化为数值函数 23.eval(['ddBt = @(t) ',char(ddBt),';' ]) 24.R = 1; 25.C = @(t) R*cos(90*t)/tan(B(t))+sin(90*t);%C的表达式 26.t = 0.2:0.1:2; 27.plot(t,arrayfun(@(T) C(T),t) )%画C关于t的图 28. 复制代码 需要说明的是得到B的函数句柄B(t)后我们可以利用导数的定义来近似表达式dBt,和ddBt,这样的优点是速度快,但是不精确。上述得到的dBt,ddBt,较为精确,但是计算量比较大。 1. 2.>> (B(1)-B(1.00001))/-0.00001

matlab符号运算

MATLAB程序设计教程(9)——MATLAB符号计算 by:ysuncn(欢迎转载,请注明原创信息) 第9章MATLAB符号计算 9.1 符号对象 9.2 符号微积分 9.3 级数 9.4 符号方程求解 9.1 符号对象 9.1.1 建立符号对象 1.建立符号变量和符号常量 MATLAB提供了两个建立符号对象的函数:sym和syms,两个函数的用法不同。 (1) sym函数 sym函数用来建立单个符号量,一般调用格式为: 符号量名=sym('符号字符串') 该函数可以建立一个符号量,符号字符串可以是常量、变量、函数或表达式。 应用sym函数还可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。

下面的命令用于比较符号常量与数值常量在代数运算时的差别。 (2) syms函数 函数sym一次只能定义一个符号变量,使用不方便。MATLAB提供了另一个函数syms,一次可以定义多个符号变量。syms函数的一般调用格式为: syms 符号变量名1 符号变量名2 … 符号变量名n 用这种格式定义符号变量时不要在变量名上加字符串分界符(‘),变量间用空格而不要用逗号分隔。 2.建立符号表达式 含有符号对象的表达式称为符号表达式。建立符号表达式有以下3种方法: (1)利用单引号来生成符号表达式。 (2)用sym函数建立符号表达式。 (3) 使用已经定义的符号变量组成符号表达式。 9.1.2 符号表达式运算 1.符号表达式的四则运算 符号表达式的加、减、乘、除运算可分别由函数symadd、symsub、symmul和symdiv来实现,幂运算可以由sympow来实现。

【免费下载】MATLAB符号运算习题

第3讲 MATLAB 符号计算符号计算则是可以对未赋值的符号对象(可以是常数、变量、表达式)进行运算和处理。MATLAB 具有符号数学工具箱(Symbolic Math Toolbox),将符号运算结合到MATLAB 的数值运算环境。符号数学工具箱是建立在Maple 软件基础上的。 1、求矩阵的行列式值、非共轭转置和特征值。??????=22211211a a a a A 解: >> A=sym('[a11,a12;a21,a22]') A = [ a11, a12][ a21, a22] >> B=det(A) B = a11*a22-a12*a21 >> C=A.' C = [ a11, a21][ a12, a22] >> D=eig(A) D = 1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2) 1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)2\符号表达式f=2x 2+3x+4与g=5x+6的代数运算(f+g ,f*g )。

解: 2、将g=x3-6x2+11x-6用两种形式的符号表达式的表示。(因 式和嵌套式) 解:>> f=sym('x^3-6*x^2+11*x-6') f = x^3-6*x^2+11*x-6 >> g=sym('(x-1)*(x-2)*(x-3)') g = (x-1)*(x-2)*(x-3) >> g1=sym('x*(x*(x-6)+11)-6') g1 = x*(x*(x-6)+11)-6

符号计算(2)

5.1微分方程的符号解法 5.1.1符号解法和数值解法的互补作用5.1.2求微分方程符号解的一般指令5.1.3微分方程符号解示例 【例5.4-1】求d x d t y d y d t x ==- ,的解。 clear all %<1> S=dsolve('Dx=y,Dy=-x') disp(' ') disp(['微分方程的解',blanks(8),'x',blanks(20),'y']) disp([S.x,S.y]) S = y: [1x1 sym] x: [1x1 sym] 微分方程的解 x y [ C2*cos(t) + C1*sin(t), C1*cos(t) - C2*sin(t)] 【例5.4-2】图示微分方程2) (y y x y' -' =的通解和奇解的关系。(1) clear all %<1> y=dsolve('(Dy)^2-x*Dy+y=0','x') %<2> y = x^2/4 C3*x - C3^2 (2) clf,hold on hy1=ezplot(y(1),[-6,6,-4,8],1); %<4> set(hy1,'Color','r','LineWidth',5) for k=-2:0.5:2 %<6> y2=subs(y(2),'C3',k); %<7> ezplot(y2,[-6,6,-4,8],1) end %<9> hold off box on

legend('奇解','通解','Location','Best') ylabel('y') title(['\fontsize{14}微分方程',' (y '')^2 – xy '' + y = 0 ','的解']) -6 -4-2 0246 -4-2 2 4 6 8 x 微分方程 (y ')2 – xy ' + y = 0 的解 y 奇解通解 图 5.4-1 通解和奇解曲线 【例5.4-3】求解两点边值问题:0)5(,0)1(,32==='-''y y x y y x 。 (1) y=dsolve('x*D2y-3*Dy=x^2','y(1)=0,y(5)=0','x') y = (31*x^4)/468 - x^3/3 + 125/468 (2) xn=-1:6; yn=subs(y,'x',xn) ezplot(y,[-1,6]) hold on plot([1,5],[0,0],'.r','MarkerSize',20) text(1,1,'y(1)=0') text(4,1,'y(5)=0') title(['x*D2y - 3*Dy = x^2',', y(1)=0,y(5)=0']) hold off yn = Columns 1 through 7 0.6667 0.2671 0 -1.3397 -3.3675 -4.1090 0.0000

符号运算练习题 homework

第五章符合运算练习题 1.求符号函数f=ax3+by2+cx+d分别对x,y进行三次微分;对 y进行定积分和不定积分,对y 的定积分区间为(0,1);对y趋向于1求极限。

2. 已知f=1/(1+x^2),g=sin(y),求复合函数f(g(y)). >> syms x y; >> f=1/(1+x^2); >> g=sin(y); >> compose(f,g) ans = 1/(1+sin(y)^2) 3.求三元非线性方程组?? ???-==+=++1z *y 43z x 012x x 2的解。 >> syms x y z; >> f1=sym('x^2+2*x+1'); >> f2=sym('x+3*z-4'); >> f3=sym('y*z+1'); >> solve(f1,f2,f3); >> [x,y,z]=solve(f1,f2,f3) x = -1 y = -3/5 z = 5/3

解方程组??? ????=+=-1 cos y dx dz x z dx dy 当y(0)=1,z(0)=0时,求微分方程组的解。 >> [y,z]=dsolve('Dy-z=cos(x)','Dz+y=1','y(0)=1','z(0)=0','x') y = 1+1/2*sin(x)+1/2*cos(x)*x z = -1/2*sin(x)*x 5.求级数 +++++222k 131211和1+x+x 2+…+x k +…的和。 >> syms k; >> symsum(1/k^2,k,1,inf) ans = 1/6*pi^2 >> syms x k; >> symsum(x^k,k,0,inf) ans = -1/(x-1) 6计算积分21x dx 1x +∞?(+) >> syms x ; >> f=sym('sqrt(x)/((1+x)^2)'); >> int(f,x,1,+inf) ans =

第2章0和1-语义符号化、符号计算化与计算自动化练习题答案解析

第2章符号化、计算化与自动化 1、易经是用0和1符号化自然现象及其变化规律的典型案例。下列说法不正确的是_____。 (A)易经既是用0和1来抽象自然现象,同时又不单纯是0和1,起始即将0和1与语义“阴”和“阳”绑定在一起; (B)易经本质上是关于0和1、0和1的三画(或六画)组合、以及这些组合之间相互变化规律的一门学问; (C)易经仅仅是以自然现象为依托,对人事及未来进行占卜或算卦的一种学说; (D)易经通过“阴”“阳”(即0和1)符号化,既反映了自然现象及其变化规律,又能将其映射到不同的空间,反映不同空间事务的变化规律,例如人事现象及其变化规律。 答案:C 解释: 本题考核内容:考核0和1与易经 A.A的描述完全正确; B.B的叙述也完全正确; C.不正确,易经不仅仅以自然现象为依托,对事及未来进行占卜或算卦的一种学说,他还是将现象抽象为符号,进行符号组合,利用符号组合表达自然现象; D.D的表述完全正确,易经既反映了自然现象及其变化规律,还反映不同空间事物的变化规律; 具体内容请参考第二章视频“2. 0和1与易经”的“1.1~1.4”视频。 2、易经的乾卦是从“天”这种自然现象抽象出来的,为什么称其为“乾”而不称其为“天”呢?_____。 (A)易经创作者故弄玄虚,引入一个新的名词,其实没有必要; (B)易经的“乾”和“天”是不同的,“乾”是一种比“天”具有更丰富语义的事物; (C)“天”是一种具体事物,只能在自然空间中应用,若变换到不同空间应用,可能会引起混淆;而“乾”是抽象空间中的概念,是指具有“天”这种事务的性质,应用于不同的空间时不会产生这种问题; (D)易经创作者依据阴阳组合的符号特征,选择了更符合该符号的名字“乾”。 答案:C 解释: 本题考核内容:考核0和1与易经 A不正确,易经并不是故弄玄虚的; B不正确,易经中“乾”为“天”,“乾”是抽象空间中的概念,是指具有“天”这种事务的性质所以B并不正确; C完全正确,“天”是具体事物,“乾”是抽象概念; D不正确,“乾”并不是因为阴阳组合而命名的;

24点及巧填运算符号习题(四上数学游戏练习含答案)

. 巧算“24”点练习卷(一) 1.你能将2、4、5、8利用“+、-、×、÷”和括号组成一个结果为24的算式吗?有几种解法? ()()()8524382424583824582420424 -??=?=?-?=?=?÷+=+= 2.四张牌上的数是3、4、6、10,怎样用这四个不同的数组成得数是24 的算式? (写出三种解法) ()()()3104638243610418624 1043618624 ?+-=?=?+-=+=-?+=+= 3. 用1、2、5、8、这四个数组成得数是24的算式。(写出三 种解法) ()()()()()8215462452813824851212224 ÷?+=?=-??=?=+-?=?= 巧算“24”点练习卷(二) 1.怎样用下面四张牌上的数进行计算,使最后得数等于24?(写出三种解法) ()()()() ()2634121224 63423824 46322412434263824 ?+?=+=-??=?=??-=?=?÷+=?= 2. 怎样用3、3,8,9四个数进行计算,使最后得数等 于24?(写出三种解法) ()()()93383824 833915924833933924 --?=?=-?+=+=+?-=-= 3.用两个5和两个6计算,使最后得数等于24。(写出三 种解法) ()()55664624 556625124 65656424 +-?=?=?-÷=-=?--=?=????

. 巧算“24”点练习卷(三) 1.小华从一副扑克牌中摸出四张,请你进行计算,使最后得数等于24。 (写出三种解法) ()()()()6293462493623824396227324 -?-=?=÷?+=?=?-÷=-= 2.有四个数: 1、3、5、9,请你进行计算,使最后得数等于24。 (写出三种解法) ()()()135915924 51934624359124124 ??+=+=-?-=?=?+?=?= 3.你会用2、6、6、7这四个数进行计算,使最后的得数等于24吗? (写出三种解法) ()()()72663062467624822476264624 -?-=-=?+÷=÷=-÷?=?= 巧算“24”点练习卷(四) 1. 你会用两个4和两个5进行计算,使最后的得数是24吗? (写出三种解法) ()()554425124 4554462454546424 ?-÷=-=?+-=?=-+?=?= 2.有四个数: 2、4、8、10,请你进行计算,使最后得数等于 24。 (写出三种解法) ()()()()()82104462410284122244108248224 ÷?-=?=+?÷=?=?+÷=÷= 3.你会用3、4、7、10这四个数进行计算,使最后的得数等于24吗? (写出三种解法)

Mathematica强大的数值计算和符号运算数学专用软件

Mathematica强大的数值计算和符号运算数学专用软件 Mathematica是由美国物理学家Stephen Wolfram领导的Wolfram Research开发的数学系统软件。它拥有强大的数值计算和符号计算能力,在这一方面与Maple类似,但它的符号计算不是基于Maple上的,而是自己开发的。 Mathematica系统介绍 Mathematica的基本系统主要是用C语言开发的,因而可以比较容易地移植到各种平台上,Mathematica是一个交互式的计算系统,计算是在用户和Mathematica互相交换、传递信息数据的过程中完成的。Mathematica系统所接受的命令都被称作表达式,系统在接受了一个表达式之后就对它进行处理,然后再把计算结果返回。Mathematica对于输入形式有比较严格的规定,用户必须按照系统规定的数学格式输入,系统才能正确地处理,不过由于3.0版本(及以后版本)引入输入面板,并且可以修改、重组输入面板,因此以前版本输入指令时需要不断切换大小写字符的繁琐方式得到很好的改善。3.0版本可以用各种格式保存文件和剪贴内容,包括RTF、HTML、BMP等格式。 Mathematica是一个功能强大的数学软件,也是目前国内外最常用的数学软件之一。该软件不但可以解决数学中的数值计算问题,还可以解决符号演算问题,并且能够方便地绘出各种函数图形。不管是一个正在学习的学生,还是教师或科研人员,当在学习或科学研究中遇到棘手的数学问题时,Mathematica会提供的各种命令,可以避免做繁琐的数学推导和计算,帮助方便地解决所遇到的很多数学问题,使能省出更多的时间和精力做进一步的学习和探索。目前,我们在国内外的科研论文、教材等很多地方都能看到Mathematica的身影。此外,Mathematica 具有简单、易学、界面友好和使用方便等特点,只要你有一定的数学知识并了解计算机的基本操作方法,就能快速掌握Mathematica大部分主要功能,并能用Mathematica解决在学习、教学和科学研究中遇到的数学求解问题。 Mathematica功能简介 1、数值计算和符号计算

Matlab符号计算(含作业)

第 2 章符号计算 符号计算: 解算数学表达式、方程不是在离散化的数值点上进行,而是凭借一系列恒等式,数学定理,通过推理和演绎,获得解析结果。 符号计算建立在数值完全准确表达和推演严格解析的基础之上,所得结果完全准确。 特点: 一.相对于MATLAB的数值计算“引擎”和“函数库”而言,符号计算的“引擎”和“函数库”是独立的。 二.在相当一些场合,符号计算解算问题的命令和过程,显得比数值计算更自然、更简明。 三.大多数理工科的本科学生在学过高等数学和其他专业基础课以后,比较习惯符号计算的解题理念和模式。 2.1符号对象和符号表达式 MATLAB依靠基本符号对象(包括数字、参数、变量)、运算符及一些预定义函数来构造和衍生符号表达式和符号方程。 2.1.1基本符号对象和运算算符 1.生成符号对象的基本规则 ●任何基本符号对象(数字、参数、变量、表达式、函数)都必须借助 专门的符号命令sym、syms、symfun定义。 ●任何包含符号对象的表达式或方程,将继承符号对象的属性。

2.精准符号数字和符号常数 符号(类)数字的定义: sym(Num) 采用精准数值类数创建精准的符号数字(推荐格式!) sc=sym(Num) 采用精准数值类数创建精准的符号常数sc(推荐格式!) 说明:若输入量Num是精准的浮点数(如0.321、10/3等),能生成精准的符号数字; 若输入量Num是诸如sin(0.3)的数值表达式,那么就只能生成由数字表达式获得的16位精度的近似符号数字。 sym('Num') 采用有理分数字符串创建精准的符号数字 sc=sym('Num') 采用有理分数字符串创建精准的符号常数sc 说明: Num必须处于(英文状态下的)单引号内,构成字符串(关于字符串参见附录A); 只有当字符串数字'Num'采用诸如321/1000、10/3等整数构成的有理分数形式表达时,sym('Num') 才能生成精准的符号数字; 若字符串数字用诸如0.321、3.21e-1等“普通小数或科学记述数”表达,那么只能产生“近似符号数字”。在默认情况下,该近似符号数字为32位精度。 【例2.1-1】 (1)创建完全精准的符号数字或数字表达式 clear all R1=sin(sym(0.3)) % 输入量为普通小数 R2=sin(sym(3e-1)) % 输入量为科学记述数 R3=sin(sym(3/10)) % 输入量为有理分数 R4=sin(sym('3/10')) % 输入量为“整数构成的有理分数”字符串数字 disp(['R1属于什么类别?答:',class(R1)]) disp(['R1与R4是否相等?(是为1,否为0)答:',int2str(logical(R1==R4))]) R1 = sin(3/10) R2 = sin(3/10) R3 = sin(3/10) R4 = sin(3/10) R1属于什么类别?答:sym R1与R4是否相等?(是为1,否为0)答:1 (2)产生具有32位精度的“近似”符号数字(杜绝使用!) S1=sin(sym('0.3')) % sym的输入量是字符串小数,生成32位精度下的 % 近似符号数,进而在sin作用下给出近似符号数。 S2=sin(sym('3e-1')) % syms的输入量是字符串科学记述数。 eRS=vpa(abs(R1-S1),64); disp(['S1属于什么类别?答:',class(S1)]) disp(['S1与R1是否相同?答: ',int2str(logical(R1==S1))]) disp('S1与R1的误差为') disp(double(eRS)) S1 = 0.29552020666133957510532074568503

数学运算符号

数学符号的种类 数量符号 如:i,2+i,a,x,自然对数 底e,圆周率π。 运算符号 如加号(+),减号(-), 乘号(×或·),除号(÷或/),两个集合的并集(?),交集(?),根号(↗),对数(log,lg,ln),比(:),微分(dx),积分(?),曲线积分(?)等。 关系符号 如“=”是等号,“≈”是近 似符号,“≠”是不等号,“>” 是大于符号,“<”是小于符号,“?”是大于或等于符号(也可写 作“≤”),“?”是小于或等于 符号(也可写作“≥”),。“→”表示变量变化的趋势,“∽”是相 似符号,“≌”是全等号,“?” 是平行符号,“≧”是垂直符号,“↘”是成正比符号,(没有成反 比符号,但可以用成正比符号配倒 数当作成反比)“?”是属于符号,“?”是“包含”符号等。 结合符号 如小括号“()”中括号“[]”,大括号“{}”横线“—” 性质符号 如正号“+”,负号“-”, 绝对值符号“| |”正负号“±” 省略符号 如三角形(△),直角三角形(Rt△),正弦(sin),余弦(cos),x的函数(f(x)),极限(lim),角(?), ?因为,(一个脚站着的,站不住) ?所以,(两个脚站着的,能站住)总和(↖),连乘(?),从n个元素中每次取出r个元素所有不同的组合数(C(r)(n) ),幂(A,Ac,Aq,x^n)等。 排列组合符号 C-组合数 A-排列数 N-元素的总个数 R-参与选择的元素个数 !-阶乘,如5! =5×4×3×2×1=120 C-Combination- 组合 A-Arrangement-排列 离散数学符号(未全) ?全称量词 ?存在量词 ├ 断定符(公式在L中可证) ╞ 满足符(公式在E上有效,公式在E上可满足) ┐ 命题的“非”运算 ? 命题的“合取”(“与”)运算 ? 命题的“析取”(“或”,“可兼或”)运算 → 命题的“条件”运算 ?命题的“双条件”运算的 A<=>B 命题A 与B 等价关系 A=>B 命题 A与 B的蕴涵关系 A* 公式A 的对偶公式 wff 合式公式

符号运算

与Wolfram公司(Mathematics的开发公司)相比,Mathworks公司一直以矩阵计算和强大的数据处理能力见长,而符号计算非强项。1993年,mathworks公司从加拿大Waterloo Maple公司购买了maple的内核技术,作为MA TLAB符号运算与推导的平台,开发了用以进行符号计算的基本符号运算工具箱和扩展符号运算工具箱,从而解决了MA TLAB在符号计算方面的缺陷。 MA TLAB7.0的符号运算工具箱已上升到3.1.1版本,它几乎可以完成所有的符号运算功能,包括符号函数与符号方程的定义、运算、复合、化简、符号矩阵的计算、符号微分、符号积分、符号代数方程、符号微分方程的求解、符号积分变换和符号特殊函数。 在MA TLAB7.0的符号数学工具箱中,符号表达式含有符号函数和符号方程两种形式,它是表示数字、函数或变量的字符串或字符串组。字符就是符号变量的值。因此在MA TLAB的源程序中符号表达式被表示成字符串和字符串组。符号函数和符号方程的区别是符号函数没有等号,而符号方程必须有等号。 符号变量的定义 MA TLAB有默认的符号自变量,但在各种情况下默认的自变量是不同的。系统默认的自变量主要有x、x1、y、y1、z、v、u、t、theta、alpha。对于这些变量MA TLAB 的默认规则与平时数学习惯大致相同,即: 当这些变量中的某一个与其他变量组成符号数学表达式时,这个变量即为默认的自变量; 当这些变量中的某几个组成符号数学表达式是,默认自变量的顺序是:x>x1>y>y1>z>v>u>t>theta>alpha 例如:

当数学表达式为cos(2*x*a^2)时,默认的自变量为x; 当数学表达式为cos(2*x*v)时,默认的自变量为x; 当数学表达式为cos(2*t*alpha)时,默认的自变量为t; 符号变量可以通过命令syms和sym定义,syms命令一个可以定义一个或多个符号变量。sym一个只能定义一个符号变量。 >> syms x y z t >> who Y our variables are: t x y z >> syms u >> who Y our variables are: t u x y z >> x=sym('x'); >> t=sym('t'); >> z=sym('z'); >> y=sym('y'); >> who Y our variables are: ans t x y z 符号表达式的定义 MA TLAB7.0当中,符号表达式可以通过基本赋值语句,采用单引号或sym/syms

用数值与符号2种方法给定函数的定积分,并对结果进行比较课程设计

课程设计(论文)任务书 软件学院学院专业班 一、课程设计(论文)题目用数值与符号2种方法给定函数的定积分,并对结果 进行比较 二、课程设计(论文)工作自 1年6月27日起至1年 7月1日止。 三、课程设计(论文) 地点: 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)熟练掌握MATLAB语言的基本知识和技能; (2)熟悉MATLAB下的程序设计; (3)熟悉MATLAB数值与符号求给定函数的定积分; (4)培养分析、解决问题的能力;提高学生的科技论文写作能力。 2.课程设计的任务及要求 1)基本要求: (1)熟练掌握MATLAB的编程语句,掌握MATLAB的基本内容,了解MATLAB理论与实际相结合的优势; (2)利用matlab中的编程,掌握用数值积分与符号积分求解定函数定积分的方法,并学会用科学的方法分析实验结果 2)课程设计论文编写要求 (1)要按照课程设计模板的规格书写课程设计论文 (2)论文包括目录、正文、心得体会、参考文献等 (3)课程设计论文用B5纸统一打印,装订按学校的统一要求完成 3)答辩与评分标准: (1)完成原理分析:20分; (2)完成设计过程:40分; (3)完成调试:20分; (4)回答问题:20分; 4)参考文献: (1)刘卫国.MATLAB程序设计与应用(第二版). 北京:高等教育出版社,2008. 5)课程设计进度安排 内容天数地点 构思及收集资料2图书馆 编程设计与调试1实验室

撰写论文2图书馆、实验室 学生签名:冯玉好 2011年7月1日 课程设计(论文)评审意见 (1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(20分):优()、良()、中()、一般()、差();(3)完成调试(20分):优()、良()、中()、一般()、差();(4)翻译能力(20分):优()、良()、中()、一般()、差();(5)回答问题(20分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否() (7) 总评分数优()、良()、中()、一般()、差(); 评阅人:职称: 2011年7月1日

Matlab基础(数值计算、符号计算和绘图)

Matlab基础(数值计算、符号计算和绘图) 第一章 MATLAB帮助 1.常用的帮助命令 Help lookfor which set/get doc type edit helpin 2.帮助窗口 3.演示系统 第二章MATLAB基础 1.MATLAB特点 基本计算单元是矩阵、向量,功能的扩展性(除了基本部分外还有专业扩展部分) 2.MATLAB组成 MATLAB MATLAB Compiler Simulink Stateflow RTW 3.MATLAB主要功能 数学计算开发工具(MATLAB Editor M-Lint Code Checker MATLAB Profiler Directory Reports) 数据的可视化交互式编辑创建图形集成的算法开发编程语言和环境图形用户界面开发环境--GUIDE 开放性、可扩展性强专业应用工具箱 4.MATLAB变量 需要注意系统变量,如:ans eps i j pi 5.MATLAB数据类型 需要注意在命令窗口中可以通过输入help datatypes命令来获取MATLAB的数据类型列表。class函数可用来获取一个变量的数据类型。 需要注意MATLAB中变量默认的类型为双精度浮点型(double)。 MATLAB的数据类型名称同样就是数据类型转换的函数。 6.MATLAB路径管理 MATLAB搜索路径(菜单栏File-Set Path) MATLAB目录管理命令(path which addpath rmpath) 7.MATLAB工作空间 工作空间的存取(save load) 工作空间管理命令(who whos clear pack size disp length) 8.MATLAB的其他命令 管理命令和函数(help doc what type lookfor which path) 与文件和操作系统有关的命令(cd dir delete getenv ! unix) 控制命令窗口)(cedit clc clf home more) 启动和退出MATLAB(quit startup) 一般信息(info subscribe hostid whatsnew ver ) 第三章 MATLABA数据 1.矩阵的建立方式 命令窗口中直接输入 通过语句和函数建立矩阵(from:step:to linspace logspace)

完整word版,MATLAB符号运算

符号运算 科学计算包括数值计算和符号计算两种计算,数值计算是近似计算;而符号计算则是绝对精确的计算。 符号变量的生成和使用 1、符号变量、符号表达式和符号方程的生成 (1)、使用sym函数定义符号变量和符号表达式 单个符号变量 sqrt(2) sym(sqrt(2)) %显示精确结果 a=sqrt(sym(2)) %显示精确结果 double(a) sym(2)/sym(3) %显示精确结果 2/5+1/3 sym(2/5+1/3) %显示精确结果 sym(2)/sym(5)+sym(1)/sym(3) %显示精确结果 sym函数定义符号表达式:单个变量定义法,整体定义法 单个变量定义法 a=sym('a') b=sym('b') c=sym('c') x=sym('x') f=a*x^2+b*x+c 整体定义法 f=sym('a*x^2+b*x+c') g=f^2+4*f-2 (2)、使用syms函数定义符号变量和符号表达式 一次可以创建任意多个符号变量syms var1 var2 var3… syms a b c x f=a*x^2+b*x+c g=f^2+4*f-2 (3)、符号方程的生成 函数:数字和变量组陈的代数式 方程:函数和等号组成的等式 用sym函数生成符号方程: equation1=sym('sin(x)+cos(x)=1') 2、符号变量的基本操作 (1)、findsym函数用于寻找符号变量 findsym(f):找出f表达式中的符号变量 findsym(s,n):找出表达式s中n个与x接近的变量 syms a alpha b x1 y findsym(alpha+a+b)

千算万算-10以内加减法-2个数相加减-符号运算-1000题-含答案

1.4( )5=9 21.7( )0=7 41.3( )1=2 61.7( )1=6 81.9( )8=1 2.4( )1=5 22.10( )4=6 42.5( )3=2 62.4( )6=10 82.9( )3=6 3.10( )3=7 23.10( )9=1 43.10( )8=2 63.4( )0=4 83.6( )0=6 4.3( )1=4 24.8( )1=9 44.4( )0=4 64.7( )1=8 84.7( )1=6 5.4( )0=4 25.6( )0=6 45.0( )3=3 65.10( )9=1 85.6( )0=6 6.10( )0=10 26.2( )1=1 46.2( )1=1 66.9( )9=0 86.10( )0=10 7.7( )0=7 27.5( )3=8 47.9( )0=9 67.4( )2=2 87.10( )9=1 8.6( )2=4 28.4( )4=0 48.0( )7=7 68.9( )5=4 88.10( )3=7 9.2( )2=0 29.2( )0=2 49.1( )2=3 69.10( )7=3 89.4( )4=0 10.3( )3=6 30.4( )2=2 50.5( )2=3 70.5( )4=1 90.7( )3=10 11.10( )7=3 31.4( )1=5 51.0( )3=3 71.5( )0=5 91.8( )6=2 12.3( )0=3 32.10( )10=0 52.0( )9=9 72.5( )3=2 92.10( )1=9 13.6( )5=1 33.1( )4=5 53.3( )2=1 73.5( )4=1 93.5( )0=5 14.5( )4=1 34.2( )0=2 54.9( )3=6 74.3( )5=8 94.3( )7=10 15.4( )5=9 35.9( )6=3 55.10( )2=8 75.3( )1=4 95.8( )3=5 16.6( )1=5 36.9( )0=9 56.3( )0=3 76.4( )4=8 96.6( )5=1 17.7( )3=10 37.8( )6=2 57.7( )5=2 77.2( )4=6 97.9( )0=9 18.3( )5=8 38.6( )4=2 58.7( )7=0 78.4( )1=5 98.2( )7=9 19.8( )2=6 39.9( )0=9 59.0( )7=7 79.0( )9=9 99.9( )3=6 20.8( )3=5 40.2( )1=3 60.3( )0=3 80.2( )0=2 100.4( )3=1

数学实验3(符号运算)参考答案

实验3 MATLAB符号运算功能 一、实验目的:掌握MATLAB符号运算功能的基本使用方法 1.符号矩阵的建立及符号矩阵的运算; 2.符号矩阵的简化; 3.符号矩阵的极限和微积分; 4.代数方程求解; 5.一元函数图象简易画法. 二、实验内容: 1.设)1 e x g x x - =x ( ) (- 1) 将) g写成MATLAB符号表达式; (x 2) 求出符号表达式) g; ('x 3) 利用"subs"命令求出)4(g和)4('g; 4) 利用"plot"命令画出函数) g在区间[-3,3]上的光滑图象; (x 5) 利用"ezplot"命令画出函数) g在区间[-3,3]上的图象并与4)所得结果进行 (x 比较. 运行命令: syms x; g=[x*(exp(x)-x-1)] diff(g) G=subs(g,[4]) G1=subs(diff(g),4) x=-3:0.01:3; y=x.*(exp(x)-x-1); plot(x,y) ezplot(g,[-3,3]) 程序运行结果: g = x*(exp(x)-x-1) ans = exp(x)-x-1+x*(exp(x)-1) G = 198.3926 G1 = 263.9908

-3-2-10123 -100 10 20 30 40 50 -3-2-10 123-5 5 10 15 20 25 30 x x (exp(x)-x-1) 用ezplot 作图较精确。 2. 设)1()(1--=x e x x g x ,1)(22+=x x g 1)利用"ezplot "命令画图估计函数)(1x g 与)(2x g 图象交点的x 值; 2) 利用"solve "命令求出函数)(1x g 与)(2x g 图象交点处x 的精确值.

第4章 符号运算

第4章符号运算 符号运算的对象是非数值的符号对象,对于像公式推导和因式分解等抽象的运算都可以通过符号运算来解决。 M A T L A B2006b对应的是S y m b o l i c M a t h T o o l b o x3.1.5。 符号工具箱能够实现微积分运算、线性代数、表达式的化简、求解代数方程和微分方程、不同精度转换和积分变换,符号计算的结果可以以图形化显示,M A T L A B 的符号运算功能十分完整和方便。 符号运算的特点: (1)符号运算以推理解析的方式进行,计算的结果不受计算累积误差影响; (2)符号计算可以得出完全正确的封闭解和任意精度的数值解; (3)符号计算命令调用简单; (4)符号计算所需要的时间较长。 4.1符号对象的创建和使用 创建符号对象都可以使用s y m和s y m s函数来实现。 1.s y m函数 S=s y m(s,参数)%由数值创建符号对象 S=s y m(…s?,参数)%由字符串创建符号对象 当被转换的s是数值时,参数可以是'd'、'f'、'e'或'r'四种格式,当被转换的's'是字符串时,参数可以是'r e a l'、'u n r e a l'和'p o s i t i v e'三种格式 2.s y m s函数 s y m s(s1,s2,s3,…,参数) 或s y m s s1,s2,s3,…,参数%创建多个符号变量 s y m s与s y m的关系是:s y m s(s1,s2,s3,…,参数)等同于s1=s y m('s1',参数),s2=s y m('s2',参数)…… 3.c l a s s函数 s=c l a s s(x)%返回对象x的数据类型 4.1.2符号常量和符号变量 符号常量是不含变量的符号表达式,用s y m函数来创建;符号变量使用s y m和s y m s 函数来创建。 例如: >>a1=s y m(s i n(2))%用数值创建符号常量 >>a2=s y m(s i n(2),'f')%用十六进制浮点表示 >>a1=s y m('a','u n r e a l')%用字符串创建符号变量 4.1.3符号表达式 符号表达式是由符号常量和符号变量等构成的表达式,使用s y m和s y m s函数来创建。 例4-3分别使用s y m和s y m s函数创建符号表达式。 >>s y m s a b c x

第2章0和1-语义符号化、符号计算化与计算自动化练习题答案解析

第2章0和1-语义符号化、符号计算化与计算自动化练习题答案解析

第2章符号化、计算化与自动化 1、易经是用0和1符号化自然现象及其变化规律的典型案例。下列说法不正确的是_____。(A)易经既是用0和1来抽象自然现象,同时又不单纯是0和1,起始即将0和1与语义“阴”和“阳”绑定在一起; (B)易经本质上是关于0和1、0和1的三画(或六画)组合、以及这些组合之间相互变化规律的一门学问; (C)易经仅仅是以自然现象为依托,对人事及未来进行占卜或算卦的一种学说; (D)易经通过“阴”“阳”(即0和1)符号化,既反映了自然现象及其变化规律,又能将其映射到不同的空间,反映不同空间事务的变化规律,例如人事现象及其变化规律。 答案:C 解释: 本题考核内容:考核0和1与易经

A.A的描述完全正确; B.B的叙述也完全正确; C.不正确,易经不仅仅以自然现象为依托,对事及未来进行占卜或算卦的一种学说,他 还是将现象抽象为符号,进行符号组合,利 用符号组合表达自然现象; D.D的表述完全正确,易经既反映了自然现象及其变化规律,还反映不同空间事物的变化规律; 具体内容请参考第二章视频“2. 0和1与易经”的“1.1~1.4”视频。 2、易经的乾卦是从“天”这种自然现象抽象出来的,为什么称其为“乾”而不称其为“天”呢?_____。 (A)易经创作者故弄玄虚,引入一个新的名词,其实没有必要; (B)易经的“乾”和“天”是不同的,“乾”是一种比“天”具有更丰富语义的事物; (C)“天”是一种具体事物,只能在自然空间中应用,若变换到不同空间应用,可能会引起混淆;而“乾”是抽象空间中的概念,是指具有“天”

相关主题
文本预览
相关文档 最新文档