Ejemplo n.º 1
0
def first156274(runOffCorrection=True):
    fi = os.listdir(data_directory+'/2012-05-17')
    fi = filter(lambda x: 'RED.fits' in x , fi)
    fi = ['2012-05-17/'+''.join(f.split('_RED')) for f in fi]
    fg = {'SEP':10.1, 'PA':260.0, 'M0':0.0, }
    doNotFit=[]
    a = astromNew.fitListOfFiles(fi, data_directory,
                             firstGuess=fg, verbose=2,
                             doNotFit=doNotFit,
                             maxResiduals=3)
    return a
Ejemplo n.º 2
0
def fitHD10360(ATPUP_scale=1.0):
    """
    simple fit. ATPUP_scale=0.0 sets the pupil correction to 0
    """
    fgNACO['ATPUP scale'] = ATPUP_scale
    a = astromNew.fitListOfFiles(files_hd10360_NACO,
                                 directory=data_directory,
                                 firstGuess=fgNACO, plot=True,
                                 doNotFit=['AT3', 'AT4', 'ATPUP scale'])
    a['Delta DEC'] = a['BEST']['SEP']*np.cos(a['BEST']['PA']*np.pi/180)
    a['Delta RA cos(DEC)'] = a['BEST']['SEP']*np.sin(a['BEST']['PA']*np.pi/180)
    a['Delta RA'] = a['Delta RA cos(DEC)']/np.cos(a['DEC']['HD10360']*np.pi/180)
    return a
Ejemplo n.º 3
0
def test_rotation():
    """
    rotation modulation
    """
    
    files = ['2012-03-18/PACMAN_OBJ_ASTRO_079_0001.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0004.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0005.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0006.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0007.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0008.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0009.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0010.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0011.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0012.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0013.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0014.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0015.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0016.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0020.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0021.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0022.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0024.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0026.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0027.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0028.fits',
             '2012-03-18/PACMAN_OBJ_ASTRO_079_0029.fits',
             ]
    
    # parameters for the fit:
    fg = {'T:HD100286J SEP':10.0,
          'T:HD100286J PA':210.0,
          'T:HD100286J M0 MJD 56005.00 56005.14':0.0,
          'T:HD100286J M0 MJD 56005.14 56005.99':0.0, 
          'T:HD129926 SEP':8.0,
          'T:HD129926 PA':124.0,
          'T:HD129926 M0 MJD 56005.00 56005.32':0.0,
          'T:HD129926 M0 MJD 56005.32 56005.99':0.0,
         }
    doNotFit=[]
        
    a = astromNew.fitListOfFiles(files,reduceData=False,
                                 directory=data_directory,
                                 firstGuess=fg, plot=True, verbose=2,
                                 doNotFit=doNotFit, allX=False,
                                 #maxResiduals=10,
                                 #exportAscii='March12_Phase2.txt'
                                 )

    return
Ejemplo n.º 4
0
def test_rotation2():
    """
    rotation modulation, second night
    """
    files = ['2012-03-19/PACMAN_OBJ_ASTRO_080_0009.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0012.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0013.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0014.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0015.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0016.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0017.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0018.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0019.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0020.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0021.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0022.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0023.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0024.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0025.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0026.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0027.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0028.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0029.fits',
             '2012-03-19/PACMAN_OBJ_ASTRO_080_0030.fits',
             ]
    
    # parameters for the fit:
    fg = {'T:HD100286J SEP':10.0,
          'T:HD100286J PA':210.0,
          'T:HD100286J M0 MJD 56006.00 56006.99':0.0, 
         }
    doNotFit=[]
        
    a = astromNew.fitListOfFiles(files,reduceData=False,
                                 directory=data_directory,
                                 firstGuess=fg, plot=True, verbose=2,
                                 doNotFit=doNotFit, allX=False,
                                 #maxResiduals=10,
                                 #exportAscii='March12_Phase2.txt'
                                 )

    return
Ejemplo n.º 5
0
def analyseCorrection(files=files_hd65297_019):
    # traditional fit:
    titles = ['no corr.',
              'blind corr.',
              'adj. scale',
              'adj. angle',
              'adj. all']
    firstGuess=[{'SEP':35, 'PA':135, 'M0':-0.03, 'PUPSCALE':0, 'PUPANGLE':0},
                {'SEP':35, 'PA':135, 'M0':-0.03, 'PUPSCALE':1, 'PUPANGLE':0},
                {'SEP':35, 'PA':135, 'M0':-0.03, 'PUPSCALE':1, 'PUPANGLE':0},
                {'SEP':35, 'PA':135, 'M0':-0.03, 'PUPSCALE':1, 'PUPANGLE':0},
                {'SEP':35, 'PA':135, 'M0':-0.03, 'PUPSCALE':1, 'PUPANGLE':0}]
    doNotFit = [['PUPSCALE', 'PUPANGLE'],
                ['PUPSCALE', 'PUPANGLE'],
                ['PUPANGLE'],
                ['PUPSCALE'],
                []]

    tmp = []
    for k in range(len(titles)):
        tmp.append(
            astromNew.fitListOfFiles(files, directory=data_directory,
                                     firstGuess=firstGuess[k],
                                     doNotFit=doNotFit[k],
                                     plot=False, verbose=0))
    k_ = ['SEP', 'PA', 'M0', 'PUPSCALE', 'PUPANGLE']

    print '| |',
    for i in range(len(k_)):
        print k_[i], '|',
    print 'CHI2|RMS|'
    print '|-'
    for i in range(len(titles)):
        print '|', titles[i], '|',
        for k in k_:
            print round(tmp[i][0][k], 5),'|',
        print round(tmp[i][2], 2), '|',round(tmp[i][3],2), '|'
        print '| |',
        for k in k_:
            print round(tmp[i][1][k], 5) if tmp[i][1][k]>0 else '','|',
        print  '| |'
Ejemplo n.º 6
0
def testHD66958_ALL(runOffCorrection=True):
    fi = os.listdir(data_directory+'/comm18')
    fi = filter(lambda x: 'RED.fits' in x , fi)
    fi = ['comm18/'+''.join(f.split('_RED')) for f in fi]
    fi = filter(lambda x: '019' in x , fi)
    fg = {'SEP':35, 'PA':100,
          #'SEP MJD 56000.0':35, 'PA MJD 56000.0':180, 'LINDIR':-142.0, 'LINRATE':-3844.0,
          'M0 MJD 55945.00 55945.99':-0.034,
          #'M0 MJD 55889.0 55889.999':-0.009,
          #'M0 MJD 55890.0 55890.999':-0.010
          }
    if runOffCorrection:
        for k in ATsPUP.keys(): #  
            fg[k] = ATsPUP[k]
    if runOffCorrection=='blind':
        doNotFit=['AT3', 'AT4', 'ATPUP scale', 'LIN']
    else:
        doNotFit=['AT3', 'AT4', 'LIN']
    a = astromNew.fitListOfFiles(fi, data_directory,
                             firstGuess=fg, verbose=2,
                             doNotFit=doNotFit,
                             maxResiduals=30)
    return a
Ejemplo n.º 7
0
def test_targetsRun2(runOffCorrection=False, allX=False):
    """
    data collected after realignement of M4/AT3 by Stephane Guisard
    to minimize pupil runout.
    """
    
    files = [
        ###### March 2012 data ##############
        # HD 134481
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0001.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0002.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0003.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0004.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0006.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0007.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0008.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0009.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0010.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0011.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0012.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0013.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0014.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0015.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0016.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0017.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0018.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0019.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0020.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0021.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0022.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0023.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0024.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0025.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0026.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0027.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0028.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0029.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0030.fits',
        '2012-03-16/PACMAN_OBJ_ASTRO_077_0031.fits',
        # HD 66598
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0002.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0003.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0004.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0005.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0006.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0007.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0008.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0009.fits',  
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0010.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0011.fits',  
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0012.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0013.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0014.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0015.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0016.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0017.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0018.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0019.fits',
        # HD 129926
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0025.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0026.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0027.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0028.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0029.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0030.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0031.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0032.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0033.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0034.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0035.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0036.fits',
        #'2012-03-17/PACMAN_OBJ_ASTRO_078_0037.fits',# BAD
        #'2012-03-17/PACMAN_OBJ_ASTRO_078_0038.fits',# BAD
        #'2012-03-17/PACMAN_OBJ_ASTRO_078_0039.fits',# BAD
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0040.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0041.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0042.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0043.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0044.fits',
        '2012-03-17/PACMAN_OBJ_ASTRO_078_0045.fits',
        ]
    
    # parameters for the fit:
    fg = {'T:HD129926 SEP':8,
          'T:HD129926 PA':124,
          'T:HD129926 M0 MJD 56004.00 56004.35':0.00,
          'T:HD129926 M0 MJD 56004.35 56004.99':0.00,
          'T:HD66598 SEP':35,
          'T:HD66598 PA':134,
          'T:HD66598 M0 MJD 56004.00 56004.99':0.00,
          'T:HD134481 SEP': 26,
          'T:HD134481 PA': 144,
          'T:HD134481 M0 MJD 56003.00 56003.30':0.00,
          'T:HD134481 M0 MJD 56003.30 56003.99':0.00,
         }
    doNotFit=[]
    ### March 2012 pupil runout parameters:
    if runOffCorrection:
        for k in Bonnet1.keys(): # add 
            fg[k] = Bonnet1[k]
        doNotFit.extend(['scale',
                         #'AT4 ct', 'AT4 st', 'AT4 cd', 'AT4 sd', # fit 2ROT
                         #'AT4 ct', 'AT4 st', 'AT4 c2d', 'AT4 s2d', # fit ROT
                         #'AT4 c2d', 'AT4 s2d', #'AT4 c2d', 'AT4 s2d', # fit THETA
                         'AT4',
                         'AT3'])
        
    a = astromNew.fitListOfFiles(files,reduceData=False,
                                 directory=data_directory,
                                 firstGuess=fg, plot=True, verbose=2,
                                 doNotFit=doNotFit, allX=allX,
                                 maxResiduals=10,
                                 #exportAscii='March12_Phase2.txt'
                                 )

    return
Ejemplo n.º 8
0
def test_targetsBegRun(runOffCorrection=False, allX=False):
    files_hd66958 = [
        ###### March 2012 data ##############
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0001.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0002.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0003.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0004.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0005.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0006.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0007.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0008.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0009.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0010.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0011.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0012.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0013.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0014.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0001.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0002.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0003.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0004.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0005.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0006.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0007.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0008.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0009.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0010.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0011.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0012.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0013.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0014.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0015.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0016.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0017.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0018.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0019.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0020.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0021.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0022.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0023.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0002.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0003.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0004.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0005.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0006.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0007.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0008.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0009.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0010.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0011.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0012.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0013.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0014.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0015.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0016.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0017.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0018.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0019.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0020.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0021.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0022.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0023.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0024.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0025.fits',
        '2012-03-15/PACMAN_OBJ_ASTRO_076_0026.fits',]
    
    fg = {'T:HD66598 SEP':35,
          'T:HD66598 PA':134,
          'T:HD66598 M0 MJD 56000.00 56000.07':0.00,
          'T:HD66598 M0 MJD 56000.07 56000.99':0.00,
          'T:HD66598 M0 MJD 56001.00 56001.05':0.00,
          'T:HD66598 M0 MJD 56001.05 56001.99':0.00,
          'T:HD134481 SEP': 26,
          'T:HD134481 PA': 144,
          'T:HD134481 M0 MJD 56002.00 56002.32':0.00,
          'T:HD134481 M0 MJD 56002.32 56002.35':0.00,
          'T:HD134481 M0 MJD 56002.35 56002.99':0.00,
          }
    
    doNotFit=['LIN']
 
    ### Jan 2012 parameters:
    #for k in ATsPUP.keys(): # add 
    #    fg[k] = ATsPUP[k]
    
    ### March 2012 parameters:
    if runOffCorrection:
        for k in Bonnet0.keys(): # add 
            fg[k] = Bonnet0[k]
        doNotFit.extend(['scale','AT3', 'AT4'])
    
    a = astromNew.fitListOfFiles(files_hd66958,reduceData=False,
                                 directory=data_directory,
                                 firstGuess=fg, plot=True, verbose=2,
                                 doNotFit=doNotFit, allX=allX,
                                 maxResiduals=20,
                                 #exportAscii='March12_Phase1.txt'
                                 )
    
    deltaDec = a['BEST']['T:HD134481 SEP']*np.cos(a['BEST']['T:HD134481 PA']*np.pi/180)
    deltaRA_cosDec = a['BEST']['T:HD134481 SEP']*np.sin(a['BEST']['T:HD134481 PA']*np.pi/180)
    deltaRA = deltaRA_cosDec/np.cos(a['DEC']['HD134481']*np.pi/180)
    print 'HD134481: dRA', deltaRA, 'dDEC=', deltaDec
    return 
Ejemplo n.º 9
0
def testHD66958(allX=False, runOffCorrection=True):
    """
    - functionnal test;

    - astrometric fit on HD 66598 to see the amplitude of the
    residuals compared to january
    """
    files_hd66958 = [
        ### March 2012 data
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0001.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0002.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0003.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0004.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0005.fits',
        # no 0006
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0007.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0008.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0009.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0010.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0011.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0012.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0013.fits',
        '2012-03-13/PACMAN_OBJ_ASTRO_074_0014.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0001.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0002.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0003.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0004.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0005.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0006.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0007.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0008.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0009.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0010.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0011.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0012.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0013.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0014.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0015.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0016.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0017.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0018.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0019.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0020.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0021.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0022.fits',
        '2012-03-14/PACMAN_OBJ_ASTRO_075_0023.fits',
        #'2012-03-14/PACMAN_OBJ_ASTRO_075_0024.fits'
        ]
    
    fg = {'SEP':35, 'PA':134,
          'M0 MJD 56000.0 56000.07':0.00,
          'M0 MJD 56000.07 56000.99':0.00,
          'M0 MJD 56001.0 56001.05':0.00,
          'M0 MJD 56001.05 56001.99':0.00,
          }
    
    doNotFit=['LIN','AT3', 'AT4']
    if runOffCorrection=='blind':
        doNotFit.extend('scale')
    
    ### Jan 2012 parameters:
    #for k in ATsPUP.keys(): # add 
    #    fg[k] = ATsPUP[k]
    
    ### March 2012 parameters:
    if runOffCorrection:
        for k in Bonnet1.keys(): # add 
            fg[k] = Bonnet1[k]
    
    a = astromNew.fitListOfFiles(files_hd66958,reduceData=False,
                                 directory=data_directory,
                                 firstGuess=fg, plot=True, verbose=1,
                                 doNotFit=doNotFit, allX=allX,
                                 maxResiduals=10,
                                 exportAscii='hd66598.txt'
                                 )
    return 
Ejemplo n.º 10
0
def fitAllHD10360():
    global pup
    HD10360corr = []
    HD10360 = []
    for k, f in enumerate(files_hd10360):
        print k+1, '/', len(files_hd10360)
        fg = {'SEP':8., 'PA':135, 'M0':0.0}
        for k in ATsPUP.keys():
            fg[k] = ATsPUP[k]
        HD10360corr.append(astromNew.fitListOfFiles(f, directory=data_directory,
                                                  firstGuess=fg,
                                                  doNotFit=['AT3','AT4','PUP'],
                                                  plot=False, verbose=False))
        print HD10360corr[-1]['MJD_MIN'], '-', HD10360corr[-1]['MJD_MAX']

        HD10360.append(astromNew.fitListOfFiles(f, directory=data_directory,
                                     firstGuess={'SEP':8., 'PA':135, 'M0':-0.0},
                                     plot=False, verbose=False))


    pyplot.figure(10)
    pyplot.clf()
    pyplot.axes().set_aspect('equal', 'datalim')
    th = np.linspace(0, 2*np.pi, 100)
    colors=['r', 'g', 'b', 'y', 'm', 'c']

    ### data reduced without correction: ####################
    XYT = []
    for k,d in enumerate(HD10360):
        ### observation:
        X = d['BEST']['SEP']*np.sin(d['BEST']['PA']*np.pi/180)
        Y = d['BEST']['SEP']*np.cos(d['BEST']['PA']*np.pi/180)
        XYT.append((X,Y, d['MJD_MEAN']))
        pyplot.plot(X, Y, 's'+colors[k], markersize=10, alpha=0.5,
                    label = 'no correction' if k==0 else None)
    # linear fit
    Xb, Xe, chi2, Xm =\
        dpfit.leastsqFit(dpfit.polyN, [x[2]-55885 for x in XYT],
                         {'A0':0, 'A1':1},
                         [x[0] for x in XYT])
    Yb, Ye, chi2, Ym =\
       dpfit.leastsqFit(dpfit.polyN, [x[2]-55885 for x in XYT],
                        {'A0':0, 'A1':1},
                        [x[1] for x in XYT])
    # display linear fit
    MJD = np.linspace(55885, 55890, 100)
    pyplot.plot(dpfit.polyN(MJD-55885, Xb), dpfit.polyN(MJD-55885, Yb),
                'k-', linewidth=3, alpha=0.3)
    # distance to fit
    for k,d in enumerate(HD10360):
        X = d['BEST']['SEP']*np.sin(d['BEST']['PA']*np.pi/180)
        Y = d['BEST']['SEP']*np.cos(d['BEST']['PA']*np.pi/180)
        pyplot.plot(Xm[k], Ym[k], 'x'+colors[k], markersize=6)
        pyplot.plot([X, Xm[k]], [Y, Ym[k]], '-'+colors[k],
                    linewidth=2, alpha=0.5)

    ### data reduced with correction ############################
    XYT=[]
    for k,d in enumerate(HD10360corr):
        ### observation:
        X = d['BEST']['SEP']*np.sin(d['BEST']['PA']*np.pi/180)
        Y = d['BEST']['SEP']*np.cos(d['BEST']['PA']*np.pi/180)
        XYT.append((X,Y, d['MJD_MEAN']))
        pyplot.plot(X, Y, 'o'+colors[k], markersize=10,
                    label = 'scaled correction' if k==0 else None)
    # linear fit
    Xb, Xe, chi2, Xm =\
        dpfit.leastsqFit(dpfit.polyN, [x[2]-55885 for x in XYT],
                         {'A0':0, 'A1':1},
                         [x[0] for x in XYT])
    Yb, Ye, chi2, Ym =\
       dpfit.leastsqFit(dpfit.polyN, [x[2]-55885 for x in XYT],
                        {'A0':0, 'A1':1},
                        [x[1] for x in XYT])
    print 'linrate:', np.sqrt(Xb['A1']**1+Yb['A1']**2)*1e6, 'uas/day'
    # display linear fit
    MJD = np.linspace(55885, 55892, 10)
    pyplot.plot(dpfit.polyN(MJD-55885, Xb), dpfit.polyN(MJD-55885, Yb),
                'k-', linewidth=3, alpha=0.3)

    # distance to fit
    for k,d in enumerate(HD10360corr):
        X = d['BEST']['SEP']*np.sin(d['BEST']['PA']*np.pi/180)
        Y = d['BEST']['SEP']*np.cos(d['BEST']['PA']*np.pi/180)
        pyplot.plot(Xm[k], Ym[k], 'x'+colors[k], markersize=6)
        pyplot.plot([X, Xm[k]], [Y, Ym[k]], '-'+colors[k],
                    linewidth=2, alpha=0.5)

    pyplot.legend(loc='upper left')
    pyplot.xlabel('$\delta$ E (\")')
    pyplot.ylabel('$\delta$ N (\")')
    return
Ejemplo n.º 11
0
# -----------------------------------------------------------------------

files_hd18622 = ['2012-01-14/PACMAN_OBJ_ASTRO_015_0003.fits',
                 '2012-01-14/PACMAN_OBJ_ASTRO_015_0004.fits',
                 '2012-01-14/PACMAN_OBJ_ASTRO_015_0005.fits',
                 '2012-01-14/PACMAN_OBJ_ASTRO_015_0006.fits',
                 '2012-01-14/PACMAN_OBJ_ASTRO_015_0007.fits',
                 '2012-01-16/PACMAN_OBJ_ASTRO_017_0001.fits',
                 '2012-01-16/PACMAN_OBJ_ASTRO_017_0002.fits',
                 '2012-01-16/PACMAN_OBJ_ASTRO_017_0003.fits',
                 '2012-01-16/PACMAN_OBJ_ASTRO_017_0004.fits',
                 '2012-01-18/PACMAN_OBJ_ASTRO_019_0001.fits',
                 '2012-01-18/PACMAN_OBJ_ASTRO_019_0002.fits',
                 '2012-01-18/PACMAN_OBJ_ASTRO_019_0003.fits',
                 '2012-01-18/PACMAN_OBJ_ASTRO_019_0004.fits']
"""
astromNew.fitListOfFiles(comm18.files_hd18622, directory=comm18.data_directory,
                         maxResiduals=3,
                         firstGuess={'SEP':8.3, 'PA':91.3,
                                     'M0 MJD 55941.00 55941.99':-0.017,
                                     'M0 MJD 55943.00 55943.99':-0.022,
                                     'M0 MJD 55945.00 55945.99':-0.022 })
"""

"""
astromNew.fitListOfFiles(files_hd18622_014, directory=data_directory,
                         maxResiduals=3,
                         firstGuess={'SEP':8.3, 'PA':91.3,
                                     'M0 MJD 55941.00 55941.99':-0.017,
                                     'M0 MJD 55943.00 55943.99':-0.022},
                         fitOnly=['SEP','PA','M0 MJD 55941.00 55941.99','M0 MJD 55943.00 55943.99'])