From 396f1c4eec21d59749a9a08f15a8356ace4defff Mon Sep 17 00:00:00 2001 From: hamogu Date: Fri, 15 Jan 2021 15:53:37 -0500 Subject: [PATCH] Import old ICD, draft changes for next version Changes to the ICD are stylistic (make it compile with pdflatex, change AXAF to Chandra), include content fixes (typos in the formular for Gaussians and Lorenztians, clearification on component normalization), and prepare for LSFPARM files for more detectors. Draft version for now! --- ICD_mkgrmf_ard.tex | 801 +++++++++++++++++++++++++++++++++++++++ ICD_mkgrmf_ard_0.3.0.tex | 780 ++++++++++++++++++++++++++++++++++++++ Kavli_Logo.pdf | Bin 0 -> 23030 bytes cxc-logo.pdf | Bin 0 -> 85348 bytes 4 files changed, 1581 insertions(+) create mode 100644 ICD_mkgrmf_ard.tex create mode 100644 ICD_mkgrmf_ard_0.3.0.tex create mode 100644 Kavli_Logo.pdf create mode 100644 cxc-logo.pdf diff --git a/ICD_mkgrmf_ard.tex b/ICD_mkgrmf_ard.tex new file mode 100644 index 0000000..9065143 --- /dev/null +++ b/ICD_mkgrmf_ard.tex @@ -0,0 +1,801 @@ +% Time-stamp: <2001-12-28 13:11:45 dsd> +% MIT Directory: ~dsd/CXC/specs/ICD/ +% CfA Directory: /dev/null +% File: ICD_1DLIB.tex +% Author: D. Davis +% +% (this header is ~dph/libidl/time-stamp-template.el) +% to auto-update the stamp in emacs, put this in your .emacs file: +% (add-hook 'write-file-hooks 'time-stamp) +%==================================================================== + +\documentclass[twoside]{article} +%\documentstyle[11pt]{article} +\input epsf.sty +\usepackage[outerbars,dvips]{changebar} + +%\usepackage[dvips]{graphics} +%\usepackage{epsf} +\textwidth=6.5in +\textheight=8.9in +\topmargin=-0.5in +\oddsidemargin=0in +\evensidemargin=0in + +\newcommand{\putdraft}{\special{!userdict begin /bop-hook{gsave 200 30 +translate 65 rotate /Times-Roman findfont 216 scalefont setfont 0 0 +moveto 0.9 setgray (DRAFT) show grestore}def end}} + + +\newcommand{\Remark}[1]{\marginpar + {\fbox{\parbox{1.7in}{\raggedright\scriptsize#1}}}} + +\newcommand{\Putline}{ +% \advance\textwidth-26pt + \rule{\the\textwidth}{1pt} +% \advance\textwidth+26pt + } +\def\nodata{ ~$\cdots$~ } +\newcommand{\Note}[1]{ +\begin{changemargin}{0.25in}{0in} +\advance\textwidth-26pt +\parbox{\textwidth}{ % testing... +\hfill\Putline\newline +%\parbox{\textwidth}{\small\sf#1}\\ +{\small\sf#1}\\ % testing... +\Putline\newline +} % testing... +\advance\textwidth+26pt +\end{changemargin} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \putstring{x}{y}{angle}{scale}{gray}{string} +% gray: 0=black, 1=white + +\newcommand{\putstring}[6]{ +\special{!userdict begin /bop-hook{gsave #1 #2 translate +#3 rotate /Times-Roman findfont #4 scalefont setfont +0 0 moveto #5 setgray (#6) show grestore}def end} +} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% To change the margins of a document within the document, +% modifying the parameters listed on page 163 will not work. They +% can only be changed in the preamble of the document, i.e, before +% the \begin{document} statement. To adjust the margins within a +% document we define an environment which does it: + \newenvironment{changemargin}[2]{\begin{list}{}{ + \setlength{\topsep}{0pt}\setlength{\leftmargin}{0pt} + \setlength{\rightmargin}{0pt} + \setlength{\listparindent}{\parindent} + \setlength{\itemindent}{\parindent} + \setlength{\parsep}{0pt plus 1pt} + \addtolength{\leftmargin}{#1}\addtolength{\rightmargin}{#2} + }\item }{\end{list}} +% This environment takes two arguments, and will indent the left +% and right margins by their values, respectively. Negative values +% will cause the margins to be widened, so +% \begin{changemargin}{-1cm}{-1cm} widens the left and right margins +% by 1cm. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\newcommand{\Header}[2]{ +\pagestyle{myheadings} %%%%%%%%%% +\markboth{\bf \qquad #1 \hfill #2 \qquad}%%%%%%%%%% + {\bf \qquad #1 \hfill #2 \qquad}%%%%%%%%%% +} + +%%%%%%%%%%%%%%%%%%%%%% END dph useful macros %%%%%%%%%%-------------- + + +%%% +%%% Look for occurrences of five pound characters: #####, to locate places +%%% where updates are necessary +%%% + +%%% +%%% revision info +%%% +\newcommand{\Revision}{\mbox{\em% +%%% +%%% ##### Update the revision information +%%% +%Revision 0.0---16 Mar 2001 % my first draft, uncirculated +%Revision 0.1.1---27 Mar 2001 % Format change incorporated +%Revision 0.1.2---02 May 2001 % Four Columns added +Revision 0.2.1---28 Dec 2001 % Comments incorperated +%Revision 1.2.0 15 Dec 1999 % Comments incorperated +%Revision 1.0---02 Feb 1998 % reviewed, updated. +}} + + + +\hyphenation{pipe-line} +\hyphenation{pipe-lines} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\Header{Data Product Interface Document: /}{\Revision} +\begin{document} + + +%\putstring{x}{y}{angle}{scale}{gray}{string} +% gray: 0=black, 1=white +%\putstring{70}{40}{90}{40}{0.90}{D R A F T -DRAFT- D R A F T} +%%% ##### comment the following line out for actual releases +%\putdraft + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% title stuff, no need to change anything +%%% + +\begin{titlepage} + +\begin{changemargin}{-1in}{-1in} + + \begin{center} + {\huge\bf AXAF Science Center} + + \vspace*{0.1in} +% \leavevmode{\scalebox{0.17}{\includegraphics{asc_logo.eps}}} + {\epsfxsize=3.2cm \leavevmode\epsfbox{asc_logo.eps}} + \vspace*{0.1in} + + {\LARGE\bf mkgrmf LSF Input Data:} + + \vspace*{0.1in} + {\LARGE\bf Data Product Interface Document:} + \vspace*{0.2in} + + \Revision + + \end{center} + + \vfill + + \begin{tabular}{lll} + Submitted: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & David S. Davis & Date \\ + & Grating Scientist, CXC Science Data Systems & \\[0.25in] + Concurred: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & David Huenemoerder & Date \\ + & Grating Scientist, CXC Science Data Sytems & \\[0.25in] + Concurred: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & Dale Graessle & Date \\ + & Chandra CALDB Manager& \\[0.25in] + Concurred: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & Arnold Rots & Date \\ + & Archive Scientist, CXC Archives & \\[0.25in] + Concurred: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & Janet De Ponte & Date \\ + & Manager, CXC Data Systems & \\[0.25in] + Concurred: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + & Martin Elvis & Date \\ + & Manager, CXC Science Data Systems & \\[0.25in] + Approved: & \rule{3.5in}{0.01in} & \rule{0.75in}{0.01in} \\ + \end{tabular} + +\end{changemargin} + +\end{titlepage} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% update info +%%% +\pagenumbering{roman}\setcounter{page}{2} + +%%% +%%% ##### update as necessary +%%% + +\begin{center} +\begin{tabular}{|c|c|c|p{2.5in}|} \hline +\multicolumn{4}{|c|}{}\\[1mm] +\multicolumn{4}{|c|}{\bf Document and Change Control Log}\\[3mm]\hline +{\bf Date} & {\bf Version} & {\bf Section} & {\bf Status} \\ \hline +19 Mar 01& 0.1.0& all&Initial Draft \\\hline +23 Apr 01& 0.1.1& all&Format Changes \\\hline +02 May 01& 0.1.2& all&Four columns added \\\hline +21 Sep 01& 0.2.0& all&Revised \\\hline +%04 Feb 99& 1.1.0& all&Revived as a separate document \\\hline +%30 Apr 99& 1.1.1& 4.1&Added enumerated axis or radial coord\\\hline +%30 Apr 99& 1.1.1& 4.1&changed TTYPE names\\\hline +%14 Jun 99& 1.2.0& all&Revised document using comments from DPH,KJG,AR +%and JCM\\\hline +% +\hline +% +\end{tabular} +\end{center} + +\section*{Unresolved Issues} + +The following is a list of unresolved, un-reviewed, or un-implemented +items: + +\begin{enumerate} + +\item Defocused data is not yet addressed + +\end{enumerate} + +\clearpage + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% table of contents, list of tables +%%% + +\tableofcontents +\clearpage +\listoftables +\clearpage + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\pagenumbering{arabic} +\section{Introduction} + +This document describes the interface to be employed in accessing +the PSF Library products, according to the requirements stipulated in +Applicable Document~\ref{appdoc:se03}.% +% + +\subsection{Purpose} + +The purpose of this document is to define the input data for the Line +Spread Function (generically referring to LSF) Library to be used in +Level 2 processing for the grating RMF generator (mkgrmf). +% + +\subsection{Scope} + +This interface shall apply to all Grating specific LSF +data products used by the tool {\tt mkgrmf} +and distributed to the CXC Data +Archive (see Applicable Documents TBD) during the course of +the Chandra mission. + +\section{Applicable Documents} +The Applicable Documents required for background and detail on +grating products are as follows: +\begin{enumerate} +% +\item\label{appdoc:data-prod} + AXAF Data Products Guide\newline + {\tt http://hea-www.harvard.edu/asclocal/ds/arch\_doc/EST/DataProd.html} +% +\item\label{appdoc:coord} + AXAF Coordinate Systems\newline + {\tt http://hea-www.harvard.edu/~jcm/asc/coords} +% +\item\label{appdoc:se03} + ASC AMO-2400 (SE03) \newline + ASC Data System Requirements (ASC.302.93.0008) +% +\item\label{appdoc:ds01} + ASC AMO-2401 (DS01) \newline + ASC Data System Software Design (ASC.500.93.0006) +% +% +\item\label{appdoc:fitsstd} + HEASARC FITS Standards:\newline +{\tt http://legacy.gsfc.nasa.gov/docs/heasarc/ofwg/}\newline +{\tt docs/summary/ogip\_93\_001\_summary.html} +% +\item\label{appdoc:ascfits} + ASC FITS File Designers' Guide\newline + {\tt http://hea-www.harvard.edu/$\sim$arots/asc/fits/ascfits.ps} +% +%\item\label{appdoc:fitsdef} +% NOST 100-1.1, Definition of the Flexible Image Transport System +% (FITS)\newline +% {\tt http://www.cv.nrao.edu/fits/} +% +\item\label{appdoc:heasarccaldb} + HEASARC FITS CALDB Standards\newline + {\tt http://heasarc.gsfc.nasa.gov/docs/heasarc/caldb/caldb\_intro.html} +% +\item\label{appdoc:asccaldb} + AXAF CALDB Architecture\newline + {\tt http://hea-www.harvard.edu/$\sim$arots/asc/fits/caldb.txt} +% +\end{enumerate} + +% synopsis for editing purposes... +% +% 1 appdoc:data-prod AXAF Data Products Guide +% 2 appdoc:coord AXAF Coordinate Systems +% 3 appdoc:se03 ASC AMO-2400 (SE03) +% 4 appdoc:ds01 ASC AMO-2401 (DS01) +% 7 appdoc:ascfits ASC FITS Designers' Guide +% 5 appdoc:fitsdef NOST 100-1.1, Definition of the FITS +% +% 6 appdoc:fitsstd HEASARC FITS Standards: +% 8 appdoc:hrcicd HRC Data Products Guide: +% 9 appdoc:acisicd ACIS Data Products Guide: + + +\section{Functional Description} + +\subsection{Data Content Summary} + +All Grating LSF Library files shall +consist of data files conforming to the FITS format (Applicable +Document~\ref{appdoc:fitsstd}). These files +contain header keyword entries and binary table (BINTABLE) extensions. +These files will contain a primary header, possibly null, followed +by a set of binary tables as described in Applicable +Document~\ref{appdoc:ascfits}. In addition, these files will conform to the +HEASARC CALDB conventions (Applicable Document~\ref{appdoc:heasarccaldb}) and +have CONTENT, EXTNAME,and HDUCLASS keywords that conform to +Applicable Document~\ref{appdoc:asccaldb}. + + +\subsection{Recipients and Utilization} + +The primary recipients, via distribution from the archive, of the LSF +Library are Chandra observers, who will utilize these data products for +scientific data analysis. The CXC may also make use of specific LSF +Library data products for instrument calibration, instrument and/or +spacecraft monitoring and trends analysis, and validation and +verification of the Level 0, Level 1, and Level 1.5 software and of +the data products themselves. + +\subsection{Pertinent Relationships with Other Interfaces} + +Changes to the definition of CXC FITS, as described in Applicable +Documents~\ref{appdoc:ascfits}, may affect the format of the PSF data +products described in the current document. + +\section{Assumptions and Constraints} + +It is assumed that these products are placed into an exportable calibration database +(CALDB) for users. + +\subsection{Products Not Covered} + +PSF products that are used for maintenance and diagnostic purposes +(those that are not supplied to the user for scientific data +analysis), or which are generic AXAF Level 2 products, are not +currently included within the interface defined by this document. + +\subsection{Substructure Definition and Format} + +The header components for the primary header and all binary table +extensions are defined and listed in the Applicable Documents. In +general, the column or row numbers in the example FITS headers +are arbirary unless otherwise indicated. It is the column name and +its attributes that specify the requirment. Additional columns not +specified here may be added to the file also long as they do not +violate the interface. Software used to process the data can +ignore the additional columns, copy them to the output file, or +optional use them for data processing. Likewise, HDU order is +arbitrary, except for the primary HDU which must be first. HDUs +are intended to be referenced by name, not position. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\clearpage +\section{Access} +\subsection{Access Tools; Input/Output Protocol} + +Since LSF Library products obey the formatting rules described in +Applicable Documents~\ref{appdoc:ascfits}, +they may be accessed by any software that conforms to those standards, +including all versions of the FITSIO libraries that support the +BINTABLE extension. In addition, since they adhere to HEASARC +standards (Applicable Document~\ref{appdoc:fitsstd}), LSF data product +files are compatible with the input/output routines that constitute +the CXC data interface. + +%\subsection{Timing and Sequencing Characteristics} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\clearpage + +\section{The File Structure for the Grating LSF Data} + +This section describes the LSF parameter library which is a FITS file +containing the LSF fit parameters for the Chandra gratings. Each file +will contain the parameters for one grating type. +The * in the table below denotes the ASC principal HDU. + +\begin{table}[h] +{\footnotesize +\noindent\begin{tabular}{|llcccccp{1.2in}|}\hline +HDU +& \sc HDU Type +& \sc EXTNAME +& \sc EXTVER +& \sc CONTENT +& \sc HDUCLAS1 +& \sc HDUCLAS3 +& Description +\\ +\hline +% +0 +& \sc NULL +& \nodata +& \nodata +& \nodata +& \nodata +& \nodata +& \nodata +\\ +% +1 (*) +& \sc BINTABLE +& \sc MEG +& 1 +& \sc LSF\_PARAM +& RESPONSE +& \sc LSF +& LSF coefficients +\\ +% +\\\hline +% +\end{tabular} +}% close \small +\caption{File structure for the table with the LSF fit coefficients} +\label{tab:fstruct} +\end{table} +% + +\subsection{File Names} + +The filename convention shall be + +$$\{ det\} \{grat\}\{order\}D \{date\} lsfparmN\{version\}.fits$$ + +where $\{det\}$ is either $acis$ or $hrcs$, and $\{grat\}$ is one of $leg$, $meg$, +or $heg$. $\{date\}$ follows the date convention in Applicable +Document~\ref{appdoc:ascfits}. + +As an example the lsf file for the HRC-S using the LETG grating should +be of the form + +hrcsleg1D1999-07-22lsfparmN0000.fits + +while the file for the MEG using ACIS-S should be + +acismeg1D1999-07-22lsfparmN0001.fits + +\subsection{Column Descriptions} + +\begin{table}[h] +\begin{center} +{\small +\begin{tabular}{|c|c|c|c|c|c|p{1.8in}|} +\hline + & & & & & & \\ + \# + & TTYPE + & TUNIT + & TFORM + & TLMIN + & TLMAX + & \multicolumn{1}{|c|}{Comment}\\ + & & & & & & \\\hline +% + 1 + & NUM\_WIDTHS + & + & I + & 0 + & \sc TBD + & Number of Extraction Widths \\\hline +% + 2 + & WIDTH + & Degrees + & 3E + & 0 + & \sc TBD + & Extraction Width \\\hline +% + 3 + & NUM\_LAMBDAS + & + & J + & 0 + & \sc TBD + & Number of wavelength points \\\hline +% + 4 + & TG\_LAM\_LO + & Angstroms + & nD + & $0.0$ + & \sc TBD + & Low wavelength of the extraction region\\\hline +% + 5 + & TG\_LAM\_HI + & Angstroms + & nD + & $0.0$ + & \sc TBD + & High wavelength of the extraction region\\\hline +% + 6 + & LAMBDAS + & Angstroms + & nD + & $0.0$ + & \sc TBD + & Input Photon Wavelength \\\hline +% + 7 + & EE\_FRACS + & N/A + & mD + & $0.0$ + & $1.0$ + & Encircled Energy fraction\\\hline +% + 8 + & GAUSS$i$\_PARMS + & N/A + & kE + & N/A + & N/A + & vector containing Gaussian parameters\\\hline +% + 9 + & LORENTZ$i$\_PARMS + & N/A + & kE + & N/A + & N/A + & vector containing Lorentzian parameters\\\hline +% + 10 + & THETA\_MIN + & degrees + & E + & 0 + & N/A + & min off-axis angle\\\hline +% + 11 + & THETA\_MAX + & degrees + & E + & 0 + & N/A + & max off-axis angle for which this is valid\\\hline +% + 12 + & PHI\_MIN + & degrees + & E + & 0 + & N/A + & min azimuthal angle for which this is valid\\\hline +% + 13 + & PHI\_MAX + & degrees + & E + & 0 + & N/A + & max azimuthal angle for which this is valid\\\hline +% +% +\end{tabular} +}% close \small +\caption{Binary table with the LSF fit coefficients} +\label{tab:parms} +\end{center} +\end{table}% +The $i$ in parmeters 8 and 9 is currently set to 1 but multiple parameter +sets are allowed. So for instance if future fits include a second +Gaussian component along with the current parameters the lsf file +structure supports that as an additional column, e.g. GAUSS2\_PARM. +Also n is the number of wavelengths, m is 3$\times$n, and k is +3$\times$n$\times$NUM\_WIDTHS. +% +\subsubsection{Comments on the Columns} + +The {\tt NUM\_WIDTH} column give the number of widths for which the LSF +was extracted and tabulated. In the current incarnation +this value is three for the MEG and HEG files. For the LETG only one +width is currently implemented. + +The {\tt WIDTH} column gives the width, in degrees, of the extraction +region used to extract the LSF data. The next column gives the +number of wavelengths at which the LSF is tabluated. Currently these +must be the same for each extraction width and are assumed to be in +angstroms. The columns {\tt TG\_LAM\_LO} and {\tt TG\_LAM\_HI} give +that lower and upper wavelength of the box that was used to extract +the LSF data. The {\tt LAMBDA} column gives the wavelength of the peak +position of the LSF. + +The encircled energy fraction is tablulated in the {\tt EE\_FRAC} +column. The vector column containing the EE\_FRAC is a +2-dimensional vector with the ee\_frac for each wavelength as a vector +and additional rows are for the ee\_frac for each different width as +defined above. This means that the dimensionality of the vector will +be num\_lambdas $\times$ num\_widths. + + +%$$ \sum_{j=0}^{num\_widths-1} \sum_{i=0}^{num\_lambdas-1} +%{\rm ee\_vector}(i+j) = ee\_frac(i,j)$$ +% +%Each of the vectors containing the LSF fits parameters are +%arranged as a matrix and are 3 x NUM\_LAMBDAS x NUM\_WIDTHS. +%For the Gaussian parameters +% +%$$ \sum_{i=0}^{num\_widths-1} \sum_{j=0}^{num\_lambdas-1} \sum_{k=0}^2 +%{\rm Gaussian\_parms\_vector}(i+j+k) = {\rm gauss\_parms}(i,j,k)$$ +% + +The columns for the fit parameters shall be a matrix of +n$\times$j$\times$k where n is the number of parameters and +their order is + +\begin{obeylines} +gauss\_parms(0,j,k) = Gaussian amplitude, + +gauss\_parms(1,j,k) = Gaussian $\sigma$ in \AA, + +gauss\_parms(2,j,k) = peak position in \AA. +\end{obeylines} + +The number of elements is given by $j$ and the maximum value of $j$ is +NUM\_LAMBDAS. The number of widths is given by $k$. The function +parameters at a given j must be for +the wavelength range TG\_LAM\_LO(j) and TG\_LAM\_HI(j) and the maximum +value of $j$ is given by NUM\_WIDTHS. + +% +%For the Lorentzian parameters +% +%$$ \sum_{i=0}^{num\_widths-1} \sum_{j=0}^{num\_lambdas-1} +%{\rm \sum_{k=0}^2 Lorentzian\_parms\_vector}(i+j+k) = +%{\rm lore\_parms}(i,j,k)$$ +% + +For the Lorenzian parameters the order of the parameters in the matrix +shall be + +\begin{obeylines} +lorentzian\_parms(0,j,k) = Lorentzian amplitude, + +lorentzian\_parms(1,j,k) = Lorentzian width in \AA, + +lorentzian\_parms(2,j,k) = peak position in \AA, +\end{obeylines} +with the other elements obeying the convention for the Gaussian +parameters above. + +\subsection{Allowed Functional Forms} + +The functional forms that are allowed for the LSF in mkgrmf are +currently a Gaussian and a Lorentzian. + +$$ G(r) = {1. \over (2\pi\sigma^2)} e^{{-(r-r_0)^2\over +(2\sigma^2)}}$$ + +where $\sigma$ is the Gaussian width in angstroms and $r_0$ is the +peak of the LSF. + + +$$ L(r) = {L_0\over 2\pi} {\Gamma \over (r - r_0)^2 + \Gamma^2)} $$ +where , r$_0$ is the peak position of the Lorenztian, which need not +be the same as the center of the Gaussian, and $\Gamma$ is the +half-width of the line profile. + + +\subsection{Size Estimates} + +The ASC primary extension of each file will have 13 columns +to describe the LSF parameters at each energy. The vector columns +are real floating point numbers so the size of the file can be +estimated by the number of entries $\times$ 11 (the number of +vector columns). So for a typical MEG LSF file with $\sim$2500 entries +the size of the data area should be 27500 bytes (11$\times$2500). + +\section{FITS Header Templates} + +The following header sections have been taken from the ASC +FITS file specifications. The example FITS headers given +here are examples only, the column numbers, axis numbers, and +keyword values are {\it not} necessarily those in the LSF data files. + +\subsection{Header Components with No Changes} + +\begin{itemize} + +\item{Mandatory component for the Image Primary Header (M)} + +\item{Mandatory component for Null Primary Header (M)} + +\item{Mandatory component for Binary Table extension (M)} + +\item{Mandatory component for Image extension (M)} + +\item{Full configuration control component (CC)} + +\item{Short configuration control component (Short CC)} + +\item{Configuration control component for null primary HDU (Null CC)} + +\end{itemize} + +\subsection{Header Components with Changes} + +\subsubsection{Full Timing Component (T)} + +\begin{verbatim} +DATE = '0000-00-00T00:00:00' / Date and time of file creation +TIMEUNIT= 's ' / Time unit +\end{verbatim} + +\subsubsection{Short Timing Component (Short T)} + +\begin{verbatim} +DATE = '0000-00-00T00:00:00' / Date and time of file creation +TIMEUNIT= 's ' / Time unit +\end{verbatim} + +\subsubsection{Full Observation info Component} + +\begin{verbatim} +MISSION = 'AXAF ' / Mission +INSTRUME= 'ACIS ' / Instrument +DETNAM = 'ACIS-S ' / Detector +GRATING = 'HETG ' / Grating +GRATTYP = 'MEG ' / Grating Type +\end{verbatim} + + + +\subsubsection{Grating Specific Components} +\begin{verbatim} +GRATING = 'HETG ' /Grating in use +GRATTYP = 'HEG ' /Grating data +TG_M = 1 +ORDER = 1 +CDTP0001= 'DATA ' /Virtual data set +CCLS0001= 'CPF ' /Basic Calibration file +CDES0001= 'MEG LSF parameters input for mkgrmf'/Description +CBD10001= 'GRATING(HETG)' +CBD20001= 'GRATTYPE(MEG)' +CBD30001= 'TG_M(1) ' +CBD40001= 'SHELL(0011)' +CBD50001= 'ORDER(1)' +CVSD0001= '1999-07-22T00:00:00' +CVST0001= '00:00:00' +CCNM0001= 'LSFPARM' +CBD10001= 'Energy(5)keV' /Energy range for PSF +CBD20001= 'THETA(0 - 2)arcmin' /Distance from optical axis for PSF +CBD30001= 'PHI(0.0 - 360.)deg' /Azimuthal angle for PSF + +\end{verbatim} + +% + +\clearpage +%\section{Focal Plane positions of the LSF} + + + + + +\end{document} diff --git a/ICD_mkgrmf_ard_0.3.0.tex b/ICD_mkgrmf_ard_0.3.0.tex new file mode 100644 index 0000000..1994fa9 --- /dev/null +++ b/ICD_mkgrmf_ard_0.3.0.tex @@ -0,0 +1,780 @@ +% Time-stamp: <2001-12-28 13:11:45 dsd> +% MIT Directory: ~dsd/CXC/specs/ICD/ +% CfA Directory: /dev/null +% File: ICD_1DLIB.tex +% Author: D. Davis +% +% (this header is ~dph/libidl/time-stamp-template.el) +% to auto-update the stamp in emacs, put this in your .emacs file: +% (add-hook 'write-file-hooks 'time-stamp) +%==================================================================== + +\documentclass[twoside]{article} +%\documentstyle[11pt]{article} +\input epsf.sty +\usepackage[outerbars,dvips]{changebar} +\usepackage{hyperref} +\usepackage{graphicx} +\usepackage{array} + +%\usepackage[dvips]{graphics} +%\usepackage{epsf} +\textwidth=6.5in +\textheight=8.9in +\topmargin=-0.5in +\oddsidemargin=0in +\evensidemargin=0in + +\newcommand{\putdraft}{\special{!userdict begin /bop-hook{gsave 200 30 +translate 65 rotate /Times-Roman findfont 216 scalefont setfont 0 0 +moveto 0.9 setgray (DRAFT) show grestore}def end}} + + +\newcommand{\Remark}[1]{\marginpar + {\fbox{\parbox{1.7in}{\raggedright\scriptsize#1}}}} + +\newcommand{\Putline}{ +% \advance\textwidth-26pt + \rule{\the\textwidth}{1pt} +% \advance\textwidth+26pt + } +\def\nodata{ ~$\cdots$~ } +\newcommand{\Note}[1]{ +\begin{changemargin}{0.25in}{0in} +\advance\textwidth-26pt +\parbox{\textwidth}{ % testing... +\hfill\Putline\newline +%\parbox{\textwidth}{\small\sf#1}\\ +{\small\sf#1}\\ % testing... +\Putline\newline +} % testing... +\advance\textwidth+26pt +\end{changemargin} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \putstring{x}{y}{angle}{scale}{gray}{string} +% gray: 0=black, 1=white + +\newcommand{\putstring}[6]{ +\special{!userdict begin /bop-hook{gsave #1 #2 translate +#3 rotate /Times-Roman findfont #4 scalefont setfont +0 0 moveto #5 setgray (#6) show grestore}def end} +} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% To change the margins of a document within the document, +% modifying the parameters listed on page 163 will not work. They +% can only be changed in the preamble of the document, i.e, before +% the \begin{document} statement. To adjust the margins within a +% document we define an environment which does it: + \newenvironment{changemargin}[2]{\begin{list}{}{ + \setlength{\topsep}{0pt}\setlength{\leftmargin}{0pt} + \setlength{\rightmargin}{0pt} + \setlength{\listparindent}{\parindent} + \setlength{\itemindent}{\parindent} + \setlength{\parsep}{0pt plus 1pt} + \addtolength{\leftmargin}{#1}\addtolength{\rightmargin}{#2} + }\item }{\end{list}} +% This environment takes two arguments, and will indent the left +% and right margins by their values, respectively. Negative values +% will cause the margins to be widened, so +% \begin{changemargin}{-1cm}{-1cm} widens the left and right margins +% by 1cm. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\newcommand{\Header}[2]{ +\pagestyle{myheadings} %%%%%%%%%% +\markboth{\bf \qquad #1 \hfill #2 \qquad}%%%%%%%%%% + {\bf \qquad #1 \hfill #2 \qquad}%%%%%%%%%% +} + +%%%%%%%%%%%%%%%%%%%%%% END dph useful macros %%%%%%%%%%-------------- + + +%%% +%%% Look for occurrences of five pound characters: #####, to locate places +%%% where updates are necessary +%%% + +%%% +%%% revision info +%%% +\newcommand{\Revision}{\mbox{\em% +%%% +%%% ##### Update the revision information +%%% +%Revision 0.0---16 Mar 2001 % my first draft, uncirculated +%Revision 0.1.1---27 Mar 2001 % Format change incorporated +%Revision 0.1.2---02 May 2001 % Four Columns added +%Revision 0.2.1---28 Dec 2001 % Comments incorperated +Revision 0.3.0---15 Jan 2021 % Fix errors in functions, improve explanation on EE_FRACS +%Revision 1.2.0 15 Dec 1999 % Comments incorperated +%Revision 1.0---02 Feb 1998 % reviewed, updated. +}} + + + +\hyphenation{pipe-line} +\hyphenation{pipe-lines} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\Header{Data Product Interface Document: /}{\Revision} +\begin{document} + + +%\putstring{x}{y}{angle}{scale}{gray}{string} +% gray: 0=black, 1=white +%\putstring{70}{40}{90}{40}{0.90}{D R A F T -DRAFT- D R A F T} +%%% ##### comment the following line out for actual releases +%\putdraft + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% title stuff, no need to change anything +%%% + +\begin{titlepage} + + \begin{tabular}{p{0.5\textwidth}>{\raggedleft}p{0.5\textwidth}} + \includegraphics[height=8cm]{Kavli_Logo} & \includegraphics[height=8cm]{cxc-logo} + \end{tabular} + + \begin{center} + \vspace*{.5in} + {\Huge\bf Chandra X-ray Center} + + \vspace*{1in} + + {\LARGE\bf mkgrmf LSF Input Data:} + + \vspace*{.2in} + {\LARGE\bf Data Product Interface Document:} + \vspace*{.2in} + + \Revision + + \vfill + + \begin{tabular}{|l|l|} + \hline + version & author\\\hline\hline + 0.3.0 & H. M. G\"unther\\\hline + 0.2.1 & David S. Davis\\\hline + 0.1.2 & David S. Davis\\\hline + 0.1.1 & David S. Davis\\\hline + \end{tabular} + \end{center} + \begin{tabular}{ll} + \textbf{To:} & Jonathan McDowell, SDS Group Leader\\ + & Janet DePonte Evans, DS Software Development Manager\\ + \end{tabular} + +\end{titlepage} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% update info +%%% +\pagenumbering{roman}\setcounter{page}{2} + +%%% +%%% ##### update as necessary +%%% + +\begin{center} +\begin{tabular}{|c|c|c|p{2.5in}|} \hline +\multicolumn{4}{|c|}{}\\[1mm] +\multicolumn{4}{|c|}{\bf Document and Change Control Log}\\[3mm]\hline +{\bf Date} & {\bf Version} & {\bf Section} & {\bf Status} \\ \hline +19 Mar 01& 0.1.0& all&Initial Draft \\\hline +23 Apr 01& 0.1.1& all&Format Changes \\\hline +02 May 01& 0.1.2& all&Four columns added \\\hline +21 Sep 01& 0.2.0& all&Revised \\\hline +28 Dec 01& 0.2.1& all&Revised \\\hline +15 Jan 21& 0.3.0& all & Bring definitions of functions in line with CIAO practice, add ACIS-I and HRC-I as detectors. \\\hline +%04 Feb 99& 1.1.0& all&Revived as a separate document \\\hline +%30 Apr 99& 1.1.1& 4.1&Added enumerated axis or radial coord\\\hline +%30 Apr 99& 1.1.1& 4.1&changed TTYPE names\\\hline +%14 Jun 99& 1.2.0& all&Revised document using comments from DPH,KJG,AR +%and JCM\\\hline +% +\hline +% +\end{tabular} +\end{center} + +\section*{Unresolved Issues} + +The following is a list of unresolved, un-reviewed, or un-implemented +items: + +\begin{enumerate} + +\item Defocused data is not yet addressed + +\end{enumerate} + +\clearpage + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +%%% table of contents, list of tables +%%% + +\tableofcontents +\clearpage +% \listoftables +% \clearpage + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\pagenumbering{arabic} +\section{Introduction} + +This document describes the interface to be employed in accessing +the PSF Library products, according to the requirements stipulated in +Applicable Document~\ref{appdoc:se03}.% +% + +\subsection{Purpose} + +The purpose of this document is to define the input data for the Line +Spread Function (generically referring to LSF) Library to be used in +Level 2 processing for the grating RMF generator (mkgrmf). +% + +\subsection{Scope} + +This interface shall apply to all Grating specific LSF +data products used by the tool {\tt mkgrmf} +and distributed to the CXC Data +Archive during the course of +the Chandra mission. + +\section{Applicable Documents} +The Applicable Documents required for background and detail on +grating products are as follows: +\begin{enumerate} + +\item\label{appdoc:data-prod} + AXAF Data Products Guide:\newline + \url{https://cxc.cfa.harvard.edu/ciao/data_products_guide/} +\item\label{appdoc:coord} + AXAF Coordinate Systems:\newline + \url{https://cxc.cfa.harvard.edu/ciao/manuals.html} (see section General - Chandra Coordinate Systems) +\item\label{appdoc:se03} + ASC AMO-2400 (SE03):\newline + ASC Data System Requirements (ASC.302.93.0008) +\item\label{appdoc:ds01} + ASC AMO-2401 (DS01) \newline + ASC Data System Software Design (ASC.500.93.0006) +\item\label{appdoc:fitsstd} + HEASARC FITS Standards:\newline + \url{https://heasarc.gsfc.nasa.gov/docs/heasarc/ofwg/ofwg_recomm.html} +\item\label{appdoc:ascfits} + ASC FITS File Designers' Guide:\newline + \url{https://cxc.cfa.harvard.edu/contrib/arots/fits/ascfits.ps} +\item\label{appdoc:heasarccaldb} + HEASARC FITS CALDB Standards:\newline + \url{https://heasarc.gsfc.nasa.gov/docs/heasarc/caldb/caldb_doc.html} +\item\label{appdoc:asccaldb} + AXAF CALDB Architecture\newline + \url{https://cxc.cfa.harvard.edu/caldb/index.html} +\end{enumerate} + +% synopsis for editing purposes... +% +% 1 appdoc:data-prod AXAF Data Products Guide +% 2 appdoc:coord AXAF Coordinate Systems +% 3 appdoc:se03 ASC AMO-2400 (SE03) +% 4 appdoc:ds01 ASC AMO-2401 (DS01) +% 7 appdoc:ascfits ASC FITS Designers' Guide +% 5 appdoc:fitsdef NOST 100-1.1, Definition of the FITS +% +% 6 appdoc:fitsstd HEASARC FITS Standards: +% 8 appdoc:hrcicd HRC Data Products Guide: +% 9 appdoc:acisicd ACIS Data Products Guide: + + +\section{Functional Description} + +\subsection{Data Content Summary} + +All Grating LSF Library files shall +consist of data files conforming to the FITS format (Applicable +Document~\ref{appdoc:fitsstd}). These files +contain header keyword entries and binary table (BINTABLE) extensions. +These files will contain a primary header, possibly null, followed +by a set of binary tables as described in Applicable +Document~\ref{appdoc:ascfits}. In addition, these files will conform to the +HEASARC CALDB conventions (Applicable Document~\ref{appdoc:heasarccaldb}) and +have CONTENT, EXTNAME,and HDUCLASS keywords that conform to +Applicable Document~\ref{appdoc:asccaldb}. + + +\subsection{Recipients and Utilization} + +The primary recipients, via distribution from the archive, of the LSF +Library are Chandra observers, who will utilize these data products for +scientific data analysis. The CXC may also make use of specific LSF +Library data products for instrument calibration, instrument and/or +spacecraft monitoring and trends analysis, and validation and +verification of the Level 0, Level 1, and Level 1.5 software and of +the data products themselves. + +\subsection{Pertinent Relationships with Other Interfaces} + +Changes to the definition of CXC FITS, as described in Applicable +Documents~\ref{appdoc:ascfits}, may affect the format of the PSF data +products described in the current document. + +\section{Assumptions and Constraints} + +It is assumed that these products are placed into an exportable calibration database +(CALDB) for users. + +\subsection{Products Not Covered} + +PSF products that are used for maintenance and diagnostic purposes +(those that are not supplied to the user for scientific data +analysis), or which are generic AXAF Level 2 products, are not +currently included within the interface defined by this document. + +\subsection{Substructure Definition and Format} + +The header components for the primary header and all binary table +extensions are defined and listed in the Applicable Documents. In +general, the column or row numbers in the example FITS headers +are arbirary unless otherwise indicated. It is the column name and +its attributes that specify the requirment. Additional columns not +specified here may be added to the file also long as they do not +violate the interface. Software used to process the data can +ignore the additional columns, copy them to the output file, or +optional use them for data processing. Likewise, HDU order is +arbitrary, except for the primary HDU which must be first. HDUs +are intended to be referenced by name, not position. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Access} +\subsection{Access Tools; Input/Output Protocol} + +Since LSF Library products obey the formatting rules described in +Applicable Documents~\ref{appdoc:ascfits}, +they may be accessed by any software that conforms to those standards, +including all versions of the FITSIO libraries that support the +BINTABLE extension. In addition, since they adhere to HEASARC +standards (Applicable Document~\ref{appdoc:fitsstd}), LSF data product +files are compatible with the input/output routines that constitute +the CXC data interface. + +%\subsection{Timing and Sequencing Characteristics} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\section{The File Structure for the Grating LSF Data} + +This section describes the LSF parameter library which is a FITS file +containing the LSF fit parameters for the Chandra gratings. Each file +will contain the parameters for one grating type. +The * in the table below denotes the ASC principal HDU. + +\begin{table}[h] +{\footnotesize +\noindent\begin{tabular}{|llcccccp{1.2in}|}\hline +HDU +& \sc HDU Type +& \sc EXTNAME +& \sc EXTVER +& \sc CONTENT +& \sc HDUCLAS1 +& \sc HDUCLAS3 +& Description +\\ +\hline +% +0 +& \sc NULL +& \nodata +& \nodata +& \nodata +& \nodata +& \nodata +& \nodata +\\ +% +1 (*) +& \sc BINTABLE +& \sc MEG +& 1 +& \sc LSF\_PARAM +& RESPONSE +& \sc LSF +& LSF coefficients +\\ +% +\\\hline +% +\end{tabular} +}% close \small +\caption{File structure for the table with the LSF fit coefficients} +\label{tab:fstruct} +\end{table} +% + +\subsection{File Names} + +The filename convention shall be + +$$\{ det\} \{grat\}\{order\}D \{date\} lsfparmN\{version\}.fits$$ + +where $\{det\}$ is one $acis$ (for ACIS-S\footnote{Consistency would require this to be named $aciss$ but previous versions of this ICD used $acis$ because they did not consider ACIS-I, which is rarely used for grating observations. For backwards compatibility, the name $acis$ is continued to be used for ACIS-S.}), $hrcs$, $acisi$, or $hrci$ and $\{grat\}$ is one of $leg$, $meg$, +or $heg$. $\{order\}$ gives the diffraction order of the grating. Negative orders are prefixed with ``-''; positive orders have no sign, i.e. ``-1'' and ``1'' are the negative and positive first diffraction order, respectively. +$\{date\}$ follows the date convention in Applicable +Document~\ref{appdoc:ascfits}. + +As an example the lsf file for the HRC-S using the LETG grating should +be of the form + +hrcsleg1D1999-07-22lsfparmN0000.fits + +while the file for the MEG using ACIS-S should be + +acismeg1D1999-07-22lsfparmN0001.fits + +\subsection{Column Descriptions} + +\begin{table}[h] +\begin{center} +{\small +\begin{tabular}{|c|c|c|c|c|c|p{1.8in}|} +\hline + & & & & & & \\ + \# + & TTYPE + & TUNIT + & TFORM + & TLMIN + & TLMAX + & \multicolumn{1}{|c|}{Comment}\\ + & & & & & & \\\hline +% + 1 + & NUM\_WIDTHS + & + & I + & 0 + & \sc TBD + & Number of Extraction Widths \\\hline +% + 2 + & WIDTH + & Degrees + & 3E + & 0 + & \sc TBD + & Extraction Width \\\hline +% + 3 + & NUM\_LAMBDAS + & + & J + & 0 + & \sc TBD + & Number of wavelength points \\\hline +% + 4 + & TG\_LAM\_LO + & Angstroms + & nD + & $0.0$ + & \sc TBD + & Low wavelength of the extraction region\\\hline +% + 5 + & TG\_LAM\_HI + & Angstroms + & nD + & $0.0$ + & \sc TBD + & High wavelength of the extraction region\\\hline +% + 6 + & LAMBDAS + & Angstroms + & nD + & $0.0$ + & \sc TBD + & Input Photon Wavelength \\\hline +% + 7 + & EE\_FRACS + & N/A + & mD + & $0.0$ + & $1.0$ + & Encircled Energy fraction\\\hline +% + 8 + & GAUSS$i$\_PARMS + & N/A + & kE + & N/A + & N/A + & vector containing Gaussian parameters\\\hline +% + 9 + & LORENTZ$i$\_PARMS + & N/A + & kE + & N/A + & N/A + & vector containing Lorentzian parameters\\\hline +% + 10 + & THETA\_MIN + & degrees + & E + & 0 + & N/A + & min off-axis angle\\\hline +% + 11 + & THETA\_MAX + & degrees + & E + & 0 + & N/A + & max off-axis angle for which this is valid\\\hline +% + 12 + & PHI\_MIN + & degrees + & E + & 0 + & N/A + & min azimuthal angle for which this is valid\\\hline +% + 13 + & PHI\_MAX + & degrees + & E + & 0 + & N/A + & max azimuthal angle for which this is valid\\\hline +% +% +\end{tabular} +}% close \small +\caption{Binary table with the LSF fit coefficients} +\label{tab:parms} +\end{center} +\end{table}% +The $i$ in parmeters 8 and 9 is currently set to 1 but multiple parameter +sets are allowed. So for instance if future fits include a second +Gaussian component along with the current parameters the lsf file +structure supports that as an additional column, e.g. GAUSS2\_PARM. +Also n is the number of wavelengths, m is 3$\times$n, and k is +3$\times$n$\times$NUM\_WIDTHS. +% +\subsubsection{Comments on the Columns} + +The {\tt NUM\_WIDTH} column give the number of widths for which the LSF +was extracted and tabulated. In the current incarnation +this value is three for the MEG and HEG files. For the LETG only one +width is currently implemented. + +The {\tt WIDTH} column gives the width, in degrees, of the extraction +region used to extract the LSF data. The next column gives the +number of wavelengths at which the LSF is tabluated. Currently these +must be the same for each extraction width and are assumed to be in +angstroms. The columns {\tt TG\_LAM\_LO} and {\tt TG\_LAM\_HI} give +that lower and upper wavelength of the box that was used to extract +the LSF data. The {\tt LAMBDA} column gives the wavelength of the peak +position of the LSF. + +The encircled energy fraction is tablulated in the {\tt EE\_FRAC} +column. The vector column containing the EE\_FRAC is a +2-dimensional vector with the ee\_frac for each wavelength as a vector +and additional rows are for the ee\_frac for each different width as +defined above. This means that the dimensionality of the vector will +be num\_lambdas $\times$ num\_widths. + + +%$$ \sum_{j=0}^{num\_widths-1} \sum_{i=0}^{num\_lambdas-1} +%{\rm ee\_vector}(i+j) = ee\_frac(i,j)$$ +% +%Each of the vectors containing the LSF fits parameters are +%arranged as a matrix and are 3 x NUM\_LAMBDAS x NUM\_WIDTHS. +%For the Gaussian parameters +% +%$$ \sum_{i=0}^{num\_widths-1} \sum_{j=0}^{num\_lambdas-1} \sum_{k=0}^2 +%{\rm Gaussian\_parms\_vector}(i+j+k) = {\rm gauss\_parms}(i,j,k)$$ +% + +The columns for the fit parameters shall be a matrix of +n$\times$j$\times$k where n is the number of parameters and +their order is + +\begin{obeylines} +gauss\_parms(0,j,k) = Gaussian amplitude, + +gauss\_parms(1,j,k) = Gaussian $\sigma$ in \AA, + +gauss\_parms(2,j,k) = peak position in \AA. +\end{obeylines} + +The number of elements is given by $j$ and the maximum value of $j$ is +NUM\_LAMBDAS. The number of widths is given by $k$. The function +parameters at a given j must be for +the wavelength range TG\_LAM\_LO(j) and TG\_LAM\_HI(j) and the maximum +value of $j$ is given by NUM\_WIDTHS. + +% +%For the Lorentzian parameters +% +%$$ \sum_{i=0}^{num\_widths-1} \sum_{j=0}^{num\_lambdas-1} +%{\rm \sum_{k=0}^2 Lorentzian\_parms\_vector}(i+j+k) = +%{\rm lore\_parms}(i,j,k)$$ +% + +For the Lorenzian parameters the order of the parameters in the matrix +shall be + +\begin{obeylines} +lorentzian\_parms(0,j,k) = Lorentzian amplitude, + +lorentzian\_parms(1,j,k) = Lorentzian width in \AA, + +lorentzian\_parms(2,j,k) = peak position in \AA, +\end{obeylines} +with the other elements obeying the convention for the Gaussian +parameters above. + +\subsection{Allowed Functional Forms} + +The functional forms that are allowed for the LSF in mkgrmf are +currently a Gaussian and a Lorentzian. + +\begin{equation}\label{eqn:gauss} + G(r) = \frac{A}{\sqrt{2\pi\sigma^2}} e^{\frac{-(r-r_0)^2}{2\sigma^2}} +\end{equation} + +where $A$ is the amplitude, $\sigma$ is the Gaussian width in angstroms and $r_0$ is the +peak of this component of the LSF. + +\begin{equation}\label{eqn:lorentz} + L(r) = \frac{A}{2\pi} \frac{FWHM}{(r - r_0)^2 + \left(\frac{FWHM}{2}\right)^2)} +\end{equation} + +where $A$ is the amplitude, $r_0$ is the peak position of the Lorenztian component in questions, which need not +be the same any of the other compoments, and $FWHM$ is the +full width of the line profile at half the maximum. + +\subsection{Normalization of components} +All Gaussian and Lorentzian components have an ampitude defined in their parameters. However, the total normalization of each RMF is given by the \texttt{EE\_FRACS} column. That means that for LSFs defined by just a single component, the given component amplitude is arbitrary. For LSFs with multiple components the amplitude of each component only matters in a relative sense: After adding up all LSF components, the LSF is normalized such that the sum over all channels is the number given in the \texttt{EE\_FRACS} column. If, for example, all amplitudes $A$ are doubled but the \texttt{EE\_FRACS} values is constant, the resulting LSF does not change. + + +\subsection{Size Estimates} + +The ASC primary extension of each file will have 13 columns +to describe the LSF parameters at each energy. The vector columns +are real floating point numbers so the size of the file can be +estimated by the number of entries $\times$ 11 (the number of +vector columns). So for a typical MEG LSF file with $\sim$2500 entries +the size of the data area should be 27500 bytes (11$\times$2500). + +\section{FITS Header Templates} + +The following header sections have been taken from the ASC +FITS file specifications. The example FITS headers given +here are examples only, the column numbers, axis numbers, and +keyword values are {\it not} necessarily those in the LSF data files. + +\subsection{Header Components with No Changes} + +\begin{itemize} + +\item{Mandatory component for the Image Primary Header (M)} + +\item{Mandatory component for Null Primary Header (M)} + +\item{Mandatory component for Binary Table extension (M)} + +\item{Mandatory component for Image extension (M)} + +\item{Full configuration control component (CC)} + +\item{Short configuration control component (Short CC)} + +\item{Configuration control component for null primary HDU (Null CC)} + +\end{itemize} + +\subsection{Header Components with Changes} + +\subsubsection{Full Timing Component (T)} + +\begin{verbatim} +DATE = '0000-00-00T00:00:00' / Date and time of file creation +TIMEUNIT= 's ' / Time unit +\end{verbatim} + +\subsubsection{Short Timing Component (Short T)} + +\begin{verbatim} +DATE = '0000-00-00T00:00:00' / Date and time of file creation +TIMEUNIT= 's ' / Time unit +\end{verbatim} + +\subsubsection{Full Observation info Component} + +\begin{verbatim} +MISSION = 'AXAF ' / Mission +INSTRUME= 'ACIS ' / Instrument +DETNAM = 'ACIS-S ' / Detector +GRATING = 'HETG ' / Grating +GRATTYP = 'MEG ' / Grating Type +\end{verbatim} + + + +\subsubsection{Grating Specific Components} +\begin{verbatim} +GRATING = 'HETG ' /Grating in use +GRATTYP = 'HEG ' /Grating data +TG_M = 1 +ORDER = 1 +CDTP0001= 'DATA ' /Virtual data set +CCLS0001= 'CPF ' /Basic Calibration file +CDES0001= 'MEG LSF parameters input for mkgrmf'/Description +CBD10001= 'GRATING(HETG)' +CBD20001= 'GRATTYPE(MEG)' +CBD30001= 'TG_M(1) ' +CBD40001= 'SHELL(0011)' +CBD50001= 'ORDER(1)' +CVSD0001= '1999-07-22T00:00:00' +CVST0001= '00:00:00' +CCNM0001= 'LSFPARM' +CBD10001= 'Energy(5)keV' /Energy range for PSF +CBD20001= 'THETA(0 - 2)arcmin' /Distance from optical axis for PSF +CBD30001= 'PHI(0.0 - 360.)deg' /Azimuthal angle for PSF + +\end{verbatim} + +% + +%\section{Focal Plane positions of the LSF} + + +\end{document} diff --git a/Kavli_Logo.pdf b/Kavli_Logo.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b16606bf8487c8f3304cb368abab978d67faf4b6 GIT binary patch literal 23030 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 Z_$u+h;4}G~QwT&1hL?HfR?=1``!8!I=$`-p literal 0 HcmV?d00001 diff --git a/cxc-logo.pdf b/cxc-logo.pdf new file mode 100644 index 0000000000000000000000000000000000000000..21756f02aa0d179f4a71773f1fdd2530bde9db51 GIT binary patch literal 85348 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 literal 0 HcmV?d00001