from django.core.management.base import BaseCommand, CommandError from datetime import date import datetime from django.utils import timezone import astropy from astropy.io import ascii import pandas as pd import pymysql from sqlalchemy import create_engine from heasarc.models import HeasarcBase from artsurvey.models import ArtSurveySource, ArtSurvey from srglib.utils import load_vizier_nvss from srglib.utils import load_vizier_first from srglib.utils import load_vizier_sumss from astrobasis.models import GAIADR3 from srglib.utils import find_counterparts from srglib.utils import load_vizier_allwise from astropy import units as u from astropy.coordinates import SkyCoord from astropy.coordinates import ICRS, Galactic, FK5 from astropy.coordinates import BarycentricTrueEcliptic from astropy.coordinates import HeliocentricTrueEcliptic from astropy.coordinates import GeocentricTrueEcliptic def do_all(survey_version): minrad=40 maxdist=120 try: survey = ArtSurvey.objects.get(version=survey_version) print("use ArtSurvey {}".format(survey)) except ArtSurvey.DoesNotExist: print("ArtSurvey {} not found".format(survey_version)) return srcs = survey.artsurveysource_set.all() print("Selected {} sources".format(srcs.count())) for src in srcs: crd = SkyCoord(src.ra, src.dec, frame="fk5", unit="deg") src.ecl_l=crd.transform_to(BarycentricTrueEcliptic).lon.value src.ecl_b=crd.transform_to(BarycentricTrueEcliptic).lat.value src.save() return for src in srcs: if(src.skymapsource_set.all().count()): orig=src.skymapsource_set.all()[0] """ src.nfalse=orig.nfalse src.save() print("{} <-- {}".format(src.nfalse,orig.nfalse)) """ if not orig.ext_id == '': src.ext_id=orig.ext_id src.save() print("{} {} <-- {}".format(src,src.ext_id,orig.ext_id)) class Command(BaseCommand): help = 'Initiates data dase' # def add_arguments(self, parser): # parser.add_argument('poll_id', nargs='+', type=int) def handle(self, *args, **options): do_all(12345.0) self.stdout.write(self.style.SUCCESS('Done'))