Ugrás a tartalomhoz

Impulzív jelenségek modelljei

Karsai János

Typotex

5.6. A visszaverődés jelensége

5.6. A visszaverődés jelensége

A rögzített időpillanatokban ható impulzusoknál azt tapasztaltuk, hogy minden egyes impulzus legfeljebb egyszer hat, mivel a rendszer megoldásai minden t_i

t i pillanaton túljutnak, ha ekkor létezik a rendszer differenciálegyenletének a megoldása. Ha lim_(i›?)t_i=?, lim i ? ? t i = ? , akkor a csupán véges intervallumra való folytathatóságát nem okozhatják az impulzusok. Általánosabb impulzusok esetén más a helyzet.

Előfordulhat, hogy egy megoldás többször is teljesíti ugyanazt az S_i(t,x(t))=0

S i ( t , x ? ( t ) ) = 0 feltételt, azaz erről a felületről „visszapattan”. Ez a tulajdonság függ a magától a megoldástól is. Ezt a jelenséget nevezzük visszaverődésnek vagy pulzációnak. Az alábbiakban néhány érdekes példán keresztül mutatjuk be a jelenséget. Egy rendszeren belül is előfordulhat visszaverődés és továbbhaladás.

Visszaverődés és továbbhaladás együtt

5.6.1. Példa.

Tekintsük az alábbi egyszerű rendszert:

x'=0, ha S_i(t,x(?–0))?0, x(?+0)=?(|x(?–0)|)sign(x(?–0)), ha S(t,x(?–0))=0, x ' = 0 , ha ? S i ? ( t , x ? ( ? - 0 ) ) ? 0 , x ? ( ? + 0 ) = | x ? ( ? - 0 ) | ? sign ? ( x ? ( ? - 0 ) ) , ha ? S ? ( t , x ? ( ? - 0 ) ) = 0 , (5.6.1)

ahol S(t,x)=sin(?(t–x))

S ? ( t , x ) = sin ? ( ? ? ( t - x ) ) , ha |x|?1 | x | ? 1 és legyen S(t,x)=1 S ? ( t , x ) = 1 egyébként. Nyilvánvaló, hogy ?_i(x)=i+x ? i ( x ) = i + x , ha |x|?1 | x | ? 1 (i=1, 2, 3, ...) ( i = 1 , 2 , 3 , ... ) . Belátható, hogy a különböző kezdeti értékekből induló megoldások különbözőképpen viselkednek:

  • Ha |x_0|///>///1

    | x 0 | ///>/// 1 , akkor a megoldásokra nem hat impulzus.

  • Ha |x_0|=1

    | x 0 | = 1 vagy x_0=0 x 0 = 0 , akkor a megoldásokra ható impulzus azonosság.

  • Ha 0///<///x_0///<///1

    0 ///</// x 0 ///</// 1 , akkor a megoldásokra végtelen sok impulzus hat a ?_i ? i pillanatokban, lim_(i›?)?_i=1, lim i ? ? i = 1 , és lim_(i›?)x(?_i±0)=1. lim i ? x ? ( ? i ± 0 ) = 1 .

  • Ha –1///<///x_0///<///0

    - 1 ///</// x 0 ///</// 0 , akkor a megoldásokra végtelen sok impulzus hat a ?_i ? i pillanatokban, lim_(i›?)?_i=?, lim i ? ? i = ? , és lim_(i›?) lim i ? x(?_i±0)=1. x ? ( ? i ± 0 ) = 1.

Vizsgáljuk meg a megoldásokat az IDERKSolve program segítségével.

xdot={0};xvar={x}; t0=0; t1=4;dt=0.01; x1=–2; x2=2;

xdot = { 0 } ; xvar = { x } ; t0 = 0 ; t1 = 4 ; dt = 0.01 ; x1 = - 2 ; x2 = 2 ;

init={{–1},{–1.5},{–0.1},{1},{1.5},{0.1}};

init = { { - 1 } , { - 1.5 } , { - 0.1 } , { 1 } , { 1.5 } , { 0.1 } } ;

S[t_,x_]:=Which[Abs[x]///<///1,Sin[?(t–x)],True,1];

S [ t_ , x_ ] := Which [ Abs [ x ] ///</// 1 , Sin [ ? ? ( t - x ) ] , True , 1 ] ;

Impulse={{S[t,x],{?(Abs[x])Sign[x]},1}};

Impulse = { { S [ t , x ] , { Abs [ x ] ? Sign [ x ] } , 1 } } ;

Ábrázoljuk az S halmazt és az impulzus S-re gyakorolt hatását:

JumpPlot[S[t,x],Impulse[[1,2]],{t,t0,t1},{x,x1,x2},PlotPoints›100,ContourStyle›{Thickness[0.015]}];

JumpPlot [ S [ t , x ] , Impulse [ [ 1 , 2 ] ] , { t , t0 , t1 } , { x , x1 , x2 } , PlotPoints 100 , ContourStyle { Thickness [ 0.015 ] } ] ;

Az S halmaz egyenes szakaszokból áll (a t-tengellyel párhuzamos vonalakat az ábrázolási korlátok eredményezik). Oldjuk meg a rendszert:

sol1=IDERKSolve[xdot,Impulse,xvar,init,{t,0,t1,dt}];

sol1 = IDERKSolve [ xdot , Impulse , xvar , init , { t , 0 , t1 , dt } ] ;

Ábrázoljuk a megoldásokat és az S(t,x)=0

S ? ( t , x ) = 0 halmazt együttesen:

plt1=ListPlot1[sol1,PlotJoined›True,GridLines›Automatic,PlotStyle›{Thickness[0.01]}];

plt1 = ListPlot1 [ sol1 , PlotJoined True , GridLines Automatic , PlotStyle { Thickness [ 0.01 ] } ] ;

plt2=ContourPlot[S[t,x],{t,t0,t1},{x,x1,x2},Contours›{0},PlotPoints›100,ContourShading›False];

plt2 = ContourPlot [ S [ t , x ] , { t , t0 , t1 } , { x , x1 , x2 } , Contours { 0 } , PlotPoints 100 , ContourShading False ] ;

Show[plt1,plt2];

Show [ plt1 , plt2 ] ;

Mindkét ábrán jól látható, hogy visszaverődés a 0///<///x///<///1

0 ///</// x ///</// 1 értékekre következik be. Ennek oka, hogy az impulzus hatására a megoldás visszapattan, nem tud áthaladni az S(t,x)=0 S ? ( t , x ) = 0 felület másik oldalára. Általában, amikor a megoldások korlátlan folytathatóságára van szükség, akkor ezt a jelenséget el kell elkerülni.

5.6.2. Példa. Még több érdekesség

Az előbbihez hasonló konstrukcióval még érdekesebb rendszert kaphatunk:

x'=0,ha S(t,x(?–0))?0, x(?+0)=x(?–0)^2sign(x(?–0)), ha S(t,x(?–0))=0, x ' = 0 , ha ? S ? ( t , x ? ( ? - 0 ) ) ? 0 , x ? ( ? + 0 ) = x ? ( ? - 0 ) 2 ? sign ? ( x ? ( ? - 0 ) ) , ha ? S ? ( t , x ? ( ? - 0 ) ) = 0 , (5.6.2)

ahol S(t,x)=sin(?(t–x))

S ? ( t , x ) = sin ? ( ? ? ( t - x ) ) , ha |x|?1 | x | ? 1 . A rendszer más alakban is megadható:

x'=0, ha t??_i(x), x(?+0)=x(?–0)^2sign(x(?–0)), ha t=?_i(x) (i=1, 2, 3, ...),
x ' = 0 , ha t ? ? i ( x ) , x ? ( ? + 0 ) = x ? ( ? - 0 ) 2 ? sign ? ( x ? ( ? - 0 ) ) , ha t = ? i ( x ) ? ( i = 1 , 2 , 3 , ... ) ,

ahol ?_i(x)=x+6i

? i ( x ) = x + 6 ? i , ha |x|?3 | x | ? 3 .

xvar={x};xdot={0}; t0=0;t1=8;dt=0.01; x1=–2; x2=2;

xvar = { x } ; xdot = { 0 } ; t0 = 0 ; t1 = 8 ; dt = 0.01 ; x1 = - 2 ; x2 = 2 ;

init={{–1},{–1.1},{–0.9},{1},{1.1},{0.9}};

init = { { - 1 } , { - 1.1 } , { - 0.9 } , { 1 } , { 1.1 } , { 0.9 } } ;

S[t_,x_]:=Which[Abs[x]///<///2,Sin[(1/2)?(t–x)],True,1];

S [ t_ , x_ ] := Which [ Abs [ x ] ///</// 2 , Sin [ 1 2 ? ? ? ( t - x ) ] , True , 1 ] ;

Impulse={{S[t,x],{x^2Sign[x]},1}};

Impulse = { { S [ t , x ] , { x 2 ? Sign [ x ] } , 1 } } ;

Ábrázoljuk az S halmazt és az impulzus S-re gyakorolt hatását:

JumpPlot[S[t,x],Impulse[[1,2]],{t,t0,t1},{x,x1,x2},PlotPoints›100,ContourStyle›{Thickness[0.015]}];

JumpPlot [ S [ t , x ] , Impulse [ [ 1 , 2 ] ] , { t , t0 , t1 } , { x , x1 , x2 } , PlotPoints 100 , ContourStyle { Thickness [ 0.015 ] } ] ;

Jól láthatók a visszaverődések és az impulzusok fixpontjai is. Oldjuk meg a rendszert:

sol1=IDERKSolve[xdot,Impulse,xvar,init,{t,t0,t1,dt}];

sol1 = IDERKSolve [ xdot , Impulse , xvar , init , { t , t0 , t1 , dt } ] ;

Ábrázoljuk a megoldásokat és az S(t,x)=0

S ? ( t , x ) = 0 halmazt együttesen:

plt1=ListPlot1[sol1,PlotJoined›True,GridLines›Automatic,PlotStyle›{Thickness[0.01]}];

plt1 = ListPlot1 [ sol1 , PlotJoined True , GridLines Automatic , PlotStyle { Thickness [ 0.01 ] } ] ;

plt2=ContourPlot[S[t,x],{t,t0,t1},{x,–2,2}, Contours›{0},PlotPoints›90,ContourShading›False];

plt2 = ContourPlot [ S [ t , x ] , { t , t0 , t1 } , { x , - 2 , 2 } , Contours { 0 } , PlotPoints 90 , ContourShading False ] ;

Show[plt1,plt2];

Show [ plt1 , plt2 ] ;

Belátható, hogy a különböző kezdeti értékekből induló megoldások eltérően viselkednek:

  • Ha |x_0|///>///2

    | x 0 | ///>/// 2 , akkor a megoldásokra nem hat impulzus.

  • Ha 1///<///x_0///<///2

    1 ///</// x 0 ///</// 2 , akkor a megoldásokra véges sok impulzus hat ugyanazon a felületen.

  • Ha –2///<///x_0///<///–1

    - 2 ///</// x 0 ///</// - 1 , akkor a megoldásokra véges sok impulzus hat különböző a felületeken.

  • Ha |x_0|=1

    x 0 | = 1 vagy x_0=0 x 0 = 0 akkor a megoldásokra ható impulzus azonosság.

  • Ha 0///<///x_0///<///1

    0 ///</// x 0 ///</// 1 , akkor a megoldásokra végtelen sok impulzus hat a ?_i ? i pillanatokban, lim_(i›?)?_i=?, lim i ? ? i = ? , és lim_(i›?)x(?_i±0)=0 lim i ? x ? ( ? i ± 0 ) = 0 .

  • Ha –1///<///x_0///<///0

    - 1 ///</// x 0 ///</// 0 , akkor a megoldásokra végtelen sok impulzus hat a ?_i ? i pillanatokban, lim_(i›?)?_i=2, lim i ? ? i = 2 , és lim_(i›?)x(?_i±0)=0 lim i ? x ? ( ? i ± 0 ) = 0 .

Egy érdekes autonóm rendszer

5.6.3. Példa.

Tekintsük az

x'=–x, y'=–?y
x ' = - x , y ' = - ? ? y

autonóm 2D differenciálegyenlet-rendszert, és tételezzük fel, hogy x,y?0

x , y ? 0 . Ismert, hogy a rendszer trajektóriái a síkon y=Cx^? y = C ? x ? formulával leírható görbék, amelyeknél a mozgás az origó felé mutat. Hasson erre a rendszerre az alábbi impulzus. Ha a trajektória eléri az

MM={{x,y}:5x^2+y^2=8}
MM = { { x , y } : 5 ? x 2 + y 2 = 8 }

ellipszist, akkor sugárirányban ugorjon át az

NN={{x,y}:x^2+y^2=4}
NN = { { x , y } : x 2 + y 2 = 4 }

ellipszisre. Az olvasó további részleteket és irodalmi hivatkozásokat Samoilenko és Perestyuk [25], valamint Bainov és Simeonov [1,3] könyvében talál. Egy kis számolás után felírhatjuk az impulzusfüggvényt explicit alakban is:

x'=–x, y'=–?y, ha {x(t–0),y(t–0)}?^_MM {x(t+0),y(t+0)}={(x(t–0)/?(2–x(t–0)^2)),(y(t–0)/?(2–x(t–0)^2))}, ha {x(t–0),y(t–0)}?MM.
x ' = - x , y ' = - ? ? y , ha { x ? ( t - 0 ) , y ? ( t - 0 ) } ? ? _ ? MM { x ? ( t + 0 ) , y ? ( t + 0 ) } = { x ? ( t - 0 ) 2 - x ? ( t - 0 ) 2 , y ? ( t - 0 ) 2 - x ? ( t - 0 ) 2 } , ha { x ( t - 0 ) , y ? ( t - 0 ) } ? MM .

Definiáljuk a rendszert és ábrázoljuk az impulzusok hatását:

xyvar={x,y}; xydot:={–x,–?y}; t0=0; t1=3; dt=0.005;

xyvar = { x , y } ; xydot := { - x , - ? ? y } ; t0 = 0 ; t1 = 3 ; dt = 0.005 ;

MM=5x^2+y^2–8==0; NN=x^2+y^2==4;

MM = 5 ? x 2 + y 2 - 8 == 0 ; NN = x 2 + y 2 == 4 ;

x1=0;x2=3;y1=0;y2=4;

x1 = 0 ; x2 = 3 ; y1 = 0 ; y2 = 4 ;

Impulse={{MM[[1]],{(x/?(2–x^2)),(y/?(2–x^2))},1}};

Impulse = { { MM [ 1 ] , { x 2 - x 2 , y 2 - x 2 } , 1 } } ;

splt=ImplicitPlot[{MM,NN},{x,x1,x2},{y,y1,y2},PlotStyle›{RGBColor[1,0,0],RGBColor[0,0,1]}];

splt = ImplicitPlot [ { MM , NN } , { x , x1 , x2 } , { y , y1 , y2 } , PlotStyle { RGBColor [ 1 , 0 , 0 ] , RGBColor [ 0 , 0 , 1 ] } ] ;

AutonomousJumpPlot2D[MM[[1]],Impulse[[1,2]],{x,x1,x2}, {y,y1,y2},PlotPoints›17,AspectRatio›Automatic, ContourStyle›{Thickness[0.014]},PlotRange›All];

AutonomousJumpPlot2D [ MM [ 1 ] , Impulse [ 1 , 2 ] , { x , x1 , x2 } , { y , y1 , y2 } , PlotPoints 17 , AspectRatio Automatic , ContourStyle { Thickness [ 0.014 ] } , PlotRange All ] ;

Az MM és NN görbe az {1,?3}

{ 1 , 3 } pontban metszik egymást. Az ezen a ponton áthaladó y=?3x^? y = 3 ? x ? alakú trajektóriára nem hat impulzus.

initsep:={x0,?3x0^?}/.x0›1.5;

initsep := { x0 , 3 ? x0 ? } /. ? x0 1.5 ;

Ha egy trajektória az MM görbét valamely x///<///1

x ///</// 1 tulajdonságú pontban metszi, akkor csak egyszer hat rá impulzus, mivel itt az NN görbe az MM belsejében van. Ha a trajektória és az MM találkozási pontjára x///>///1 x ///>/// 1 , akkor innen kifelé pattan az NN görbére. Ezért az ilyen trajektóriákra végtelen sokszor hat impulzus. Az is látható, hogy ha y?0, y ? 0 , akkor a megoldás periodikus. Ha a rendszerben ?=1 ? = 1 , akkor a trajektóriák félegyenesek. Mindegyik olyan trajektória csapdába esik és periodikusan folytatódik, amelyik az MM görbét x///>///1 x ///>/// 1 koordinátájú pontban metszi. Oldjuk meg a rendszert, és ábrázoljuk a trajektóriákat az ? különböző értékeire.

  • ?=1.5

    ? = 1.5 eset

?=1.5; init={initsep,{0.5,3},{2,3}};

? = 1.5 ; init = { initsep , { 0.5 , 3 } , { 2 , 3 } } ;

sol=IDERKSolve[xydot,Impulse,xyvar,init,{t,t0,t1,dt}];

sol = IDERKSolve [ xydot , Impulse , xyvar , init , { t , t0 , t1 , dt } ] ;

Ábrázoljuk a trajektóriákat, az MM és NN halmazokat együttesen:

trplt=(ListPlot[Coordinate[#1,{2,3}],PlotJoined›True]///&///)/@sol;

trplt = ( ListPlot [ Coordinate [ #1 , { 2 , 3 } ] , PlotJoined True ] ///&/// ) /@ sol ;

Show[splt,trplt];

Show [ splt , trplt ] ;

Az ábrából sejthető, hogy az MM és NN görbék között oszcilláló trajektóriák monoton közelednek az x tengelybe eső periodikus trajektóriához. Ábrázoljuk ennek a trajektóriának az x koordinátáját:

solplt=ListPlot[Coordinate[sol[[3]],{1,2}],PlotJoined›True,GridLines›Automatic,PlotStyle›{Thickness[0.01]}];

solplt = ListPlot [ Coordinate [ sol [ 3 ] , { 1 , 2 } ] , PlotJoined True , GridLines Automatic , PlotStyle { Thickness [ 0.01 ] } ] ;

Az egyes impulzusok közt eltelt idő láthatóan növekszik, tehát a trajektóriák képét is felhasználva sejthetjük, hogy az ilyen jellegű megoldások aszimptotikusan periodikusak és a periodikus trajektóriához tartanak.

  • ?=1

    ? = 1 eset

Használjuk az előző eset programját a megoldáshoz és ábrázoláshoz az alábbi adatokkal, majd ábrázoljuk a trajektóriákat:

?=1.; init={initsep,{0.5,3},{2,2},{2,1}};

? = 1. ; init = { initsep , { 0.5 , 3 } , { 2 , 2 } , { 2 , 1 } } ;

Az ábra alapján nehéz látni, hogy a „csapdába” esett trajektóriák periodikusak. Ábrázoljuk egyikük x-koordinátáját:

A csúcsok helyének változása a lépésköz megválasztása miatti hibából adódik.

  • ?=0.3

    ? = 0.3 eset

A megoldás és ábrázolás paraméterei most:

?=0.3; init={initsep,{2,3},{2,0.3}};

? = 0.3 ; init = { initsep , { 2 , 3 } , { 2 , 0.3 } } ;

Ábrázoljuk a trajektóriákat, az MM és NN halmazokat együttesen:

Az ábrából sejthető, hogy az MM és NN görbék között oszcilláló trajektóriák monoton távolodnak az x-tengelybe eső periodikus trajektóriától, és közelednek a két görbe {1,?3}

{ 1 , 3 } metszéspontjához. Annak megválaszolását, hogy a trajektória véges idő alatt eléri-e ezt a pontot, a feladatok között az olvasóra bízzuk. Segítségül, ábrázoljuk ennek a trajektóriának az x koordinátáját:

Feladatok

5.6.1. Feladat.

A kísérletek alapján bizonyítsuk be, hogy az utolsó példában szereplő autonóm rendszernél ?///>///1

? ///>/// 1 esetén az MM és NN görbék között oszcilláló trajektóriák az x-tengelybe eső periódikus trajektóriához tartanak, ha t›? t ? .

5.6.2. Feladat.

Láttuk, hogy ?///>///1

? ///>/// 1 esetén az oszcilláló trajektóriák nem érhetik el véges idő alatt a periódikus trajektóriát. Sejtéseink alapján vizsgáljuk meg, hogy a 0///<///?///<///1 0 ///</// ? ///</// 1 esetben elérhetik-e véges idő alatt az MM és NN görbék {1,?3} { 1 , 3 } metszéspontját.