#************************************************************************* # programme de simulation de la réponse d'un dipole RC à un signal carré # Dominique Lefebvre décembre 2010 # www.tangenteX.com #************************************************************************* # with(plots): # # Définition des paramètres V0 := 5: # tension de charge du condensateur C := 1e-6: # capacité en farad R := 1e3: # résistance en ohm P := 1e-2: # periode du signal carré en s NbPeriode := 3: # nombre de périodes # calcul de la courbe v(t) aux bornes du condensateur pour les différentes # demi-periodes u[0] := -V0: for i from 1 to 2*NbPeriode do: sol := dsolve({R*C*diff(v(t),t)+v(t)=(-1)^(i+1)*V0,v(P*(i-1)/2)=u[i-1]},v(t)): assign(sol): p[i] := plot(v(t),t=P*(i-1)/2..P*i/2,color="red",legend="tension condensateur"): u[i] := subs(t=P*i/2, v(t)): unassign('v(t)'): end do: # calcul du signal carré d'excitation q := plot(piecewise(frac(t/P) < 0.5,V0,-V0),t=0..NbPeriode*P,color="blue",legend="signal rectangulaire"): display([seq(p[i], i=1..2*NbPeriode),q], axes=BOXED);