marnixGeerkens/rocketlauncher-claude-code

Bibliothèque Python complète pour l'astronomie et l'astrophysique. Cette compétence doit être utilisée lorsque vous travaillez avec des données astronomiques incluant les coordonnées célestes, les unités physiques, les fichiers FITS, les calculs cosmologiques, les systèmes de temps, les tables, les systèmes de coordonnées mondiales (WCS) et l'analyse de données astronomiques. Utilisez-la pour des tâches impliquant des transformations de coordonnées, des conversions d'unités, la manipulation de fichiers FITS, les calculs de distance cosmologique, les conversions d'échelles de temps ou le traitement de données astronomiques.

Qu'est-ce que rocketlauncher-claude-code ?

Astropy est la bibliothèque Python fondamentale pour l'astronomie, fournissant des fonctionnalités essentielles pour la recherche astronomique et l'analyse de données. Elle prend en charge les transformations de coordonnées célestes (ICRS, Galactique, FK5, AltAz, etc.), la manipulation d'unités et de quantités physiques, la lecture et l'écriture de fichiers FITS, les calculs cosmologiques (distance de luminosité, temps de regard en arrière, paramètre de Hubble), la gestion précise du temps (UTC, TAI, TT, TDB) et les opérations sur les tables. La compétence s'intègre de manière transparente avec des plateformes comme Claude Code et Cursor, offrant une documentation de référence détaillée pour chaque module principal. Son principal avantage réside dans son écosystème unifié qui garantit la cohérence dimensionnelle, la gestion automatisée des conversions et la compatibilité avec les formats de données standard de l'astronomie, permettant ainsi aux scientifiques de se concentrer sur l'analyse plutôt que sur les détails d'implémentation. Idéale pour le traitement d'images astronomiques, le catalogage, la modélisation et les calculs cosmologiques.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/marnixGeerkens/rocketlauncher-claude-code/tree/HEAD/components/skills/scientific/astropy

Installed? Explore more Recherche et analyse de données skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Astropy

Aperçu

Astropy est le package Python de base pour l'astronomie, fournissant des fonctionnalités essentielles pour la recherche astronomique et l'analyse de données. Utilisez astropy pour les transformations de coordonnées, les calculs d'unités et de quantités, les opérations sur les fichiers FITS, les calculs cosmologiques, la gestion précise du temps, la manipulation de données tabulaires et le traitement d'images astronomiques.

Quand utiliser cette compétence

Utilisez astropy lorsque les tâches impliquent :

  • La conversion entre systèmes de coordonnées célestes (ICRS, Galactique, FK5, AltAz, etc.)
  • Le travail avec des unités et quantités physiques (conversion de Jy en mJy, parsecs en km, etc.)
  • La lecture, l'écriture ou la manipulation de fichiers FITS (images ou tables)
  • Les calculs cosmologiques (distance de luminosité, temps de regard en arrière, paramètre de Hubble)
  • La gestion précise du temps avec différentes échelles (UTC, TAI, TT, TDB) et formats (JD, MJD, ISO)
  • Les opérations sur les tables (lecture de catalogues, croisement, filtrage, jointure)
  • Les transformations WCS entre coordonnées pixel et monde
  • Les constantes et calculs astronomiques

Démarrage rapide

import astropy.units as u
from astropy.coordinates import SkyCoord
from astropy.time import Time
from astropy.io import fits
from astropy.table import Table
from astropy.cosmology import Planck18

# Unités et quantités
distance = 100 * u.pc
distance_km = distance.to(u.km)

# Coordonnées
coord = SkyCoord(ra=10.5*u.degree, dec=41.2*u.degree, frame='icrs')
coord_galactic = coord.galactic

# Temps
t = Time('2023-01-15 12:30:00')
jd = t.jd  # Date julienne

# Fichiers FITS
data = fits.getdata('image.fits')
header = fits.getheader('image.fits')

# Tables
table = Table.read('catalog.fits')

# Cosmologie
d_L = Planck18.luminosity_distance(z=1.0)

Capacités principales

1. Unités et quantités (astropy.units)

Gérez des quantités physiques avec unités, effectuez des conversions d'unités et assurez la cohérence dimensionnelle dans les calculs.

Opérations clés :

  • Créez des quantités en multipliant des valeurs par des unités
  • Convertissez entre unités à l'aide de la méthode .to()
  • Effectuez des opérations arithmétiques avec gestion automatique des unités
  • Utilisez des équivalences pour des conversions spécifiques à un domaine (spectrale, doppler, parallaxe)
  • Travaillez avec des unités logarithmiques (magnitudes, décibels)

Voir : references/units.md pour la documentation complète, les systèmes d'unités, les équivalences, l'optimisation des performances et l'arithmétique des unités.

2. Systèmes de coordonnées (astropy.coordinates)

Représentez des positions célestes et transformez entre différents repères de coordonnées.

Opérations clés :

  • Créez des coordonnées avec SkyCoord dans n'importe quel repère (ICRS, Galactique, FK5, AltAz, etc.)
  • Transformez entre systèmes de coordonnées
  • Calculez les séparations angulaires et les angles de position
  • Faites correspondre des coordonnées avec des catalogues
  • Incluez la distance pour les opérations de coordonnées 3D
  • Gérez les mouvements propres et les vitesses radiales
  • Interrogez des objets nommés depuis des bases de données en ligne

Voir : references/coordinates.md pour les descriptions détaillées des repères de coordonnées, les transformations, les repères dépendants de l'observateur (AltAz), la correspondance de catalogues et les conseils de performance.

3. Calculs cosmologiques (astropy.cosmology)

Effectuez des calculs cosmologiques à l'aide de modèles cosmologiques standards.

Opérations clés :

  • Utilisez des cosmologies intégrées (Planck18, WMAP9, etc.)
  • Créez des modèles cosmologiques personnalisés
  • Calculez les distances (luminosité, comobile, diamètre angulaire)
  • Calculez les âges et les temps de regard en arrière
  • Déterminez le paramètre de Hubble à tout décalage vers le rouge
  • Calculez les paramètres de densité et les volumes
  • Effectuez des calculs inverses (trouvez z pour une distance donnée)

Voir : references/cosmology.md pour les modèles disponibles, les calculs de distance, les calculs de temps, les paramètres de densité et les effets des neutrinos.

4. Gestion des fichiers FITS (astropy.io.fits)

Lisez, écrivez et manipulez des fichiers FITS (Flexible Image Transport System).

Opérations clés :

  • Ouvrez des fichiers FITS avec des gestionnaires de contexte
  • Accédez aux HDU (Header Data Units) par index ou par nom
  • Lisez et modifiez les en-têtes (mots-clés, commentaires, historique)
  • Travaillez avec des données d'image (tableaux NumPy)
  • Gérez les données tabulaires (tables binaires et ASCII)
  • Créez de nouveaux fichiers FITS (simple ou multi-extension)
  • Utilisez le mappage mémoire pour les fichiers volumineux
  • Accédez aux fichiers FITS distants (S3, HTTP)

Voir : references/fits.md pour les opérations complètes sur les fichiers, la manipulation des en-têtes, la gestion des images et des tables, les fichiers multi-extensions et les considérations de performance.

5. Opérations sur les tables (astropy.table)

Travaillez avec des données tabulaires prenant en charge les unités, les métadonnées et divers formats de fichiers.

Opérations clés :

  • Créez des tables à partir de tableaux, listes ou dictionnaires
  • Lisez/écrivez des tables dans plusieurs formats (FITS, CSV, HDF5, VOTable)
  • Accédez et modifiez les colonnes et les lignes
  • Triez, filtrez et indexez les tables
  • Effectuez des opérations de type base de données (jointure, regroupement, agrégation)
  • Empilez et concaténez des tables
  • Travaillez avec des colonnes conscientes des unités (QTable)
  • Gérez les données manquantes avec le masquage

Voir : references/tables.md pour la création de tables, les opérations d'E/S, la manipulation de données, le tri, le filtrage, les jointures, le regroupement et les conseils de performance.

6. Gestion du temps (astropy.time)

Représentation précise du temps et conversion entre échelles et formats de temps.

Opérations clés :

  • Créez des objets Time dans divers formats (ISO, JD, MJD, Unix, etc.)
  • Convertissez entre échelles de temps (UTC, TAI, TT, TDB, etc.)
  • Effectuez des opérations arithmétiques sur le temps avec TimeDelta
  • Calculez le temps sidéral pour les observateurs
  • Calculez les corrections de temps de trajet de la lumière (barycentrique, héliocentrique)
  • Travaillez efficacement avec des tableaux de temps
  • Gérez les temps masqués (manquants)

Voir : references/time.md pour les formats de temps, les échelles de temps, les conversions, l'arithmétique, les fonctions d'observation et la gestion de la précision.

7. Système de coordonnées mondiales (astropy.wcs)

Transformez entre les coordonnées pixel dans les images et les coordonnées mondiales.

Opérations clés :

  • Lisez les WCS à partir des en-têtes FITS
  • Convertissez les coordonnées pixel en coordonnées mondiales (et vice versa)
  • Calculez les empreintes des images
  • Accédez aux paramètres WCS (pixel de référence, projection, échelle)
  • Créez des objets WCS personnalisés

Voir : references/wcs_and_other_modules.md pour les opérations et transformations WCS.

Capacités supplémentaires

Le fichier references/wcs_and_other_modules.md couvre également :

NDData et CCDData

Conteneurs pour les jeux de données n-dimensionnels avec métadonnées, incertitudes, masquage et informations WCS.

Modélisation

Cadre pour créer et ajuster des modèles mathématiques à des données astronomiques.

Visualisation

Outils d'affichage d'images astronomiques avec étirement et mise à l'échelle appropriés.

Constantes

Constantes physiques et astronomiques avec unités appropriées (vitesse de la lumière, masse solaire, constante de Planck, etc.).

Convolution

Noyaux de traitement d'image pour le lissage et le filtrage.

Statistiques

Fonctions statistiques robustes incluant le découpage sigma et le rejet des valeurs aberrantes.

Installation

# Installer astropy
uv pip install astropy

# Avec les dépendances optionnelles pour une fonctionnalité complète
uv pip install astropy[all]

Workflows courants

Conversion de coordonnées entre systèmes

from astropy.coordinates import SkyCoord
import astropy.units as u

# Créer une coordonnée
c = SkyCoord(ra='05h23m34.5s', dec='-69d45m22s', frame='icrs')

# Transformer en galactique
c_gal = c.galactic
print(f"l={c_gal.l.deg}, b={c_gal.b.deg}")

# Transformer en alt-az (nécessite temps et lieu)
from astropy.time import Time
from astropy.coordinates import EarthLocation, AltAz

observing_time = Time('2023-06-15 23:00:00')
observing_location = EarthLocation(lat=40*u.deg, lon=-120*u.deg)
aa_frame = AltAz(obstime=observing_time, location=observing_location)
c_altaz = c.transform_to(aa_frame)
print(f"Alt={c_altaz.alt.deg}, Az={c_altaz.az.deg}")

Lecture et analyse de fichiers FITS

from astropy.io import fits
import numpy as np

# Ouvrir un fichier FITS
with fits.open('observation.fits') as hdul:
    # Afficher la structure
    hdul.info()

    # Obtenir les données d'image et l'en-tête
    data = hdul[1].data
    header = hdul[1].header

    # Accéder aux valeurs de l'en-tête
    exptime = header['EXPTIME']
    filter_name = header['FILTER']

    # Analyser les données
    mean = np.mean(data)
    median = np.median(data)
    print(f"Moyenne : {mean}, Médiane : {median}")

Calculs de distance cosmologique

from astropy.cosmology import Planck18
import astropy.units as u
import numpy as np

# Calculer les distances à z=1.5
z = 1.5
d_L = Planck18.luminosity_distance(z)
d_A = Planck18.angular_diameter_distance(z)

print(f"Distance de luminosité : {d_L}")
print(f"Distance de diamètre angulaire : {d_A}")

# Âge de l'univers à ce décalage vers le rouge
age = Planck18.age(z)
print(f"Âge à z={z} : {age.to(u.Gyr)}")

# Temps de regard en arrière
t_lookback = Planck18.lookback_time(z)
print(f"Temps de regard en arrière : {t_lookback.to(u.Gyr)}")

Croisement de catalogues

from astropy.table import Table
from astropy.coordinates import SkyCoord, match_coordinates_sky
import astropy.units as u

# Lire les catalogues
cat1 = Table.read('catalog1.fits')
cat2 = Table.read('catalog2.fits')

# Créer des objets de coordonnées
coords1 = SkyCoord(ra=cat1['RA']*u.degree, dec=cat1['DEC']*u.degree)
coords2 = SkyCoord(ra=cat2['RA']*u.degree, dec=cat2['DEC']*u.degree)

# Trouver les correspondances
idx, sep, _ = coords1.match_to_catalog_sky(coords2)

# Filtrer par seuil de séparation
max_sep = 1 * u.arcsec
matches = sep < max_sep

# Créer des catalogues appariés
cat1_matched = cat1[matches]
cat2_matched = cat2[idx[matches]]
print(f"{len(cat1_matched)} correspondances trouvées")

Bonnes pratiques

  1. Utilisez toujours des unités : Attachez des unités aux quantités pour éviter les erreurs et assurer la cohérence dimensionnelle
  2. Utilisez des gestionnaires de contexte pour les fichiers FITS : Assure une fermeture correcte des fichiers
  3. Préférez les tableaux aux boucles : Traitez plusieurs coordonnées/temps sous forme de tableaux pour de meilleures performances
  4. Vérifiez les repères de coordonnées : Vérifiez le repère avant les transformations
  5. Utilisez une cosmologie appropriée : Choisissez le modèle cosmologique adapté à votre analyse
  6. Gérez les données manquantes : Utilisez des colonnes masquées pour les tables avec valeurs manquantes
  7. Spécifiez les échelles de temps : Soyez explicite sur les échelles de temps (UTC, TT, TDB) pour une chronométrie précise
  8. Utilisez QTable pour les tables conscientes des unités : Lorsque les colonnes de la table ont des unités
  9. Vérifiez la validité du WCS : Vérifiez le WCS avant d'utiliser les transformations
  10. Mettez en cache les valeurs fréquemment utilisées : Les calculs coûteux (par exemple, les distances cosmologiques) peuvent être mis en cache

Documentation et ressources

Fichiers de référence

Pour des informations détaillées sur des modules spécifiques :

  • references/units.md - Unités, quantités, conversions et équivalences
  • references/coordinates.md - Systèmes de coordonnées, transformations et correspondance de catalogues
  • references/cosmology.md - Modèles cosmologiques et calculs
  • references/fits.md - Opérations et manipulation de fichiers FITS
  • references/tables.md - Création, E/S et opérations sur les tables
  • references/time.md - Formats de temps, échelles et calculs
  • references/wcs_and_other_modules.md - WCS, NDData, modélisation, visualisation, constantes et utilitaires

Individual skills in this repo

This repo contains 13 individual skills — each has its own dedicated page.

marnixGeerkens/rocketlauncher-claude-code

When the user wants to optimize, improve, or increase conversions on any marketing page — including homepage, landing pages, pricing pages, feature pages, or blog posts. Also use when the user says "CRO," "conversion rate optimization," "this page isn't converting," "improve conversions," or "why isn't this page working." For signup/registration flows, see signup-flow-cro. For post-signup activation, see onboarding-cro. For forms outside of signup, see form-cro. For popups/modals, see popup-cro.

marnixGeerkens/rocketlauncher-claude-code

Balance visual design with ATS compatibility for creative roles. Use when the user is in design, art, writing, marketing creative, or any visual/creative field and needs a resume that looks distinctive but still parses.

marnixGeerkens/rocketlauncher-claude-code

Transform resume bullets into detailed portfolio case studies with context, action, and outcome. Use when the user mentions portfolio, case study, project write-up, or expanding a resume bullet into a longer narrative.

marnixGeerkens/rocketlauncher-claude-code

Expert in building portfolios that actually land jobs and clients - not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios, and portfolios that convert visitors into opportunities. Use when: portfolio, personal website, showcase work, developer portfolio, designer portfolio.

marnixGeerkens/rocketlauncher-claude-code

Tailwind CSS v4 principles. CSS-first configuration, container queries, modern patterns, design token architecture.

marnixGeerkens/rocketlauncher-claude-code

Frontend development patterns for React, Next.js, state management, performance optimization, and UI best practices.

marnixGeerkens/rocketlauncher-claude-code

Frontend development guidelines for React/TypeScript applications. Modern patterns including Suspense, lazy loading, useSuspenseQuery, file organization with features directory, MUI v7 styling, TanStack Router, performance optimization, and TypeScript best practices. Use when creating components, pages, features, fetching data, styling, routing, or working with frontend code.

marnixGeerkens/rocketlauncher-claude-code

Next.js App Router principles. Server Components, data fetching, routing patterns.

marnixGeerkens/rocketlauncher-claude-code

Expert integration of Supabase Auth with Next.js App Router Use when: supabase auth next, authentication next.js, login supabase, auth middleware, protected route.

marnixGeerkens/rocketlauncher-claude-code

Comprehensive frontend development skill for building modern, performant web applications using ReactJS, NextJS, TypeScript, Tailwind CSS. Includes component scaffolding, performance optimization, bundle analysis, and UI best practices. Use when developing frontend features, optimizing performance, implementing UI/UX designs, managing state, or reviewing frontend code.

marnixGeerkens/rocketlauncher-claude-code

Create API handoff documentation for frontend developers. Use when backend work is complete and needs to be documented for frontend integration, or user says 'create handoff', 'document API', 'frontend handoff', or 'API documentation'.

marnixGeerkens/rocketlauncher-claude-code

Document frontend data needs for backend developers. Use when frontend needs to communicate API requirements to backend, or user says 'backend requirements', 'what data do I need', 'API requirements', or is describing data needs for a UI.

marnixGeerkens/rocketlauncher-claude-code

Comprehensive patterns for Next.js 14+ App Router architecture, Server Components, and modern full-stack React development.

Skills associés