from django.core.management.base import BaseCommand, CommandError from datetime import date from heasarc.models import INPUT_DATA_DIR 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.tdat import tDat from heasarc.models import HeasarcTable, TableColumn, HeasarcXMMSL2, HeasarcObjectClass from heasarc.models import Heasarc4FGL from heasarc.models import HeasarcIntegral2020, HeasarcSwiftBAT105m, HeasarcMAXI7YR, HeasarcRASS2RXS, Heasarc4FGL from heasarc.models import NSIDE_SOURCES, ORDER from monthplan.models import NSIDE_PLATES from astropy_healpix import HEALPix from astropy.coordinates import SkyCoord # High-level coordinates from astropy.coordinates import ICRS, Galactic, FK4, FK5 # Low-level frames from astropy.coordinates import Angle, Latitude, Longitude # Angles import astropy.units as u import pandas as pd import numpy as np 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): srcs = Heasarc4FGL.objects.all() error=[] for s in srcs: error.append(s.error_radius) if(s.error_radius> 4000): print(s,s.error_radius) s = pd.DataFrame(error) print("total {} median {:.1f} mean {:.1f} min {:.1f} max {:.1f}".format(srcs.count(),np.median(error),np.mean(error),np.min(error),np.max(error))) #srcs = HeasarcIntegral2020.objects.all().filter(name__contains="SLX") #for s in srcs: # print(s.name,s.ra,s.dec,s.error_radius) self.stdout.write(self.style.SUCCESS('Done'))