- 在线时间
- 479 小时
- 最后登录
- 2026-4-17
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7793 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2924
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1171
- 主题
- 1186
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
- clear all3 S, b. ` g- `. B& e1 o
- syms x;
7 C* I/ n. ~8 E; `! P! b4 S7 b5 D - f=(exp(x)-1)*(sin(x)-1); %直接由已定义的符号变量产生符号表达式
6 e& W# Y% k. B- b) [' a0 ? - xx=-pi:pi/200:pi;9 @, s5 d7 r! }5 ?$ N
- yy=subs(f,x,xx); %将符号表达式中的x符号变量变为xx数值量求值
& _, z/ x4 D8 L! J0 } y: L% y - n=9;( D4 R$ s' `$ l. @$ S+ i2 {
- f1=fseries(f,x,n);
% R; K$ o\" f$ C6 o' N - y1=subs(f1,x,xx);
! O0 t8 }, Y9 E+ \ - plot(xx,y1,xx,yy)
复制代码- function F=fseries(f,x,n,a,b)
0 j( @! Q% D: c- c - if nargin==3 %若输入为三个参数(缺省)表示f(x)在[-pi,pi]上展开0 _: D: p. _, T( K) A
- a=-pi;6 N8 X7 w. d3 U2 [) r& u P
- b=pi;
, |$ R1 F* D5 L# Y - end
0 E' B% K7 F3 j4 }\" O - L=(b-a)/2;\" } {9 b$ y6 W
- F=int(f,x,-L,L)/2*L; %int(f,x,-L,L):以符号表达式或符号函数f为被积函数,x为积分变量,-L为下限,L为上限计算定积分
; G- C2 W$ ]6 K1 ~8 k1 o' S - for i=1:n
+ c2 f6 q1 H: a- \. V. X0 v - an=int(f*cos(i*pi*x/L),x,-L,L)/L;
3 {: ^. V9 P% y5 }% F6 ]6 P - bn=int(f*sin(i*pi*x/L),x,-L,L)/L;
! ^ `. s$ o\" Q - F=F+an*cos(i*pi*x/L)+bn*sin(i*pi*x/L);) p/ y2 u- J\" m
- end2 R: a5 s2 o2 r4 K! l N. s
复制代码 这段 MATLAB 代码使用了符号计算工具箱来进行函数的级数展开和绘图。以下是代码的逐行解释:- g5 O$ f# w# ^8 v8 a
1 W; I8 Y$ O! |+ H4 N$ i
1.clear all: 清除当前工作区的所有变量。( Q) c% U+ u4 F! o9 `4 i
2.syms x;: 声明符号变量 x。, ~* K8 ~, s2 f$ ?( m+ @" x
3.f=(exp(x)-1)*(sin(x)-1);: 定义符号表达式 f,该表达式为 ((e^x - 1) \cdot (\sin(x) - 1))。
4 b" N3 ~/ ?( E! ]" X0 I7 X4.xx=-pi:pi/200:pi;: 生成一个包含从 (-\pi) 到 (\pi) 的数值的向量 xx。
n) I, _. J; v% ^* }5.yy=subs(f,x,xx);: 使用 subs 函数将符号表达式中的符号变量 x 替换为数值向量 xx,得到数值向量 yy。
8 ~4 n/ k( }5 S' _& F6.n=9;: 设定级数展开的阶数。
2 ^/ O. D" H% b. f7.f1=fseries(f,x,n);: 使用 fseries 函数对符号表达式 f 进行级数展开,展开阶数为 n,得到符号表达式 f1。
% p, A) k* y6 a. F8.y1=subs(f1,x,xx);: 使用 subs 函数将符号表达式 f1 中的符号变量 x 替换为数值向量 xx,得到数值向量 y1。
3 X9 T7 U3 U" C- C& k0 o9.plot(xx,y1,xx,yy): 绘制级数展开后的函数曲线 y1 和原始函数曲线 yy。
5 N& T' e0 M1 E% h: ]. v7 p; ~; C
9 M; r2 A2 j/ E- j `7 f$ J这段代码的目的是通过符号计算工具箱,展开给定函数的级数,并绘制级数展开后的函数曲线和原始函数曲线。5 @) Z7 }2 f) O6 {% u
% F; r Y" H, j y9 Q+ K5 ~0 t t. p4 S; t& L1 |3 T' @, }
5 q( B( |/ H/ e8 i j3 Z* J
8 a# A0 u0 B4 q! m3 N1 `
]+ p; z" {9 L { |
zan
|