> > # Tehtava 1 Tässä inputit ja selitykset otettuna suoraan maple/ohjeita.html:stä: Teht. 1
Kannattaa käsitellä vasen puoli (vp) ja oikea puoli (op) erikseen.
with(inttrans):alias(L=laplace,IL=invlaplace,H=Heaviside): vp:=R*diff(i(t),t)+(1/C)*i(t); Lvp:=L(vp,t,s); Lvp:=subs(i(0)=0,L(vp,t,s));Oikea puoli on helpointa muuntaa suoraan määritelmän perusteella:
Lop:=int((e0/epsilon)*exp(-s*t),t=0..epsilon); # Lasketaan suoraan L-muunnoksen # määritelmästä. Ldy:=Lvp=Lop # Laplace-muunnettu yhtälö II:=solve(Ldy,L(i(t),t,s));Huom: Maple ei Laplace-muunna
H(t-a):ta
, ellei se tiedä
a:n merkkiä. Kokeile vaikka
assume(a>0):L(H(t-a),t,s); assume(epsilon>0);# Tätä tarvitaan, jotta vastaavasti käänteismuunnokset # jatkossa onnistuisivat. a:='a': # Tällä pääsee eroon "assume-ominaisuudesta".Tässä sitten ratkaisuversiot ala Ville L.: > > # Tassa annetaan komento readlib(laplace); nelosversiossa tietysti with(inttrans) > readlib(laplace): -------------------------------------------------------------------------------- > sahko:=R*diff(i(t),t)+(1/C)*i(t); / d \ i(t) sahko := R |---- i(t)| + ---- \ dt / C -------------------------------------------------------------------------------- > lsahko:=laplace(sahko,t,s); laplace(i(t), t, s) lsahko := R (laplace(i(t), t, s) s - i(0)) + ------------------- C -------------------------------------------------------------------------------- > alias(H=Heaviside); I, H -------------------------------------------------------------------------------- > laplace(H(t-a),t,s); laplace(H(t - a), t, s) -------------------------------------------------------------------------------- > # Kuten huomaamme, maple ei osaa muuntaa Heavisidea, jos a:lla ei ole numeerista arvoa > # Muunnetaan nain ollen yhtalon oikea puoli kasin ja annetaan tulos maplelle > # Olkoon jannitteen huippuarvo=J ja sen saavuttamiseen kulunut aika=eps > lsahko:=lsahko=(J/eps)*(1/s-(1/s)*exp(-eps*s)); lsahko := / exp(- eps s)\ J |1/s - ------------| laplace(i(t), t, s) \ s / R (laplace(i(t), t, s) s - i(0)) + ------------------- = ---------------------- C eps -------------------------------------------------------------------------------- > lsahko:=subs(i(0)=0,lsahko); / exp(- eps s)\ J |1/s - ------------| laplace(i(t), t, s) \ s / lsahko := R laplace(i(t), t, s) s + ------------------- = ---------------------- C eps -------------------------------------------------------------------------------- > lvirta:=solve(lsahko,laplace(i(t),t,s)); J J exp(- eps s) - ----- + -------------- eps s eps s lvirta := - ------------------------ R s + 1/C -------------------------------------------------------------------------------- > virta:=invlaplace(lvirta,s,t); / / t \ / t - eps \\ | J |1 - exp(- ---)| J H(t - eps) |1 - exp(- -------)|| | \ R C / \ R C /| virta := - C |- ------------------ + ---------------------------------| \ eps eps / -------------------------------------------------------------------------------- > # Kokeillaan raja-arvoa: > limit(virta,eps=0); undefined -------------------------------------------------------------------------------- > # Ei onnistunut suoraan. Mutta jos t=0, on myos virta=0 ja raja-arvokin siis = 0 > # Jos taas t>0, on H(t - eps) = 1, kun eps < t, ja nain kay lopulta, kun eps -> 0 > VIRTA:=subs(H(t-eps)=1,virta); / / t \ / t - eps \\ | J |1 - exp(- ---)| J |1 - exp(- -------)|| | \ R C / \ R C /| VIRTA := - C |- ------------------ + ----------------------| \ eps eps / -------------------------------------------------------------------------------- > limit(VIRTA,eps=0); J ---------- t exp(---) R R C -------------------------------------------------------------------------------- >