TA的每日心情 | 奋斗 2024-7-1 22:21 |
|---|
签到天数: 2014 天 [LV.Master]伴坛终老
- 自我介绍
- 数学中国站长
群组: 数学建模培训课堂1 群组: 数学中国美赛辅助报名 群组: Matlab讨论组 群组: 2013认证赛A题讨论群组 群组: 2013认证赛C题讨论群组 |
2#
发表于 2009-9-9 02:16
|只看该作者
|
|邮箱已经成功绑定
如何在matlab中调用maple
& Q7 S6 [: ~) B/ d6 {+ D
1 F( R+ {. B* \' }( u8 M' ](不用安装maple软件就可调用) 7 m8 ~7 y7 u* g X4 q
( K8 y/ G2 w; s3 p+ ]; ~
方法1:
& Z8 E* v' T* D. z* k
$ B' Z: \& }! b/ V( \maple(’maplestatement’)
. R& e2 r/ h6 y, g ] x9 T' Y5 X0 i I K6 I, Z3 r) q, G- r( x0 c
其中maplestatement 是完整的maple语句,由一条或几条命令组成,必须符合maple 的语法 ! V, \/ P6 A1 `. r6 [
y8 C4 e$ g( b+ T3 g! @; e方法2:
I) q" A' f" q9 O$ {: s
1 p+ f+ e; Y5 F+ A8 w$ A$ Cmaple(’function’,arg1, arg2,…)
% Q* o- s7 Y' s2 ?" q# x- i4 c* \
& j# ~8 R, m5 v' N其中function为maple中的函数名称,arg1, arg2,…是函数function所用的参数。
+ w) U& F% d; u) I. ]
% f; ]; [1 h j. m1 U& k3 @& q( u注:如果方法1行不通,可尝试方法2(个人经验)。 ; g6 j/ c. {. X" E0 W, M
: C! q) A4 u) `9 Z基本代数部分 ! r% s2 d, p. L( s; t! g7 I" Y/ c! U
, a" a' n1 U( a1 B% {/ X如何用matlab求阶乘
% m1 ~) d. S1 k% I; V! h$ Q& a) K: n$ L5 c" a
factorial(n) 求n的阶乘
7 }$ |. s4 m# k; R6 l( |3 H( V1 D, y
如何用matlab配方
. ~3 q# Y+ U3 _( a( f1 g5 g9 o# V5 L
' O4 ?6 I* b0 x' D! Y没有发现matlab有这一命令,不过我们可以调用maple的命令,调用方法如下:
$ n9 }0 p6 ?' r
" o; K8 f* M2 Q2 J1 u首先加载maple中的student函数库,加载方法为:maple(’with(student)’) : j) f" u' u& U8 c2 c
* F+ t" m0 v5 s$ C; H @
然后运行maple中的配方命令,格式为:
* V6 {2 |( a M1 ^; c- ]" Z. H% { x% X. {( Y# f/ W- p
maple(’completesquare(f)’) 把f配方,其中f为代数表达式或代数方程 , l$ f) ^& V+ [+ R" }
7 F! @. T9 ~, u+ U( a
maple(’completesquare(f,x)’) 把f按指定的变量x配方,其中f同上 ! e) B+ V) H, N- E6 r
2 R1 _9 X: k* `5 j
maple(’completesquare(f,{x,y,...})’) 把f按指定的变量x,y,...配方
( _; R1 f9 i( a6 l5 O# X5 E' b& F8 ]5 Y
maple(’completesquare(f,[x,y,...])’) 把f按指定的变量x,y,...配方, 5 x, u# l+ L8 b+ c$ ?
( e1 s5 N: g/ y ~3 a如何用matlab进行多项式运算
( _$ T$ I9 r0 u4 n" L. K- K9 Y
7 @; z: Y/ a* X Z5 l5 ](1) 合并同类项 ( n2 l" t' K' H0 t2 y* ?
# w; L! }9 j' K6 osyms 表达式中包含的变量 collect(表达式,指定的变量)
& I! D0 r. {! U6 D# ^' D4 D$ T# P0 T5 e! ] p5 B, V2 b. O
(2)因式分解 ( v( J) |/ x- h) C7 K4 q
0 C D r4 E/ _$ p* P+ {9 dsyms 表达式中包含的变量 factor(表达式) " ^$ ]2 _7 o& m6 w
6 S& t6 D- E G, g% [(3)展开 4 S) G- t& @/ @1 r9 G
, {- A5 M$ x- esyms 表达式中包含的变量 expand(表达式)
8 ]* ~* W4 w) V1 M; e) f& }" K: d8 y8 h/ q
我们也可在matlab中调用maple的命令进行多项式的运算,调用格式如下: ; n! L4 h1 N2 M( @) [) @
/ j, @+ `- M* r' _
maple(’maple中多项式的运算命令’) $ a5 q9 E8 n6 }1 {* E
3 z# S. I8 I" I4 m( u
如何用matlab进行分式运算 1 V. H7 a$ S0 R4 u/ O5 C3 |3 ^! S
0 w; v, X1 r( R) }& T0 ?3 k" e发现matlab只有一条处理分式问题的命令,其使用格式如下: 8 K+ \- A4 \5 T: H( J+ y0 X) e7 G
$ S4 v: a- O% u2 I5 \[n,d]=numden(f) 把符号表达式f化简为有理形式,其中分子和分母的系数为整数且分子分母不含公约项,返回结果n为分子,d为分母。注意:f必须为符号表达式
( n7 M+ Z% `( e# u, j7 r Q
( I- L! `( |# {8 [不过我们可以调用maple的命令,调用方法如下: ( l0 n+ [! U* z4 q
5 [: V2 K' S( }) u
maple(’denom(f)’) 1 B c+ S( b1 _. Y v" X* Y0 V1 Y# p
提取分式f的分母 / F( O: E6 r. v5 H
4 a* E$ B& f! cmaple(’numer(f)’)
@. Q, H3 Q4 F& f, N 提取分式f的分子 , r- b' k/ E& R7 v
! G g4 g: j& d8 b u% I) h
maple(’normal(f)’ ) * I% U" Q3 |& P, B8 `9 G5 T
把分式f的分子与分母约分成最简形式
0 P ]! u% U4 H l' s9 i
* \% |, V' e- A- I3 jmaple(’expand(f)’)
* H u5 o3 J. K) p1 T 把分式f的分子展开,分母不变且被看成单项。 u% W! }. C3 c% ]) K8 }7 M& Y
" M A* u, {, z M. R/ qmaple(’factor(f)’) ; X7 @9 p6 k/ U. i, T
把分式f的分母和分子因式分解,并进行约分。5 |: O3 K+ v, R+ U2 y6 b- v
- Q6 K- y7 E& b! S# x0 @+ ]6 |9 f' A8 F6 m# g( C4 {3 v
如何用Matlab进行因式分解
% ^5 L$ G% j0 g2 a5 d( E2 ]& n& {
1 C* r0 q8 ? j, j* M6 csyms 表达式中包含的变量 factor(表达式)
: n! K; R- A" j+ \
4 G, S, X4 ] r# E 如何用Matlab展开 % N+ g% C3 d) T) m4 \7 G. j6 |
5 s2 o8 H6 c1 j8 L; y; x
syms 表达式中包含的变量 expand(表达式) 0 r8 Z n" H- i5 Y1 M. ~
+ l! G: j- J5 h% J' P 如何用Matlab进行化简
" c$ d5 N. S" F7 v3 ~; _, k% w+ {! m2 z- Z0 B
syms 表达式中包含的变量 simplify(表达式) 6 [; U6 g2 D* F& \
3 n9 E8 }( F9 |) J0 G如何用Matlab合并同类项
# V7 V) n+ U3 Q; K/ n+ k3 [( z2 E% z1 \
syms 表达式中包含的变量 collect(表达式,指定的变量) , f4 u+ p% {7 f! ~0 U. Q
, M; c$ L& Q2 `, q* \9 R1 a
如何用Matlab进行数学式的转换
" _. i K& _4 @- s n$ l
: G' f) x$ F. ]2 J3 X/ D调用Maple中数学式的转换命令,调用格式如下: 1 U* e" E6 B8 o/ {& J: E8 Z
' w" N+ M) s3 t# C
maple(‘Maple的数学式转换命令’) q) w$ U4 J+ d$ L7 h7 a) y ~9 B* O
$ _: U' Y& @& z' I" r; K. T$ f即:maple(‘convert(表达式,form)’) 将表达式转换成form的表示方式 9 j$ N5 ~, p4 M4 b% J
2 b/ `- P3 V1 R" Bmaple(‘convert(表达式,form, x)’) 指定变量为x,将依赖于变量x的函数转换成form的表示方式(此指令仅对form为exp与sincos的转换式有用)
- O, U* p& ^4 o$ e5 T0 e! ?0 x2 q( M; e: b$ H' B
如何用Matlab进行变量替换 # ?7 Q( g. C- K/ d$ g( z
. a% [- y( i! @# H4 Zsyms 表达式和代换式中包含的所有变量 subs(表达式,要替换的变量或式子,代换式) ; e# h0 t9 s$ j" T& j1 A
+ y7 U a0 g: T [# v$ v& P
如何用matlab进行复数运算 ; V/ F. q4 K8 x+ B3 Q: l3 N J
" q5 n5 G: A" ^a+b*i 或 a +b*j ; z8 O7 l: ^+ J+ P) ]# d
表示复数a+bi 或 a+bj , v& P0 _. v% o' a \
+ r: @5 Z* B6 |1 T
real(z)
; x8 t, S/ n( `) G' @4 `" j7 ]+ ?$ T 求复数z的实部 ( C3 S9 N5 F0 l3 T- h) y$ U
7 Z# ?: I6 l1 g7 z% w- c* k
imag(z)
# q" R, G8 z$ |" T4 n! s1 c, v 求复数z的虚部
, _5 b! r% |! w. M, h2 T. O
1 B' S! `) p; d9 G( Fabs(z) 0 U3 R6 v/ n- b
求复数z的模
0 q' X/ _7 I: p9 ~. Z2 o0 P
8 V, N7 U8 `- b' Q# Bangle(z) + _5 k5 U6 M z: n
求复数z的辐角, $ g& [; h8 u; {* _& M8 B9 C
% }: X& E' e3 y# q& L. W/ F
conj(z) ! V. m7 { N& T- i8 U
求复数z的共轭复数
3 O" Y" k l+ T2 Q: X; A' V& f B
, X: }3 Q( b7 H' M7 t/ e* jexp(z) + P8 @$ D( @3 p n/ w3 x
复数的指数函数,表示e^z
Q6 h7 e1 @3 E! S: j . X) h4 J- N+ g% O# N* f* c& ? S0 u5 J
& O! j5 l- O# r) q. H如何在matlab中表示集合 $ H/ j# I' ~3 J& t9 H I/ Y5 A
5 v0 [' Y8 } O0 g$ D
[a, b, c,…] 表示由a, b, c,…组成的集合 (注意:元素之间也可用空格隔开) % K W- p/ @$ p ]6 l
, ?& l4 b- d) o+ N& dunique(A) 表示集合A的最小等效集合(每个元素只出现一次)
M7 n9 u& f+ D: C+ Y/ O
: b- l5 ~9 n+ ]! }" P也可调用maple的命令,格式如下: / J1 \, Y" N. ~3 H; G
( x$ F/ W9 X; Rmaple('{a, b, c,…}') 表示由a, b, c,…组成的集合 5 q2 r# Q" X! U5 v! l- ]
9 y( D( f0 o" i& `' j下列命令可以生成特殊的集合:
" f# m4 L( e6 p2 o+ j! H2 o/ j! f% O) U$ g
maple(‘{seq(f(i),i=n..m)}’) 生成集合{f(n), f(n+1), f(n+2), … , f(m)}
: e1 G; M& [ S% `; ~( M
$ W; {+ Z* z" V4 t. k; a, O7 n如何用Matlab求集合的交集、并集、差集和补集 ! P, O+ K% [& ?- X
R! G% l5 z1 {: eunion(A,B)
& Z- E7 j: F: b0 d- V 求集合A和B的并集
* ^$ w" S5 U& H! g. H u
) g1 a- k8 {9 t! Q1 h, j* }intersect(A,B)
* n+ k, _3 y1 ?- {0 \* T) _ 求集合A和B的交集 0 O: m: G8 ^2 q$ o! g) |4 p. P' X* ]
9 M8 I/ Q/ M0 f% ^$ J
setdiff(A,B)
( s9 g: o. O2 B1 M' a" ]: \ 求集合A和B的差集A-B ' H0 A" ~1 l4 P( v5 d8 n
5 ~( _" g d) ]% B# H6 H! G
setdiff(U,A) / f( ]# _! V; c5 @; h( |# W
求集合A关于全集U的补集) ^ O8 f# s, t7 o4 m
; ]& f, S" ?9 u& R# C
5 d8 e% k/ D9 d5 r5 n8 {( h我们也可以调用Maple的相应功能,调用方法如下:
2 J+ P( A, m9 p) Y" `7 a" a- K9 n' n3 e$ y+ ~- v
maple('用Maple求集合的交集、并集、差集和补集的命令 ')
5 ~2 B* D& O2 P% W0 a& n4 ?+ J+ H; y( |* |
具体地说,共有下列几个调用命令:
; \0 w# t' S' w& K$ s. z3 T" a- J; e/ \% p
maple( 'A union B' ) 求集合A和B的并集
8 P* \% n* N o3 B \' _5 l! h0 g( X: G% P2 t$ p$ i
maple( 'A intersect B ' ) 求集合A和B的交集 . U' {6 ^- Q: a
( j; g5 i7 }0 S( m+ B7 R
maple('A minus B ' ) 求差集A-B % h# M# N7 W+ d6 A
" r4 q2 E+ W. r( `0 Z8 cmaple( '全集I minus A ' ) 求集合A关于全集I的补集
0 l; F8 i% R8 G9 a- z7 l0 L0 R1 i# A$ I" e! ~
如何用matlab排序 1 x1 \* l/ b$ Y) J& C+ F
9 m0 t2 s' j. L( zsort(v) 将向量v的元素从小到大排列(升序排列) |
|