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


rgsproc (rgsproc-1.37) [xmmsas_20230412_1735-21.0.0]


Algorithm

========== stage one: "events" ==========

FOR EACH specified exposure

  IF (!exists(atttsr))   atthkgen: create(atttsr)

  IF (calcoffsets && !exists(offset))   rgsoffsetcalc: create(offset,[offhst])

  hkgtigen: create(hkgti_)
  attfilter: read(atttsr) create(attgti)
  rgssources: read(attgti) create(srcli_)

  FOR EACH ccd

    rgsframes: create(events)
    rgsenergy: read([offset]) modify(events)
    rgsbadpix: modify(events)
    rgsevents: modify(events)

  evlistcomb: read(EACH events) create(merged)

========== stage two: "angles" ==========

  if (!exists(merged) && exists(evenli))   clone: read(evenli) create(merged)

  rgsangles: read(srcli_) modify(merged)

========== stage three: "filter" ==========

  if (!exists(merged) && exists(evenli))   clone: read(evenli) create(merged)

  rgsfilter: read(merged,attgti,hkgti_,auxgtitables) create(evenli,[expmap])

========== stage four: "spectra" ==========

  rgsregions: read(evenli) modify(srcli_)

  FOR EACH selected source
    FOR EACH specified order

      rgsspectrum: read(evenli,srcli_) create(srspec,[bgspec])
      rgsbkgmodel: read(evenli) create([bkgmodelspec])	

========== stage five: "fluxing" ==========

FOR EACH specified order
  FOR EACH specified exposure

    rgsrmfgen: read(evenli,srcli_,srspec,[angdist]) create(rspmat)

  IF (!mergeorders) rgsfluxer: read(EACH rspmat,EACH srspec) create(fluxed)

IF (mergeorders) rgsfluxer: read(EACH rspmat,EACH srspec) create(fluxed)



XMM-Newton SOC -- 2023-04-16