Calculateur de date julienne modifiée
Passez d'une date julienne à la date julienne modifiée, plus courte, qu'emploient les équipes satellites et les archives astronomiques : le JD 2451545 devient le MJD 51544,5 une fois 2400000,5 jours retirés. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Date julienne
- 2 451 545
- Date julienne modifiée
- 51 544,5
- Mjd
- 51 544,5
- Décalage
- 2 400 000,5
La date julienne modifiée est le décompte de jours standard en opérations satellitaires, logiciels de vol spatial et de nombreux archives astronomiques, car elle garde des numéros de jour compacts et place le jour civil à minuit UT plutôt qu'à midi. Observateurs, planificateurs de mission et pipelines de données stockent souvent les temps en dates juliennes complètes et ont besoin d'une conversion déterministe vers le MJD pour catalogues, fenêtres de télémétrie et comparaisons inter-missions. Ce calculateur de date julienne modifiée accepte une date julienne finie, soustrait le décalage officiel de 2400000.5 jours et renvoie le MJD avec la formule et le décalage pour les pistes d'audit.
Ce que signifie la date julienne modifiée et pourquoi le décalage 2400000.5 existe
Une date julienne compte les jours et fractions de jour de façon continue depuis une époque astronomique fixe, avec la frontière du jour à midi Temps universel, de sorte qu'une seule nuit d'observation croise rarement un numéro de jour. Ce choix convient à l'astronomie nocturne mais gêne les agendas civils et les ordinateurs modernes qui préfèrent le début du jour à minuit et des entiers plus petits. La date julienne modifiée a été définie de sorte que le MJD égale la date julienne moins exactement 2400000.5 jours.
Le terme de demi-journée décale la frontière du jour de midi UT à minuit UT, et la partie entière 2400000 supprime les grands chiffres de tête des JD d'époque actuelle près de 2.4 millions. Par définition, MJD 0.0 correspond à JD 2400000.5, soit 1858-11-17 à 00:00 UT. Des repères connus incluent J2000.0 à JD 2451545.0, soit MJD 51544.5, et tout JD ultérieur se mappe par le même décalage linéaire.
Comme le mappage est une pure soustraction de constante, il n'y a ni logique de bissextile calendaire, ni table de fuseaux, ni horloge système : deux implémentations avec la même entrée JD doivent renvoyer le même MJD à la précision machine. Cette capacité met en œuvre cette définition et rien d'autre — elle ne convertit pas de chaînes de calendrier civil, n'applique pas de secondes intercalaires et n'invente pas d'échelle de temps au-delà du décompte continu de jours que vous fournissez comme JD.
Cas d’usage
Opérations de mission et alignement de télémétrie
Convertissez des colonnes héritées de date julienne en date julienne modifiée pour fenêtres de passage, archives de télémétrie et plannings de station sol normalisés sur le MJD.
Pipelines de catalogue et horodatages FITS
Normalisez catalogues de recherche et temps d'en-tête qui mélangent JD et MJD en un seul décompte continu de jours avec un décalage constant déterministe.
Enseignement et démonstrations SEO
Montrez aux étudiants et visiteurs MJD = JD − 2400000.5 avec des exemples en direct tels que J2000 (JD 2451545.0 → MJD 51544.5) dans un outil gratuit du navigateur.
Questions fréquentes
Quel est le décalage du MJD par rapport au JD ?
Par définition MJD = JD − 2400000.5. La demi-journée décale midi UT vers minuit UT ; la partie entière raccourcit les numéros de jour modernes.
Cette capacité convertit-elle une date de calendrier en MJD ?
Non. L'entrée doit déjà être un nombre de date julienne. Convertissez d'abord une date civile en JD avec un outil de numéro de jour julien, puis appelez cette capacité.
Pourquoi la date julienne modifiée commence-t-elle à minuit ?
Les dates juliennes changent à midi en temps universel, pour qu'une nuit d'observation garde un seul numéro de jour. La demi-journée du décalage ramène la bascule à minuit, plus pratique pour le calendrier civil.
Quel est le MJD de la date julienne 2451545 ?
C'est 51544,5. Retirez 2400000,5 de la date julienne pour obtenir la date julienne modifiée ; toute fraction de jour de votre valeur est conservée telle quelle.
Qui utilise la date julienne modifiée ?
Les opérateurs de satellites, les logiciels de vol spatial et de nombreuses archives astronomiques. Les numéros de jour plus courts se lisent et se stockent mieux, et facilitent la comparaison de catalogues et de missions.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/astro/modified-julian-date \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"julian_date":2451545}'const res = await fetch("https://api.kit.forhosting.com/astro/modified-julian-date", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"julian_date": 2451545
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/astro/modified-julian-date",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"julian_date": 2451545
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/astro/modified-julian-date", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"julian_date":2451545}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"julian_date":2451545}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/astro/modified-julian-date", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"julian_date": 2451545
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "astro.modified_julian_date",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Une entrée non numérique ou non finie échoue avec invalid_input et n'est pas facturée.
Contrat d'entrée, forme de la réponse et comportement d'erreur
Les valeurs sont arrondies à douze décimales pour des goldens stables entre runtimes, tout en restant bien plus précises que les horodatages observationnels typiques. Les JD négatifs et les décomptes historiques avant l'époque sont acceptés s'ils sont finis — la définition n'exige pas que le JD dépasse le zéro du MJD —, ainsi les essais de laboratoire et les reconstructions historiques peuvent utiliser le même point d'accès. L'échec de validation ne consomme pas le solde. Envoyez un corps JSON avec un champ obligatoire, julian_date (alias jd, julian_day, jd_value) : un nombre fini ou une chaîne numérique représentant la date julienne, avec une partie fractionnaire optionnelle pour l'heure du jour après midi UT sur l'échelle JD. Les valeurs manquantes, vides, non numériques, NaN et Infinity échouent avec invalid_input en nommant le champ pour que les clients corrigent la charge utile sans un 500 générique. En cas de succès le corps inclut julian_date (écho), modified_julian_date et mjd (valeurs identiques par commodité), offset égal à 2400000.5 et formula avec la chaîne MJD = JD - 2400000.5. Exemple : julian_date 2451545.0 donne modified_julian_date 51544.5 ; julian_date 2400000.5 donne modified_julian_date 0. Associez ce convertisseur à un calculateur de numéro de jour julien séparé lorsque vous partez d'une date de calendrier, puis fournissez ici le JD obtenu si votre archive stocke le MJD ; ce point d'accès n'effectue que l'étape de décalage et n'appelle jamais le réseau ni les API Date du système.
Où une API de date julienne modifiée prouve vraiment son utilité
Les centres d'opérations de mission et les stations sol CubeSat enregistrent souvent fenêtres de passage et télémétrie en MJD tandis que des tables d'éphémérides héritées citent encore le JD ; un seul appel de conversion prépayé aligne ces colonnes sans déployer un fichier de constantes dans chaque microservice. Les carnets de recherche qui réduisent des en-têtes FITS ou des horodatages de catalogue peuvent appeler l'API depuis le CI afin que les tests unitaires figent des valeurs MJD exactes pour J2000, l'époque MJD et des époques de mission sans calculs manuels flottants fragiles. Comme l'implémentation est parse pur de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant. Gardez les requêtes compactes, figez le modified_julian_date arrondi dans les tests, et vous obtenez des décomptes de jours reproductibles pour tableaux d'opérations, pipelines d'archive et devoirs de cours sans dresser votre propre bibliothèque complète d'échelles de temps.
Questions techniques
Comment convertir une date julienne en date julienne modifiée ?
Envoyez un julian_date fini (ou jd). L'API renvoie modified_julian_date = julian_date − 2400000.5, plus le décalage et la chaîne de formule pour l'affichage.
Que se passe-t-il si julian_date n'est pas numérique ?
La tâche échoue avec invalid_input. Les chaînes manquantes, vides, NaN, Infinity et non numériques sont rejetées et non facturées.
Combien coûte le calculateur de date julienne modifiée ?
L'outil du navigateur est gratuit. Les requêtes API utilisent le solde KIT prépayé à $0.002 par appel réussi ; l'entrée invalide n'est pas facturée.