DS de maple
(samedi 13 janvier 2007 ; une heure) A.
1) Afficher une séquence contenant les cubes des entiers de 1 à 7 en utilisant la fonction seq.
2) Même question en utilisant une boucle for.
3) Afficher une séquence contenant les cubes des entiers successifs, ces cubes étant limités à ceux inférieurs à 100, en utilisant une boucle while.
4) Ecrire une procédure qui retourne la séquence des cubes des entiers de 1 à N, N étant passé en paramètre.
5) Comment modifier cette procédure pour qu’elle retourne la liste de ces cubes ? 6) Comment modifier cette procédure pour qu’elle retourne l’ensemble de ces cubes ? 7) Comment contrôler le type du paramètre passé à cette procédure lors de son appel ? B.
Un générateur de fonction (BF) est modélisé par une source de tension de force électromotrice en série avec une résistance r ;
est un signal triangulaire symétrique d’amplitude e et de période . Ce générateur est branché sur un condensateur de capacité C auquel il applique la tension u.
e t( )
e t( ) m =1 volt
T =1ms e t( )
r
C u
e
t 2
−T
2 T 0
em
− em
L’équation différentielle régissant en fonction de et e est
u t( )
1ms
τ=rC = du
u e τdt + = .
1.a) Affecter à une variable nommée l’expression numérique de
exp ession dépendra e la seu non de T, τ et em, dont on prendra en compte les valeurs numér ques.
1.b Affecter à une variable nommée eq1 l’éq 1
e e en fonction de pour . Cette
r d le variable , et i
uation différentielle vérifiée par la valeur de pour 1.c) Résoudre f ellement cette équation différentielle avec la condition pour
onction d ur ms. Cette
ex
d é iel vérifiée par la valeur de pour 2.c) Résoudre formellement cette équation différentielle avec la condition pour
t −0, 5 ms < <t 0 t
1( )
u t u t( ) 0, 5 ms < <t 0.
orm
−
1 0
u =u t =0. 2.a) Affecter à une variable nommée e2 l’expression numérique de e en f e t po 0< <t 0, 5 pression dépendra de la seule variable , et non de T, τ et em.
2.b Affecter à une variable nommée eq l’équation iff rent le t
2 u t2( ) u t( )
0 < <t 0, 5 ms.
2 0
u =u t =0. 3) Calculer u0 pour que u1(−T/ 2)=u T2( / 2).
Nota : la solu on trouvée ti est unique (équations linéaires par rapport aux constantes d’intégration).
en rouge et en bleu ?
,exp xpr1 tion cond est vérifiée et expr2 dans le cas contraire. La fo
:=em*piecewise(t/T-floor(t/T)<0.5,1-4*(t/T-floor(t/T)),4*(t/T-floor(t/T))-3)
e numériquement l’équation différentielle do
er le e de
rité d ce graphe sur celui tracé à la question 4 ?
4) Superposer les graphes de u t( ) et e t( ) pour −T/ 2< <t T/ 2 et τ =T. 5) Comment faire pour représenter u t( ) e t( )
6) La fonction piecewise(cond,expr1 r2) retourne e si la condi
nction floor(x) retourne l’entier immédiatement inférieur ou égal à x. Avec ces fonctions, l’expression générale eg de e est :
eg
En utilisant cette expression et avec les valeurs numériques précédentes, résoudr nnant u t( ) pour u( )0 =0.
7) Trac graph u t( ). 8) Quelle est la supério e
Corrigé
A.
1) > seq(i^3,i=1..7);
2) > se:=NULL:
for i to 7 do se:=se,i^3 od:
se;
3) > se:=NULL:i:=1:
while i^3<=100 do se:=se,i^3:i:=i+1 od:
se;
4) > seqcube:=proc(N) local i,se1:se1:=NULL:for i to N do se1:=se1,i^3 od:se1:end:
5) > listcube:=proc(N) local i,se:se:=NULL:for i to N do se:=se,i^3 od:[se]:end:
6) > enscube:=proc(N) local i,se:se:=NULL:for i to N do se:=se,i^3 od:{se}:end:
7) > seqcube:=proc(N::integer) local i,se:se:=NULL:for i to N do se:=se,i^3 od:se:end:
B.
> restart:with(plots):
1.a) > e1:=1+4*t:
1.b) > eq1:=diff(u1(t),t)+u1(t)=e1;
:=
eq1 ⎛ + =
⎝ ⎜⎜ ⎞
⎠ ⎟⎟
d d
t u1 ( ) t u1 ( ) t 1 + 4 t
1.c) > sol:=dsolve({eq1,u1(0)=u0},u1(t));
:=
sol u1 ( ) t = − + + 3 4 t e
(−t)( 3 + u0 )
> assign(sol):
2.a) > e2:=1-4*t:
2.b) > eq2:=diff(u2(t),t)+u2(t)=e2;
:=
eq2 ⎛ + =
⎝ ⎜⎜ ⎞
⎠ ⎟⎟
d d
t u2 ( ) t u2 ( ) t 1 − 4 t
2.c) > sol:=dsolve({eq2,u2(0)=u0},u2(t));
:=
sol u2 ( ) t = 5 − + 4 t e
(−t)( − + 5 u0 )
> assign(sol):
3) > u0:=solve(subs(t=-1/2,u1(t))=subs(t=1/2,u2(t)),u0);
:=
u0 − 3 e
(1 2/ )− 5 + e
(1 2/ )1
4) et 5) > gr1:=plot([e1,u1(t)],t=-1/2..0,color=[blue,red]):
> gr2:=plot([e2,u2(t)],t=0..1/2,color=[blue,red]):
> display(gr1,gr2);
6) > eg:=piecewise(t-floor(t)<0.5,1-4*(t-floor(t)),4*(t-floor(t))-3):
> sol:=dsolve({diff(u(t),t)+u(t)=eg,u(0)=0},u(t),numeric):
7) > odeplot(sol,[t,u(t)],0..10,numpoints=1000);
8) Ce graphe permet de voir le régime transitoire.