XMM-Newton SAS Home Page
XMM-Newton Science Analysis System


rgsframes (rgsframes-3.19) [xmmsas_20230412_1735-21.0.0]


Algorithm

    Make local copy of the events set

    Open AUX file belonging to input set.

    if mode == 'HTR' {
        Subroutine calculateHTRFrameTimes
            open event lists of all CCD
            sum of all Delta_T to create times per frame
    }

    Subroutine addExposureTable
        find rows of AUX1 table with CCDID = current CCD
        copy only these rows of columns from AUX1 to EXPOSURE table
        close AUX1 table
        find and delete duplicate rows of EXPOSURE table
        sort and check EXPOSURE table
        set BAD_FRAME flag

    if mode == 'SPECTROSCOPY' {
       Subroutine processFrameTimes
           calculate frame integration times
           calculate frame event time by setting time to mid of exposure period
    }
    else mode == 'HTR' {
       Subroutine fillHTRFrameTimes
           per frame, find corresponding time
           calculate frame integration time
           set BAD_FRAME flag based on minexposuretime
    }   

    Subroutine processPixelTable
        add standard attributes
        correct frame numbersof PIXEL table for int16 wrap around
        rename RAWX/RAWY to TELX/TELY
        find and delete duplicate rows of PIXEL table
        create new RAWX/Y and shift pixel number by +1
        if more /= 'HTR'
             add SHAPE and GRADE columns based on dpp software version
	if windowdx indicates Single Readout Node "pseudo-mode"
	     revert pixel positions to dual node scheme
	     and set SINGLERO keyword in events header to 1
	else 
	     set SINGLERO keyword in events header to 0

    Subroutine addFracExposure
        start loop Nodes
           get number of uplinked bad pixels from CAL
           calculate FRACEXP
        end loop Nodes

        if mode == 'HTR' set FRACEXP = 1 (no processing)

    Subroutine Pixels_and_Frames
        optional: add frame rate column
        optional: set BAD_FRAME flag for number of pixels per frame > maxrawpixels
        optional: set BAD_FRAME flag for number of pixels per second > maxrawpixelrate

    Subroutine createGTI
        add GTI table

    Subroutine cleanupExposureTable
        delete unwanted columns from EXPOSURE table



XMM-Newton SOC -- 2023-04-16