源代码见文末
部分源代码:
1 % 符号变量 两种表达方式 2 a=sym('a'); 3 class(a); 4
5 syms b; 6 b; 7
8 % 符号常量 9 c=sym('3'); 10 c; 11 % 符号表达式 三种表达方式 12 f1='3*x+4'; % char类型,但是可以参与运算。所以这种形式是可以直接用的,比较方便 13
14 syms x 15 f2=3*x+4; % sym类型 16
17 f3=sym('3*y+4'); % sym类型 18
19 % 符号四则运算 20 fadd1 = f1 + f2; 21 fmu1 = f1*f2; 22
23 % 符号表达式的化解 24 syms x y 25 s = (x^2+y^2)^2 + (x^2-y^2)^2; 26 simplify(s); 27
28 % 符号表达式和数值的转换 29 eval(c); 30 syms; % 上面已经涉及到 31
32 % 因式分解、展开与合并同类项 33
34 syms a b x y 35 f1=a^3-b^3; 36 factor(f1); 37
38 f2=(3*x^2+8*y^2)*(-x^2+3*y); 39 expand(f2) 40
41 f3 = 2*x+3*x+4*x+y; 42 collect(f3) 43
44 % 符号矩阵 45 a1=[x x+y;y x+y]; 46 a1 47 transpose(a1) % 转置 48
49 % 符号函数值的求解 50 syms x 51 f1 = x^3 -9; 52 subs(f1,3) 53
54 % 符号极限、符号微分、符号积分 55 syms x 56 y=sin(x); 57 limit(y,0) 58
59 y1 = x^2; 60 diff(y1) % 求导、微分 61 diff(y1,2) % 二阶导数 62
63 y3=(3-x^2)^3; 64 int(y3) % 不定积分 65
66 y4=abs(1-x); 67 int(y4,1,2) % 定积分1-2范围内 68
69 %%符号方程求解 70 %代数方程 71 clear 72 syms x 73 solve(x+x*exp(x)-10); 74
75 solve('x+x*exp(x)-10') % 和前面的符号表达式方法联系起来了 76 eval(solve('x+x*exp(x)-10')) % 这是数值的表达结果 77
78 %方程组 79 [x,y] = solve('x+y=10','x-y=2','x,y') % 输出x和y的值 80
81 % 符号的微分方程 82 dsolve('Dy-(x^2+y^2)/x^2/2','x') % 微分方程组合上面的方程组道理一样