ALS
Inscrit le: 11 Sep 2006 Messages: 647
|
Posté le: 17 Fév 2012 9:08 Sujet du message: |
|
|
Bonjour,
C'est un peu difficile, car il va falloir entrer dans la structure de l'objet graphique c représentant la solution de l'équation différentielle, mais c'est possible. Voici quelques explications:
> c:=odeplot(p):
> m:=op(1,op(1,c));
m représente le tableau des valeurs stockées dans c sous la forme
> u := ArrayElems(m);
(1, 1) = -5.,(1, 2) = .111953057921452e-1
etc.... jusqu'à
(201, 1) = 5.,(201, 2) = -.115689933978442e-1
Donc (i,1)=abscisse, (i,2)=ordonnée.
Ensuite, on transforme en une liste de points (abscisse, ordonnée), notée liste par l'ordre:
> d := d, seq([op(map(x-> rhs(x), convert(u[2*k+1 .. 2*k+2], list)))], k = 0 .. (1/2)*nops(u)-1):
> liste := [d];
Code: |
> a:=1: b:=2: c:=3:
> E:={a*diff(y(x),x,x)=b*sin(y(x))-c*cos(y(x)),D(y)(0)=1,y(0)=0};
2
d
E := {y(0) = 0, --- y(x) = 2 sin(y(x)) - 3 cos(y(x)), D(y)(0) = 1}
2
dx
> with(plots):
> p:= dsolve(E, type=numeric, range=-5..5):
> odeplot(p);
> c:=odeplot(p):
> m:=op(1,op(1,c));
[ 1..201 x 1..2 2-D Array ]
m := [ Data Type: float[8] ]
[ Storage: rectangular ]
[ Order: C_order ]
> d := NULL:
> u := ArrayElems(m):
> d := d, seq([op(map(x-> rhs(x), convert(u[2*k+1 .. 2*k+2], list)))], k = 0 .. (1/2)*nops(u)-1):
> liste := [d];
liste := [[-5., 0.0111953057921452],
[-4.95000000000000, 0.0558124341232879],
[-4.90000000000000, 0.0932179440595855],
[-4.85000000000000, 0.123618790368563],
[-4.80000000000000, 0.147190452408815],
[-4.75000000000000, 0.164073379825905],
[-4.70000000000000, 0.174370440581384],
[-4.65000000000000, 0.178145323638003],
[-4.60000000000000, 0.175421534834403],
[-4.55000000000000, 0.166182119190153],
[-4.50000000000000, 0.150369798574936],
[-4.45000000000000, 0.127887999782291],
[-4.40000000000000, 0.0986021389098722],
[-4.35000000000000, 0.0623422577471204],
[-4.30000000000000, 0.0189061297508505],
[-4.25000000000000, -0.0319359396507574],
[-4.20000000000000, -0.0904349108277430],
[-4.15000000000000, -0.156855137551525],
[-4.10000000000000, -0.231463388086254],
[-4.05000000000000, -0.314516503942745],
[-4., -0.406245087430729],
[-3.95000000000000, -0.506832855700644],
[-3.90000000000000, -0.616397678293802],
[-3.85000000000000, -0.734962360814655],
[-3.80000000000000, -0.862431767262410],
[-3.75000000000000, -0.998563266350801],
[-3.70000000000000, -1.14294360631083],
[-3.65000000000000, -1.29496805701951],
[-3.60000000000000, -1.45382895518746],
[-3.55000000000000, -1.61851488029962],
[-3.50000000000000, -1.78782354427104],
[-3.45000000000000, -1.96038978629846],
[-3.40000000000000, -2.13472694528635],
[-3.35000000000000, -2.30928022425113],
[-3.30000000000000, -2.48248672364708],
[-3.25000000000000, -2.65283532492712],
[-3.20000000000000, -2.81892250794365],
[-3.15000000000000, -2.97949785029929],
[-3.10000000000000, -3.13349542670675],
[-3.05000000000000, -3.28005076283249],
[-3., -3.41850440089408],
[-2.95000000000000, -3.54839116014069],
[-2.90000000000000, -3.66942516518183],
[-2.85000000000000, -3.78147168532816],
[-2.80000000000000, -3.88452509018585],
[-2.75000000000000, -3.97867849832196],
[-2.70000000000000, -4.06410069000889],
[-2.65000000000000, -4.14101099000313],
[-2.60000000000000, -4.20966091945562],
[-2.55000000000000, -4.27031571987992],
[-2.50000000000000, -4.32324179892959],
[-2.45000000000000, -4.36869448986533],
[-2.40000000000000, -4.40691022750464],
[-2.35000000000000, -4.43809918506469],
[-2.30000000000000, -4.46244069509350],
[-2.25000000000000, -4.48007930257385],
[-2.20000000000000, -4.49112226547155],
[-2.15000000000000, -4.49563779104805],
[-2.10000000000000, -4.49365399002735],
[-2.05000000000000, -4.48515850981615],
[-2., -4.47009862988146],
[-1.95000000000000, -4.44838220409487],
[-1.90000000000000, -4.41987882942008],
[-1.85000000000000, -4.38442251077999],
[-1.80000000000000, -4.34181435448748],
[-1.75000000000000, -4.29182770647366],
[-1.70000000000000, -4.23421339353980],
[-1.65000000000000, -4.16870845762833],
[-1.60000000000000, -4.09504531825866],
[-1.55000000000000, -4.01296575392191],
[-1.50000000000000, -3.92223513961259],
[-1.45000000000000, -3.82266319301067],
[-1.40000000000000, -3.71412326940433],
[-1.35000000000000, -3.59658069176559],
[-1.30000000000000, -3.47011559466414],
[-1.25000000000000, -3.33495263309111],
[-1.20000000000000, -3.19148445431645],
[-1.15000000000000, -3.04029323840456],
[-1.10000000000000, -2.88216328893816],
[-1.05000000000000, -2.71808319580615],
[-1., -2.54923469139274],
[-0.950000000000000, -2.37696613162104],
[-0.900000000000000, -2.20275312939536],
[-0.850000000000000, -2.02814518247388],
[-0.800000000000000, -1.85470791219803],
[-0.750000000000000, -1.68396085997868],
[-0.700000000000000, -1.51732254961633],
[-0.650000000000000, -1.35606256633040],
[-0.600000000000000, -1.20126901951490],
[-0.550000000000000, -1.05382969593123],
[-0.500000000000000, -0.914427135323608],
[-0.450000000000000, -0.783547925075873],
[-0.400000000000000, -0.661496923466409],
[-0.350000000000000, -0.548425246926246],
[-0.300000000000000, -0.444351406183005],
[-0.250000000000000, -0.349192517555239],
[-0.200000000000000, -0.262786959242023],
[-0.150000000000000, -0.184920265229078],
[-0.100000000000000, -0.115343534551264],
[-0.0500000000000000, -0.0537924303309192],
[0.0500000000000000, 0.0462908796462680],
[0.100000000000000, 0.0853189428681509],
[0.150000000000000, 0.117297887859820],
[0.200000000000000, 0.142410570115703],
[0.250000000000000, 0.160805777601693],
[0.300000000000000, 0.172595029659956],
[0.350000000000000, 0.177851088142952],
[0.400000000000000, 0.176606638308785],
[0.450000000000000, 0.168853930446933],
[0.500000000000000, 0.154544836954310],
[0.550000000000000, 0.133591580532094],
[0.600000000000000, 0.105868117573942],
[0.650000000000000, 0.0712121970278326],
[0.700000000000000, 0.0294286976603082],
[0.750000000000000, -0.0197064436364544],
[0.800000000000000, -0.0764398381533920],
[0.850000000000000, -0.141033766496326],
[0.900000000000000, -0.213755352006241],
[0.950000000000000, -0.294865233494426],
[1., -0.384600924522790],
[1.05000000000000, -0.483159681938675],
[1.10000000000000, -0.590675390996992],
[1.15000000000000, -0.707195812106621],
[1.20000000000000, -0.832654005667700],
[1.25000000000000, -0.966844509428734],
[1.30000000000000, -1.10939318275911],
[1.35000000000000, -1.25974164831392],
[1.40000000000000, -1.41712833046203],
[1.45000000000000, -1.58058765458549],
[1.50000000000000, -1.74895902683881],
[1.55000000000000, -1.92091075152740],
[1.60000000000000, -2.09498008683967],
[1.65000000000000, -2.26962190828056],
[1.70000000000000, -2.44327070783912],
[1.75000000000000, -2.61439726219455],
[1.80000000000000, -2.78157033242482],
[1.85000000000000, -2.94350054257066],
[1.90000000000000, -3.09907825863467],
[1.95000000000000, -3.24739242117972],
[2., -3.38773721826961],
[2.05000000000000, -3.51960493847290],
[2.10000000000000, -3.64267010412651],
[2.15000000000000, -3.75676665683559],
[2.20000000000000, -3.86186138377904],
[2.25000000000000, -3.95802758905694],
[2.30000000000000, -4.04541884872163],
[2.35000000000000, -4.12424487827366],
[2.40000000000000, -4.19475150328557],
[2.45000000000000, -4.25720208533335],
[2.50000000000000, -4.31186392276054],
[2.55000000000000, -4.35899569050773],
[2.60000000000000, -4.39883875382980],
[2.65000000000000, -4.43160980992843],
[2.70000000000000, -4.45749551269795],
[2.75000000000000, -4.47664865365341],
[2.80000000000000, -4.48918509824225],
[2.85000000000000, -4.49518210124881],
[2.90000000000000, -4.49467692645409],
[2.95000000000000, -4.48766644059910],
[3., -4.47410707986355],
[3.05000000000000, -4.45391553560818],
[3.10000000000000, -4.42696999426477],
[3.15000000000000, -4.39311224202084],
[3.20000000000000, -4.35215063689824],
[3.25000000000000, -4.30386421280129],
[3.30000000000000, -4.24800852452962],
[3.35000000000000, -4.18432263773583],
[3.40000000000000, -4.11253943079729],
[3.45000000000000, -4.03239671854234],
[3.50000000000000, -3.94365364100529],
[3.55000000000000, -3.84610708215748],
[3.60000000000000, -3.73961509619012],
[3.65000000000000, -3.62411838967168],
[3.70000000000000, -3.49966995032623],
[3.75000000000000, -3.36645803598237],
[3.80000000000000, -3.22483583736090],
[3.85000000000000, -3.07534043938514],
[3.90000000000000, -2.91870985851547],
[3.95000000000000, -2.75588656541025],
[4., -2.58800990920041],
[4.05000000000000, -2.41639383318350],
[4.10000000000000, -2.24248857806223],
[4.15000000000000, -2.06783265609802],
[4.20000000000000, -1.89399237352029],
[4.25000000000000, -1.72250413226929],
[4.30000000000000, -1.55481289010756],
[4.35000000000000, -1.39222627566370],
[4.40000000000000, -1.23587564369270],
[4.45000000000000, -1.08669520542290],
[4.50000000000000, -0.945414050561870],
[4.55000000000000, -0.812561692646480],
[4.60000000000000, -0.688483433805971],
[4.65000000000000, -0.573361975671893],
[4.70000000000000, -0.467244664212070],
[4.75000000000000, -0.370068314530227],
[4.80000000000000, -0.281687884436182],
[4.85000000000000, -0.201898904634175],
[4.90000000000000, -0.130458273466427],
[4.95000000000000, -0.0671042217712140],
[5., -0.0115689933978442]]
|
On récupère bien la liste des points de la courbe intégrale. |
|