TA的每日心情 | 奋斗 2024-7-1 22:21 |
|---|
签到天数: 2014 天 [LV.Master]伴坛终老
- 自我介绍
- 数学中国站长
群组: 数学建模培训课堂1 群组: 数学中国美赛辅助报名 群组: Matlab讨论组 群组: 2013认证赛A题讨论群组 群组: 2013认证赛C题讨论群组 |
2#
发表于 2009-9-9 02:16
|只看该作者
|
|邮箱已经成功绑定
如何在matlab中调用maple
6 W9 q% L& n1 h( m& k0 w) N' l! l! e4 e$ D( i4 ` Y4 H. z- \
(不用安装maple软件就可调用)
' h0 [4 A/ p0 ^& R& h
) {9 D6 e5 Q) i5 Z" N方法1:
o3 N! S1 j0 W9 X ]% y3 c* K4 q, @% t5 c4 x
maple(’maplestatement’) 4 g4 A5 J/ p( l
' q! Y% k) G6 K* c# H% d7 W
其中maplestatement 是完整的maple语句,由一条或几条命令组成,必须符合maple 的语法 1 `8 f# z4 Z o! T8 [
; z- s& d, c! }) n1 C
方法2:
+ M0 U! B- {9 |5 V% Y9 b; I5 `# g; ?) _ }3 W
maple(’function’,arg1, arg2,…)
, ~; N4 _4 z6 o6 ~9 n2 w) v: ]5 @: I" x
其中function为maple中的函数名称,arg1, arg2,…是函数function所用的参数。
0 Q/ x1 A ^. }# B4 C- C4 Y" j) ^. Q! U o2 [# J0 Y, E3 G
注:如果方法1行不通,可尝试方法2(个人经验)。
; O: m6 ^" k# z, z5 U& E* _$ F! U' E
- g8 X* D: o1 r8 z基本代数部分 . F( \ E) U7 F! Y* f
( m0 ~. @6 q( i* u x如何用matlab求阶乘
4 O, J0 f1 w4 N9 S3 P# B* O, Q3 ]/ f7 s$ Q( R
factorial(n) 求n的阶乘
+ C( A7 P6 b4 R/ A" f" y& v/ i2 w0 O+ g+ ?: p' j3 z
如何用matlab配方 1 \/ `0 f1 x/ C3 y) [
! \9 V' A% P Z0 m0 W没有发现matlab有这一命令,不过我们可以调用maple的命令,调用方法如下:
4 X; P- Z0 X1 _6 X2 I! z: Z, |6 @5 ~3 I+ T
首先加载maple中的student函数库,加载方法为:maple(’with(student)’) 3 k1 ~( ?4 v" F5 l& p
- E1 r" M! b/ a1 A& p然后运行maple中的配方命令,格式为:
8 c. }1 f6 |, e" w4 [ u- F/ R# ~1 p6 g! s
maple(’completesquare(f)’) 把f配方,其中f为代数表达式或代数方程 * L3 I6 W+ |( N: D* h4 ?
0 z! Z5 g1 m* ~3 R' d- Q) l; Z5 L
maple(’completesquare(f,x)’) 把f按指定的变量x配方,其中f同上
" J0 J5 H# V. I3 G
5 p. T8 i/ R$ t8 ^& Zmaple(’completesquare(f,{x,y,...})’) 把f按指定的变量x,y,...配方
1 L# W, I" m0 K7 D# p% d
. Y; b" @ P1 T+ h9 R" S. Omaple(’completesquare(f,[x,y,...])’) 把f按指定的变量x,y,...配方,
& e: C+ O6 M |# l% N) U
9 u' z, S1 O6 M o- _5 F" o* L如何用matlab进行多项式运算 : c- t( Q5 O* j1 g! \
" W5 I% W( ~1 U |8 C* O! D(1) 合并同类项
+ B/ n% Q" q6 f- S1 F6 h! b
& L1 V) s- w& M1 \ D2 Gsyms 表达式中包含的变量 collect(表达式,指定的变量)
" o) _3 D% t0 @- h: v9 i+ R
6 h/ I2 [9 M5 O4 p& y$ X(2)因式分解
, {4 h6 m7 _0 a' c# `1 [
. U, v- e6 M* t3 T' }. wsyms 表达式中包含的变量 factor(表达式) 2 Z# Q3 R0 @' J0 L: z
, c1 J6 t6 S& A9 K0 R8 q7 ?) u6 O1 {(3)展开
1 W5 B- d2 d' K
$ d! C; ?* i2 u- E; f/ wsyms 表达式中包含的变量 expand(表达式)
* A# S. e( e/ n* x- O& A m: D; c: h, ] q- Z
我们也可在matlab中调用maple的命令进行多项式的运算,调用格式如下: / ^& k' g9 [! w
' d( V/ K, ~( K8 R6 X, M3 \ maple(’maple中多项式的运算命令’) : H/ T' x7 D/ p2 J
5 X8 i1 k( {; O6 R
如何用matlab进行分式运算
, s) F4 d* q- r- b% l! B5 z B9 ^
) M8 ]! s( z4 w; l( J0 s发现matlab只有一条处理分式问题的命令,其使用格式如下:
7 j; `2 u$ o8 b7 z: O ^8 J- _% K4 T% g; [
[n,d]=numden(f) 把符号表达式f化简为有理形式,其中分子和分母的系数为整数且分子分母不含公约项,返回结果n为分子,d为分母。注意:f必须为符号表达式 2 K; v# }4 X4 o9 t- J A2 `- p
2 v, q7 T6 j9 o d2 F7 q7 Y
不过我们可以调用maple的命令,调用方法如下:
8 c1 F# B4 ~& b1 T1 k) Y& k) s
& h4 P1 G: s& |maple(’denom(f)’)
4 P% n6 G4 S: D: \+ e3 z8 q$ Q 提取分式f的分母
. j1 p9 L$ o/ m' ^
% p' o( L- |2 b/ q* vmaple(’numer(f)’) $ l1 x, S2 ^$ N. n% ~$ j, W: a
提取分式f的分子
/ b: o- L& a+ W: n7 |
5 Z/ u- u) P- b6 o2 y; {maple(’normal(f)’ ) ' H) S0 N1 N2 H3 L) D
把分式f的分子与分母约分成最简形式 0 G, O& {/ g# n9 }
$ e8 O2 [/ v* X) D" T
maple(’expand(f)’)
3 h! L1 V% e) D8 S; C+ J 把分式f的分子展开,分母不变且被看成单项。
$ D5 m& C+ d/ t/ y- P. j' i & r0 K3 R8 v s
maple(’factor(f)’)
# b# q6 w: k9 m 把分式f的分母和分子因式分解,并进行约分。
# ^- d7 t5 z5 M j M% \
$ ?- K$ W$ J; }! J4 H
! v& j) r7 a9 O8 E9 a如何用Matlab进行因式分解 1 x0 V$ q; J+ [- H- V: d1 a
6 q' Z; W: c3 v$ h+ b+ J) L6 w' jsyms 表达式中包含的变量 factor(表达式) V% [% D* L# U# m* x' M3 T
" p; x5 P/ ^) Z I 如何用Matlab展开 ! j5 v4 ~- n+ ^3 h
5 ]- @( N3 T& X2 p+ \7 X
syms 表达式中包含的变量 expand(表达式)
' Q. |6 |3 Y$ f2 w3 z, W- p* h/ s( E# U" A$ [1 n' B
如何用Matlab进行化简
4 L* j5 ]* |2 b* e: g- a: ^: h- p# s9 B1 z/ a) M) V
syms 表达式中包含的变量 simplify(表达式) 8 O2 H/ d7 G+ L6 B$ P% m
$ |+ D E, Y9 g) F& w
如何用Matlab合并同类项 & T) B1 G) w G7 R
5 Q+ S+ q0 p$ O. ?! y X
syms 表达式中包含的变量 collect(表达式,指定的变量)
* \5 M, Q% I* f% P, A$ k: A" e' c! ^0 j! A" O" l3 H% e; a/ G
如何用Matlab进行数学式的转换
9 M8 s% x4 Z+ g5 q# l, H/ |; {0 b: S& Y2 t: Y* ?
调用Maple中数学式的转换命令,调用格式如下: 2 |3 o9 o v- i5 X5 Z' {
) b; D- c3 l. ^maple(‘Maple的数学式转换命令’)
9 B8 J% _% d; k( ]' s5 ?+ v8 `" T$ g$ z0 g" n2 ~2 O
即:maple(‘convert(表达式,form)’) 将表达式转换成form的表示方式 ' J, M/ ~+ |6 U+ _0 H
% X" W5 ^3 q2 Xmaple(‘convert(表达式,form, x)’) 指定变量为x,将依赖于变量x的函数转换成form的表示方式(此指令仅对form为exp与sincos的转换式有用)
& T% U6 P6 O1 }9 w# A
1 l2 I2 o- Z6 C: Q3 p: l如何用Matlab进行变量替换 ! y7 L! E; L1 O
8 [; ~: V0 O. o1 C9 }) M; ], Vsyms 表达式和代换式中包含的所有变量 subs(表达式,要替换的变量或式子,代换式) * Q6 h5 d6 E6 Q+ A9 p4 q. W+ R8 ?
# i# g7 E+ O% {4 Z8 U9 o* n 如何用matlab进行复数运算 ( z: `: T$ k; R* _, n/ W
y* G4 Z' O1 Qa+b*i 或 a +b*j ; J% J) ^+ V, X9 v
表示复数a+bi 或 a+bj $ _6 k! h6 p. v, X4 l
! W) j* a. W4 {" ]4 X, }. V
real(z) 2 i$ d* x7 [$ F7 O1 y9 y
求复数z的实部
3 R; a: [* c: n* C0 @* v7 C
1 D; [- Z( Z6 k }" w, s1 kimag(z) ) D5 q; w" j3 S; k
求复数z的虚部
% S; ~& h$ x2 b e) V
- q8 P# K. q. Aabs(z)
6 ~+ W3 p. X! h* R' M 求复数z的模
- j& |9 B: [( ~- p/ H# q {/ s # ^. j2 B& {5 g: F
angle(z)
. a& L9 z% n# A0 V* j 求复数z的辐角,
7 j, `( q- _6 s 7 I( N. {0 E7 G: F
conj(z) ' X) k" r: }$ P F5 g
求复数z的共轭复数 9 M$ ^, e2 A: [* b3 b: ^
) q) x* N) {# o: Y5 U! E: m5 Aexp(z) ) P+ Z9 y( ^! g1 L- C
复数的指数函数,表示e^z
0 A6 b6 S9 y+ k* k$ U7 `9 K
4 X) r3 b9 K7 m
]& ]. H. Q8 w6 X' i6 D! V如何在matlab中表示集合
. ^ P7 `2 Z5 B+ Q" N( ^2 Q8 X( ^$ S4 O/ B: w; O: g6 p. k) e
[a, b, c,…] 表示由a, b, c,…组成的集合 (注意:元素之间也可用空格隔开)
7 g- p* J8 [( [7 Q( I& ?( t' ~ ]* j5 s4 G! s& t
unique(A) 表示集合A的最小等效集合(每个元素只出现一次)
; O5 Z7 z7 r: z
; T& l ]# ]8 p5 Z# x也可调用maple的命令,格式如下:
7 O# ]% Y( J" ~( W% y( q2 Y4 v9 s2 ^, D/ q" t; Q
maple('{a, b, c,…}') 表示由a, b, c,…组成的集合
- v: _" z! `+ `
5 n& l: \9 [# U' M! K下列命令可以生成特殊的集合:
0 Y- \8 c" }2 f8 a& M' I; U( W5 _6 A" F9 T5 c5 _0 d" ?
maple(‘{seq(f(i),i=n..m)}’) 生成集合{f(n), f(n+1), f(n+2), … , f(m)}
0 U. t( y, _# w, t' ~' r) x
& |+ N6 ~6 t1 m7 m如何用Matlab求集合的交集、并集、差集和补集
. q- ^9 @2 c; g9 h; f& {- J7 y( s3 n! M$ h$ ~8 Q
union(A,B)
; \6 v' W: e8 p1 R& _# q 求集合A和B的并集
# x$ w3 d$ r1 [% x
# R. s- Z$ c) { R0 Iintersect(A,B) 2 _( K" d' X3 y- F
求集合A和B的交集 / t! Y p4 x3 w) \- K K, j
: n) R5 Y; e6 c0 v! l% {& }) isetdiff(A,B) ) _1 Z4 F* ~! M2 `
求集合A和B的差集A-B ! Z( W; i; A$ @ Q3 N
$ |, ]9 W5 ^) X4 {" k7 j1 x
setdiff(U,A)
8 @+ f) `5 e. h' V 求集合A关于全集U的补集6 U& s" ]% F8 t* ^0 F; |
/ ?& P' a) [% E; Q F; U
6 X8 t% G& E7 F- E; q$ Q9 J我们也可以调用Maple的相应功能,调用方法如下: , q7 K# ?& Z/ h4 L: h c
# j2 Y# A7 C) ?! Dmaple('用Maple求集合的交集、并集、差集和补集的命令 ')
, w3 k0 |& Y$ C
A( t8 g# S3 ~; r4 f. \: {6 j* s具体地说,共有下列几个调用命令: ! {8 N" a( B- V+ Z0 l9 u- X
) x/ q3 ~' f+ Nmaple( 'A union B' ) 求集合A和B的并集
# I, p+ L1 u7 q) l+ D$ M
& a- U9 c* \$ U4 r! ?maple( 'A intersect B ' ) 求集合A和B的交集
% p# P2 g0 f5 [1 `, }2 D2 g: i& q. l" @$ ^) f3 G9 P
maple('A minus B ' ) 求差集A-B 8 C' l# r$ m3 S( V5 s+ D
- |4 a: u: M: u4 b$ x5 W
maple( '全集I minus A ' ) 求集合A关于全集I的补集
* n3 I' a! o8 F. W8 ]. R1 f& o5 C/ \! G% n9 |
如何用matlab排序
/ v2 J- ^$ F/ B- ^% ^; S* N j, ~6 U7 \5 o6 N
sort(v) 将向量v的元素从小到大排列(升序排列) |
|