Page 1 sur 4

Calcul de navigation

Publié : 08 nov. 2017 15:25
par jcgoudon
pour RG expresso : j'observe des problèmes de calcul entre vrtools et RG , il y a un léger écart sur le point d'arrivée. je me suis donc livré à quelques essais. je fais un cap 180° dans une case 23.6 kt/40° ce qui me fait un TWA de 140 , je vais chercher dans la polaire 24 kt et je trouve une vitesse de 32.67 kt, ce qui correspond en N/S à une variation de latitude de 32,67 minutes (32' 40" environ).
je lis sur la carte RG expresso les deux latitudes atteintes en 1 heure à cette vitesse et je trouve 38°29'56" pour le temps zero et 37°58'44" pour le temps = 1heure ce qui fait un écart de 31'12"" ce qui est très différent des 32'40" attendu

je ne comprends pas cette différence, merci de votre retour

Re: Calcul de navigation

Publié : 08 nov. 2017 16:50
par zedstar
La planète RG est environ 5% plus grosse que la terre.

Le mille nautique RG vaut 1.941 km au lieu des 1.852 km habituels.

Dans les logiciels divers et variés cela correspond à une baisse de vitesse, facteur 0.954 et des pouillièmes.

On s'y fait :roll:

Définition du mille nautique : 1°de latitude = 60 milles = 1/360 le périmètre de la terre
On peut préférer le système métrique : 1 grade (degré centésimal) = 1/400 du périmètre de la terre = 100 km

Re: Calcul de navigation

Publié : 02 sept. 2019 03:01
par limelight
Oui, c'est correct, mais le mille marin peut aussi avoir sa définition originale qui est qu'il fait une minute d'arc sur un grand cercle. Si on utilise cette définition, le mille marin reste le même quelque soit le diamètre de la planète.

Pour les équations loxodromiques basées sur les mesures d'angle (mon sextant est calibré en degrés et minutes décimales, donc je peux lire théorétiquement 0.1', pratiquement je ne cherche pas plus de 1 ou 2 minutes), les voici:

Si L est la distance entre 2 points A et B, et alpha est le cap de A vers B (0 = nord, 90 = est, 180 = sud, 270 = ouest)

Changement de latitude = L * cos(alpha) donc LatB = LatA + L * cos(alpha)/60 (L en milles nautiques, on divise par 60 pour avoir des degrés décimaux)

Changement de longitude = 180/π * tan(alpha) * [ acosh(1/cos(LatB)) - acosh (1/cos(LatA)) ] = LonB - LonA

acosh est la fonction inverse du cosinus hyperbolique, sa valeur est toujours en radian d'où le besoin de convertir de radians en degrés.

quand alpha est soit 90 soit 270, la tangente est infinie et le terme entre "[" et "]" est zero. Dans ce cas il faut traiter le cas comme ci:

LonB - LonA = +( L * 1/cos(LatA) )/60 si alpha est 90
LonB - LonA = - ( L * 1/cos(LatA) )/60 si alpha est 270 (les divisions par 60 sont pour obtenir des degrés décimaux quand L est en milles nautiques)

Il est peu probable qu'il soit nécessaire de vérifier, car même les ultimes ne sont pas si rapides, mais la longueur L ne peut pas excéder une certaine longueur car la longueur maximale (mesurée en minutes d'arc) d'un loxodome partant du pole sud et allant jusqu'au pole nord avec un angle alpha est: 180 * 60 / cos(alpha)

Si la fonction acosh n'existe pas (elle existe dans ma version de Excel), on peut se servir des logarithemes naturels qui eux surement doivent exister.

acosh (x) = Ln [ x + sqrt(x^2 - 1) ]

Re: Calcul de navigation

Publié : 02 sept. 2019 13:42
par limelight
J'ai mis un petit calculateur Excel qui fait les calculs de loxodromes. Latitudes et longitudes sont en degrés décimaux, longueurs en milles marins (minutes d'arc).

Il calcule la latitude de la destination d'abord, puis la longitude par les formules précédentes.

https://madinstro.net/rg/loxodrome.xlsx

Re: Calcul de navigation

Publié : 02 sept. 2019 17:56
par zedstar
:shock: Le cosinus hyperbolique, pourquoi pas la trigonométrie sphérique, c'est pas à la portée de tous :mrgreen:

Image

La question initiale était : "mon bateau va moins vite que prévu par des calculs simples de loxodromie sur des itérations successives de 10 minutes comme est supposé fonctionner le jeu"

Avec tigrou (jcgoudonon) on a identifié et signalé le bug, pour conclure qu'on prend je jeu tel qu'il est, à nous d'adapter nos formules. Ensuite avec la programmation et double programmation tellement précises, les formules je ne les utilise plus.

Plus cocasse, sur VR je ne comprenais pas pourquoi les bateaux dérivaient quand on mettait cap au 90 ou 270 et franchissaient les limites de cases. là aussi j'ai trouvé le bug (les itérations étaient calculées avec des formules orthodromiques) et naïvement j'ai signalé le bug, pacotool et zezo ont rapidement corrigé leurs formules loxo, logiques mais inexactes, rendant mes bidouilles excel inutiles, puis VR a enfin compris et corrigé le bug. Et j'ai plus jamais gagné une casquette pour ma grosse tête :lol:

Re: Calcul de navigation

Publié : 02 sept. 2019 23:06
par limelight
Tu peux accepter le jeu tel qu'il est... mais c'est quand même un bug car les positions sur le globe (de n'importe quelle taille) sont des mesures d'angles. Donc un sextant terrestre marche tout aussi bien sur la lune que sur terre, le mille sur la lune est certainement beaucoup plus court que sur la terre parceque le diamètre est plus petit... mais il fait toujours 1 minute d'arc! Donc le bug est que dans RG, le mille marin ne fait pas une minute d'arc comme il le devrait.

Quant au cosinus hyperbolique inverse, c'est une conséquence de la géométrie sphérique :mrgreen:

Re: Calcul de navigation

Publié : 02 sept. 2019 23:45
par mAKi
Image

:lol:

Re: Calcul de navigation

Publié : 03 sept. 2019 00:23
par limelight
mAKi a écrit :Image

:lol:
:lol: C'est quand même plus simple que ta feuille d'impôts, non? :mrgreen:

Re: Calcul de navigation

Publié : 15 sept. 2019 04:59
par limelight
zedstar a écrit :La planète RG est environ 5% plus grosse que la terre.

Le mille nautique RG vaut 1.941 km au lieu des 1.852 km habituels.

Dans les logiciels divers et variés cela correspond à une baisse de vitesse, facteur 0.954 et des pouillièmes.

On s'y fait :roll:

Définition du mille nautique : 1°de latitude = 60 milles = 1/360 le périmètre de la terre
On peut préférer le système métrique : 1 grade (degré centésimal) = 1/400 du périmètre de la terre = 100 km
Je pourrais presque accepter ce raisonnement sauf qu'il ne s'accorde pas du tout avec les distances publiées dans le classement. Elles sont en milles nautiques et en accord avec mon calculateur d'orthodrome, donc pour le classement, la planète RG a le même diamètre que la terre... donc c'est bien un bug! :)

Re: Calcul de navigation

Publié : 10 oct. 2019 20:38
par zedstar
C'est bien un bug sur le calcul des positions successives.

Simplissime en différences finies :

Code : Tout sélectionner

%formules ortho itératives Matlab
%unités degrés, noeuds, heures

lat2=lat1+vitesse.*cosd(cap)*dt/60;
lon2=lon1+vitesse.*sind(cap)./cosd(lat1)*dt/60;
cosd = cosinus en degrés ça existe aussi dans Visual Basic
./ ou .* calcul matriciel, pour calculer plusieurs routes simultanément.

:geek: