Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

8
voti

Il cane, la lepre e ... le differenze finite

Indice

Enunciato del problema

Per esemplificare l’applicazione del metodo delle differenze finite (vedi articolo) ho rispolverato il vecchio problema del cane che insegue una lepre.

Si suppone che un cane punti una lepre che dista inizialmente D, e che poi la insegua, sempre puntandola, mentre questa fugge ad una velocità costante ed in linea retta perpendicolare al tratto iniziale D.

Data le velocità vl della lepre e vc del cane, determinare in quanto tempo quest’ultimo raggiungerà la lepre.

Questo problema e’ l’edizione “pacifista” di quello di un missile ad inseguimento automatico, che punta un bersaglio mobile in linea retta, e con velocità uniforme. (Per i più sensibili amanti della natura e contrari della caccia, e’ pero' possibile sostituire un leone al cane e una gazzella alla lepre).

Soluzione "classica"

Come esempio di soluzione tradizionale, riporto lo svolgimento fatto molti anni fa dal mio compianto suocero, l'Ing Carlo Gliubich, grande appassionato di matematica.

Coma appare dalla figura. il cane inizialmente è in O(0,0), la lepre un A(D,0).

Al tempo t, la posizione della lepre è B, mentre quella del cane è P(x,y).

Il tratto AB può essere espresso da:


AB = vl \cdot t = y + (D-x) \cdot \tan(  \alpha )

ma : \qquad \tan ( \alpha ) = \frac {dy}{dx} = y' \qquad , quindi

AB = vl \cdot t = y + (D-x) \cdot y'


Il cane in P, nel tempo elementare dt compie il percorso:

ds = vc \cdot dt = dx \cdot \sqrt {1 + y'^2}


mentre nello stesso tempo la lepre percorre

vl \cdot dt = dy + [(D-x) \cdot y'' - y'] \cdot dx

ma poichè :  y' \cdot dx = dy , segue:

vl \cdot dt = (D-x) \cdot y'' \cdot dx


Possiamo allora eliminare il tempo, ottendo l'aquazione differenziale del percorso del cane:

\frac {vl}{vc} = k =\frac {(D-x) \cdot y'' }{\sqrt{1+ y'^2}}

y'' = \frac{k}{(D-x)} \cdot \sqrt{1 + y'^2}


Sostituendo : \quad y' = z \quad , e quindi : \quad y'' = \frac{dy'}{dx} = \frac{dz}{dx} \quad , segue:

\frac{dz}{\sqrt{1+z^2}} = k \cdot \frac{dx}{D-x}

che è facilmente integrabile poichè:

\int \frac{dz}{\sqrt{1+z^2}} = \ln(z + \sqrt {1+z^2} ) , mentre:

\int  k \cdot \frac{dx}{D-x} = -k \cdot \int \frac{-dx}{D-x} = -k \cdot \ln({D-x}) = \ln (D-x)^{-k}


Si ottiene quindi:

\ln(z + \sqrt {1+z^2} =  \ln (D-x)^{-k} +  \ln(C) , dove ln(C) è la costante di integrazione.


In definitiva:

z + \sqrt {1+z^2} =  C \cdot (D-x)^{-k}


Per stabilire il valore di C si considerano le condizioni iniziali x = 0 e  \frac{dy}{dx} = tan( \alpha ) = z = 0

ottenendo : \quad  1 = C \cdot D^{-k}  \quad , da cui : \quad  C = \frac{1}{D^{-k}}


Allora : \quad  z + \sqrt {1+z^2} =  ( \frac {D-x}{D})^{-k}  da cui si può ricavare z:


z =  \frac{1}{2} \cdot \left [ ( \frac {D-x}{D})^{-k} - ( \frac {D-x}{D})^{k} \right ]


Poichè : \quad  z = \frac {dy}{dx} \quad , si ha:


dy = \frac{1}{2} \cdot \left [ ( \frac {D-x}{D})^{-k} \cdot dx - ( \frac {D-x}{D})^{k} \cdot dx\right ]


da cui:


y =  - \frac{D}{2} \cdot \int ( \frac {D-x}{D})^{-k} \cdot \frac{-dx}{D} +  \frac{D}{2} \cdot \int ( \frac {D-x}{D})^{k} \cdot \frac{-dx}{D}


Integrando, risulta:

y = \frac {D}{2} \cdot \left [ \frac{1}{1+k} \cdot ( \frac {D-x}{D})^{1+k} - \frac{1}{1-k} \cdot ( \frac {D-x}{D})^{1-k} \right ] + C_1


Le condozioni iniziali x = 0 e y = 0, permettono di ricavare la costante di integrazione C1

C_1 = \frac {D}{2} \left [ - \frac {1}{1+k} + \frac {1}{1-k} \right ]

con cui si può finalmente scrivere l'equazione della traettoria percorsa dal cane all'inseguimento della lepre:

y = \frac {D}{2} \cdot \left [ \frac{( \frac {D-x}{D} )^{1+k} - 1} {1+k} - \frac{( \frac {D-x}{D} ) ^{1-k} - 1} {1-k} \right ]


L'ordinata del punto Q di incontro delle 2 traettorie (dela cane e della lepre) è ricavabile ponendo x = D, cioè

AQ = D \cdot \frac {k}{1 - k^2}

ed il tempo cercato, impiegato dal cane per raggiungere la lepre, è quindi :  T = \frac{AQ}{vl}.

Soluzione con calcolatore dell'equazione differenziale

Una volta ricavata l'equazione differenziale della traettoria del cane, si sarebbe potuto procedere alla sua integrazione mediante procedimenti approssimati, impiegando un calcolatore ed applicando ad es. il metodo di Runge-Kutta.

In ambienti matematici quale il MathCad, è infatti possibile ricavare l'andamento della traettoria direttamente in grafico, ricavandone così anche i parametri che servono al calcolo del tempo impiegato dal cane a raggiungere la lepre.

Naturalmente la soluzione diventa "numerica" (non più generale). E' quindi necessario fornire dati concreti, che definiscano completamente il problema (ovviamente ciascun dato può poi essere variato, osservando i corrispondenti risultati).

Per comodità, riporto qui l'equazione precedentemente trovata relativa alla traettoria :


y'' = \frac{k}{(D-x)} \cdot \sqrt{1 + y'^2}


e questa è la sua soluzione con MathCad dove w = \binom {y}{y'} = \binom {0}{0} è la matrice degli stati iniziali e F(x,w) = \binom {y'}{y''} quella delle equazioni:

Con i dati inseriti (D,vl e vc, rispettivamente in m e m/s), in base alla soluzione "esatta" ricavata precedentemente dovrebbe risultare un percorso della lepre di 36m ed un corrispondente tempo d'inseguimento di 18s: l'errore di approssimazione del metodo e' quindi evidente (anche se sufficiente nella maggioranza delle applicazioni pratiche).

Soluzione con le differenze finite

L'approccio al problema con il metodo delle differenze finite è invece del tutto diverso: si può partire dall'analisi diretta delle relazioni esistenti e procedere per incrementi piccolissimi, basandosi sulla precisione e sulla velocità dei calcoli proprie del calcolatore elettronico.



Come si può vedere dalla figura che riporta il programma in MathCad, dopo aver introdotto i dati e le inizializzazioni delle variabili, si scrive un sistema di equazioni (in forma matriciale per consentire la soluzione simultanea) che definiscono l'andamento delle singole variabili nel tempo.

In particolare: αt ,(che stabilisce l'angolo di puntamento del cane verso la lepre), le coordinate del cane xct e yct, la posizione della lepre ylt e anche la velocita' di questa vlt(che resta sì costante durante la fuga, ma si azzera quando viene raggiunta dal cane!).

Si deve a questo proposito fare una considerazione: quando si deve considerare la lepre raggiunta? Per non cadere nel paradosso di Zenone, possiamo ritenere "esatta" una differenza fra la xc e la xl inferiore a 10 − 12! (nella realtà basta molto prima, ma dobbiamo paragonare il risultato a quello del calcolo teorico).


Ed ecco il risultato del calcolo (20.000 iterazioni, una ogni ms !):

Credo che il risultato possa sorprendere per l'approssimazione raggiunta, oltre che per la semplicità dell'impostazione (soprattutto se paragonata alla soluzione convenzionale).

4

Commenti e note

Inserisci un commento

di ,

Ringrazio dei commenti. Ho cercato in vari modi di segnalare queste opportunità, rese possibili dalle potenzialità dei computer, constatando però un generale disinteresse....

Rispondi

di ,

Questa "...analisi diretta delle relazioni esistenti e procedere per incrementi piccolissimi..." è quello che permette ai simulatori di andare oltre. Cioè di operare anche nei casi di complessità tale da rendere impossibile una descrizione analitica.

Rispondi

di ,

"...analisi diretta delle relazioni esistenti e procedere per incrementi piccolissimi..." Questa è una semplice ma perfetta definizione dei principi di base di tutte le simulazioni numeriche. Grazie per questo bell'articolo. Mi spiace per il commento un po' fuori tempo (otto anni) ma ho scoperto EY solo adesso.

Rispondi

di ,

Interessante questo articolo!

Rispondi

Inserisci un commento

Per inserire commenti è necessario iscriversi ad ElectroYou. Se sei già iscritto, effettua il login.