TA的每日心情 | 奋斗 2024-7-1 22:21 |
|---|
签到天数: 2014 天 [LV.Master]伴坛终老
- 自我介绍
- 数学中国站长
群组: 数学建模培训课堂1 群组: 数学中国美赛辅助报名 群组: Matlab讨论组 群组: 2013认证赛A题讨论群组 群组: 2013认证赛C题讨论群组 |
2#
发表于 2009-9-9 02:16
|只看该作者
|
|邮箱已经成功绑定
如何在matlab中调用maple % f, H5 P6 V j' W& i R; {& m
1 p2 { y2 A+ f( h(不用安装maple软件就可调用)
8 K* \2 b$ j# s; `& P% d3 n
2 N% j! l2 g) Z方法1:
# n9 K6 W) ], O+ Y
$ z8 z k$ \: C Fmaple(’maplestatement’)
: E2 p, h/ v" N8 P* Z/ z4 g6 V7 ?5 d3 Y# _8 t
其中maplestatement 是完整的maple语句,由一条或几条命令组成,必须符合maple 的语法 & N/ c7 J& v: z2 t5 M2 I
5 T: t7 q' n& q t) y& V! Z方法2:
+ f/ n* e& M8 p* n8 `: t1 ^9 I9 R8 f1 N$ n) [4 v( c
maple(’function’,arg1, arg2,…)
3 p1 ~. ^# t2 o
2 a; _/ h* F4 T8 w5 m其中function为maple中的函数名称,arg1, arg2,…是函数function所用的参数。 4 m( M$ M0 h3 r5 {) d
( o, L" @2 L0 O& s, E' _注:如果方法1行不通,可尝试方法2(个人经验)。
. n/ n: F/ F) ?2 z T( @( e5 E9 H2 h
) Y8 g2 ?: r, F& x基本代数部分 . ]( ?& t* e j2 x
6 w: l8 A4 m6 N- C如何用matlab求阶乘
+ m" v+ |0 r8 J+ |- a, a
, G* u5 o5 K4 ?( o( W: Y/ E' ]8 E7 Xfactorial(n) 求n的阶乘 / y1 O l+ D2 r8 s' O: T
L& o0 b! V- s& [! k如何用matlab配方 ! u Z* b0 u3 _, \, T6 B
4 N' D5 ~0 v8 T1 A3 Z* k
没有发现matlab有这一命令,不过我们可以调用maple的命令,调用方法如下: I; u& ` x' |4 M# W% q0 K# X. G2 x0 w
1 I1 R! E% a7 F8 q1 z7 Q首先加载maple中的student函数库,加载方法为:maple(’with(student)’) . L" b6 P: F( T& v( N# T$ L
# _% z) e$ i6 j然后运行maple中的配方命令,格式为: + w+ C) B3 k# s* S# U" c' c! k
) C! C0 S1 h2 T# D$ e
maple(’completesquare(f)’) 把f配方,其中f为代数表达式或代数方程 + L4 j4 _6 M. k
^# `# e3 F" I6 J1 i5 Dmaple(’completesquare(f,x)’) 把f按指定的变量x配方,其中f同上 - e6 C6 o6 d7 |! S9 U
2 V3 F) f' J) p- u2 F! b9 Z n
maple(’completesquare(f,{x,y,...})’) 把f按指定的变量x,y,...配方
9 z6 y! c1 h, T Q& r; D$ q; ~1 A" w) }
maple(’completesquare(f,[x,y,...])’) 把f按指定的变量x,y,...配方, : ~' O8 ~- h1 f& g1 v [: F, x f
3 J' M4 V! s+ k( M6 i: ^* b+ i如何用matlab进行多项式运算
9 k& _' Q8 V n, y0 C; I5 Q% G) N* U# [: D* G4 C
(1) 合并同类项
5 `# D" P- V; l) T: h
0 f% r( P( n3 l4 l ssyms 表达式中包含的变量 collect(表达式,指定的变量) + F2 t* l- r! ~
) h- N$ ]! a7 B
(2)因式分解 6 j( f% S2 j$ B2 P1 K, c
6 y0 F M) ?& c, g3 c% y
syms 表达式中包含的变量 factor(表达式)
2 D, @. |* z! Q2 _1 c2 f( q1 l! K' h0 H; M) s
(3)展开
1 f- {" a) x, i _; u, i* f6 S: l0 z# t2 `
syms 表达式中包含的变量 expand(表达式) q+ H8 g d6 K& x, \) n
# N8 ?8 e5 T" |( [+ P' h% g
我们也可在matlab中调用maple的命令进行多项式的运算,调用格式如下:
, E" B# t1 s7 ~* @# o
( I0 \6 @1 s8 } p. Z8 ~! \: h+ W maple(’maple中多项式的运算命令’)
8 B; [' n1 z6 {% C
: ^3 u+ M1 Q/ f& S) P% R/ D* Z如何用matlab进行分式运算 ( c2 v$ l [8 o$ Q: ?
, Y0 y$ k( a4 ^; Y4 A4 p' {! ]& S发现matlab只有一条处理分式问题的命令,其使用格式如下: 8 ?, I2 }% Q6 x' Z5 G2 q
6 e: I+ k6 X; P% X' y- c* v[n,d]=numden(f) 把符号表达式f化简为有理形式,其中分子和分母的系数为整数且分子分母不含公约项,返回结果n为分子,d为分母。注意:f必须为符号表达式 L# T0 V9 q3 z! ~4 e
0 y, z C% P$ H @0 S6 E
不过我们可以调用maple的命令,调用方法如下:
, B, @. ?! B+ G |6 H
, @' ~( J. y8 j% ]. Rmaple(’denom(f)’)
- {7 ^7 W( j' C. Y7 f 提取分式f的分母 + N/ H6 F ^) G- E6 J( X
9 G$ k8 F" H. ^9 _. a6 {
maple(’numer(f)’) % J+ T! X5 J. l5 P9 R
提取分式f的分子
9 q$ C( Y8 K) z! V ! L- l2 l8 R8 }+ R) S# s& v! E. _
maple(’normal(f)’ )
6 l; D; b. z- Q4 [' E 把分式f的分子与分母约分成最简形式
! ?6 L2 k" t' {- m* { ' {0 P, `' t9 D& H7 W) @5 d ^
maple(’expand(f)’)
) G, Y" w% m$ r2 K7 x* U5 e 把分式f的分子展开,分母不变且被看成单项。 " j. W6 @# h k
$ J c" r% q* c! Mmaple(’factor(f)’)
: k7 `5 a2 e4 Y0 q- I$ M 把分式f的分母和分子因式分解,并进行约分。
% N$ G' I, _7 u( M, C; Z : p5 E+ @) N; l Y( v2 \8 o) G4 n p+ l
* G$ K4 M( z) y. ~$ z' n) K3 D如何用Matlab进行因式分解
: |. S0 Q9 K0 ~8 ?
6 X Y0 N1 ]9 `/ @& i4 Tsyms 表达式中包含的变量 factor(表达式) ! a! t5 a4 l f# E5 s/ e& y9 m1 y+ T8 `
: J* k- U9 Q( N7 s 如何用Matlab展开
/ s7 k/ m; t& j0 P- a( n8 F9 V3 C$ v
syms 表达式中包含的变量 expand(表达式) ) _# K8 G! v" N/ E; j* o, n
5 o6 c2 s0 M Y1 Z0 S 如何用Matlab进行化简 + |' Y# i9 L* F) S2 d
& H7 n! a C9 X: w. y b
syms 表达式中包含的变量 simplify(表达式)
) l1 K7 x' Q& ^9 U2 x/ [6 [8 c% A. e; e) B
如何用Matlab合并同类项
" ` h1 R- ?9 I3 c; I- w. ]5 P' n; v
syms 表达式中包含的变量 collect(表达式,指定的变量) 0 S# K! z1 h/ {% S* N
, r, S7 h0 r/ H8 w" D2 p. d% v6 M如何用Matlab进行数学式的转换 0 M8 s5 y9 r8 m1 N/ R' [* g
) | n9 O- a8 g
调用Maple中数学式的转换命令,调用格式如下:
$ q4 S. L+ A6 F
0 Y; L& b* Z \8 u. @maple(‘Maple的数学式转换命令’)
6 r0 R6 c9 q( r9 F. q! ~0 G* j9 f! V2 m1 Q R4 S2 B |
即:maple(‘convert(表达式,form)’) 将表达式转换成form的表示方式 . K. b; k& e/ R( J8 }' L
7 k: B X8 ]/ ?1 Tmaple(‘convert(表达式,form, x)’) 指定变量为x,将依赖于变量x的函数转换成form的表示方式(此指令仅对form为exp与sincos的转换式有用)
! j3 L, I- ]" D7 B+ i. \! z0 m3 {( c: ^/ g1 J5 e6 w" L5 G8 }
如何用Matlab进行变量替换
. ?: A% S$ t2 W% `7 K7 \! P% O2 `/ b2 X) C. U
syms 表达式和代换式中包含的所有变量 subs(表达式,要替换的变量或式子,代换式)
4 m3 h; s- f8 n, X `. x" _( B: F/ S5 v' p3 E( l" U3 I5 s4 T
如何用matlab进行复数运算 8 w, ~3 P! Q; N* I
$ }2 L) U* ~( B# F0 I3 u
a+b*i 或 a +b*j % [" c/ U' X. C4 Z
表示复数a+bi 或 a+bj
$ Y& o( M, }% Q3 n- l1 t7 e3 V
' J# [- d$ K0 z/ w4 V# |1 Oreal(z)
) x4 P6 a4 e' {& O; I 求复数z的实部
6 z% }+ g6 T& C A 7 B& o- g+ H0 D$ x. c/ x) s4 R; j! m
imag(z) ! X. O+ f e7 D" T; {9 \6 d- E/ Z
求复数z的虚部
3 z: Q3 h# `4 o c" K+ u7 W3 E * r) e1 j0 A- {
abs(z) 3 E! N6 G# K# M/ o- f0 N& N
求复数z的模 z- P2 m% ~ v" o5 U: ]% x
( e3 _. s' m$ M2 K8 H J
angle(z)
7 c- l0 V0 ]# t( m6 j* n" c+ t 求复数z的辐角, \2 V& C$ I, p: r
( i( ~ ?& `5 A# k/ }conj(z)
5 @7 ?) A$ |- l" Q3 ~% a 求复数z的共轭复数 2 }* s' {( Z& w5 L; ?
4 o8 g0 y3 v+ ^1 o" c5 m7 ~# h8 g' Zexp(z) 1 _ t1 C# {6 f4 G% S+ ^9 L
复数的指数函数,表示e^z
' `+ a8 M+ K# X4 [" r
' L4 ]7 l$ t. t
* p: z( [+ e+ ~: e% T) N3 d8 _如何在matlab中表示集合
: X' @7 T3 ?$ M
& {$ Q& f2 d/ ^7 f7 m) ][a, b, c,…] 表示由a, b, c,…组成的集合 (注意:元素之间也可用空格隔开)
& J0 H) g4 N' g& \5 ?
0 ^* F% \7 u7 |; l* {unique(A) 表示集合A的最小等效集合(每个元素只出现一次)
' {! N/ }5 a+ ~; ]. i$ l$ |( E; D: r! |" ]; Y
也可调用maple的命令,格式如下:
9 I, E1 f9 v, s- }8 K$ M3 X
. ?+ F1 X& m! I A4 L) B' G; kmaple('{a, b, c,…}') 表示由a, b, c,…组成的集合 - \+ s$ Z* _# I4 Z2 Q3 B
3 ^$ v7 h& K& l: f3 I j, O下列命令可以生成特殊的集合:
, }6 B9 Z2 T& Z6 _6 L/ W
! \8 y6 h1 A* o$ ~7 pmaple(‘{seq(f(i),i=n..m)}’) 生成集合{f(n), f(n+1), f(n+2), … , f(m)}
* O8 }9 B- }; E' ~1 p/ a
$ s5 @) F1 z1 H" t0 }+ v. K如何用Matlab求集合的交集、并集、差集和补集 3 C* j. |" {) p4 R
% w6 ^; p/ W0 i; Uunion(A,B)
; {3 X6 o7 d' d# C 求集合A和B的并集
6 V c8 ^7 }% c% q' L A
0 t2 F& I$ L' eintersect(A,B)
6 d3 q, i' v" W5 v& v 求集合A和B的交集 7 |; T. i9 n: e) P# x
# s" o m; a1 e7 f- Q6 m" G- Z
setdiff(A,B) 6 R- b$ Q4 v, M3 F9 r' n: l
求集合A和B的差集A-B 5 _1 [2 `1 t& J" K" R
7 F/ I3 T4 w. m1 g8 V
setdiff(U,A)
4 T5 y4 U, G. T/ a" N- g0 l 求集合A关于全集U的补集, Q" b$ O& r) _+ B
, J$ ]4 J9 V6 ~. g: c
9 v' K" X& N" E* d: h我们也可以调用Maple的相应功能,调用方法如下:
6 W* T/ Y' ~* A' d4 v; V3 B; \4 v% q9 }2 j" v( T
maple('用Maple求集合的交集、并集、差集和补集的命令 ')
, x' @ j0 j) w
( T9 X$ B$ P- l- |! J具体地说,共有下列几个调用命令: , ]+ _. ?1 b6 ]7 L5 h: g
, v0 n' D s ^5 t0 K$ c v* Wmaple( 'A union B' ) 求集合A和B的并集 5 _" C5 x- u8 ]& O" i; i+ w# z
4 h6 B# |6 U& N- d, {maple( 'A intersect B ' ) 求集合A和B的交集
. J" \ c6 q6 f& {3 P- L: \; w' o7 a P/ m( t2 Q# W; ~
maple('A minus B ' ) 求差集A-B . { i$ ?, V6 o n4 v' [3 r( N
/ b3 y# v8 o& S( X3 K0 J
maple( '全集I minus A ' ) 求集合A关于全集I的补集 / ?$ s: l( S& h, a
7 s& m+ H5 n: Q0 j' n$ n$ l
如何用matlab排序
7 G R8 f% N7 z+ L, { y) y, d2 ~8 Q( H7 w7 w" N& m' M! M
sort(v) 将向量v的元素从小到大排列(升序排列) |
|