Duathlon (ex Biathlon)

Il forum di Base5, dove è possibile postare problemi, quiz, indovinelli, rompicapo, enigmi e quant'altro riguardi la matematica ricreativa e oltre.

Moderatori: Gianfranco, Bruno

Pasquale
Livello 12
Livello 12
Messaggi: 2854
Iscritto il: mer mag 25, 2005 2:14 am

Messaggio da Pasquale »

Bravo Quelo, non avrei mai potuto fare tanto con i miei scarsi ricordi, per cui mi sono regolato così:

Immagine

Nel primo disegno sono indicate la direzione di nuoto OC, quella della corrente marina OD e quella risultante OB, intese anche come velocità vettoriali.
La direzione di nuoto iniziale viene fissata dall'angolo Alfa (a), mentre Beta (b) indica quella modificata dall'azione della corrente.
In relazione ad Alfa vado a calcolare la corrispondente risultante di nuoto $v_2$ ed il relativo angolo Beta.
Nel secondo disegno, noto Beta, calcolo il valore di BC, DC e del tempo t di percorrenza di AC+CD, considerate le velocità $v_1$ e $v_2$ per i due tratti.

Poiché non mi è noto il valore di Alfa da cui dipendono tutti i risultati, annoto i tempi di percorrenza per ogni Alfa valido compreso fra arcosen(1/3) e 90° e scelgo come risultato finale quello minore, unitamente a tutti i parametri che ne hanno determinato il valore (il suddetto valore minimo di Alfa, come già visto in precedenza, è quello corrispondente ad un angolo che determina una nuotata parallela alla riva con valori positivi accettabili dei vari parametri di calcolo).

Il procedimento è tradotto nel seguente programma in Decimal Basic:

OPTION ANGLE DEGREES
LET st=90/1000000
LET i=ASIN(1/3)
LET t=1000
FOR a=i TO 90-st STEP st
LET y=3*SIN(a)-1
LET z=3*COS(a)
LET b=ATN(y/z)
LET v=y/SIN(b)
LET bc=1/TAN(b)
LET cd=1/SIN(b)
LET ac=4-1/TAN(b)
LET tp=ac/6+cd/v
IF tp<t THEN
LET t=tp
LET x=bc
LET v2=v
LET alfa=a
LET beta=b
END IF
NEXT A

PRINT "tempo=";t
PRINT "x=";x
PRINT "V2=";v2
PRINT "alfa=";alfa
PRINT "beta=";beta

END

Stampa del risultato:

tempo= 1.12238558054989
x= .56694786871405
V2= 2.08926440455663
alfa= 69.9113606344907
beta= 60.4490236509175

Una volta noto Alfa, si può affinare il risultato e aumentare la velocità di calcolo, modificando la seconda e quarta riga del programma. Esempio:

LET st=90/1000000000
FOR a=69.911 TO 69.912 STEP st

risultato:

tempo= 1.12238558054974
x= .566946960411722
V2= 2.08926416520906
alfa= 69.91138844
beta= 60.4490630339455
_________________

$\text { }$ciao Immagine ciao
E' la somma che fa il totale (Totò)

Rispondi