Commit f798efb4 authored by Julien Lesgourgues's avatar Julien Lesgourgues
Browse files

new version with automatic documentation, curved galaxy number count,...

new version with automatic documentation, curved galaxy number count, ceff2_ur, cvis2_ur, reio_many_tanh, new z_max_pk scheme, inflation_behavior = analytical

* devel: (74 commits)
  Fixed a typo in the README
  Recompiled final version of documentation
  changes in chap3.md
  updated the end of Input section  in chap3.md
  updated pk_ref.pre
  updated the README
  updated version numb er to v2.5.0
  added small comments related to previous commits
  similar fix for case with sCl only
  fixed bug that prevented user form using nCl alone since commit 4c8c09a1
  changes by Francesco concerning nCls Limber threshold  and Bessel sampling
  added warning when k_NL of halofit too large; small bug fixes from Guido
  corrected small bug in spectra (relevant when outputing transfer function of dr in absnece of ur)
  corrected small error in recfast implementation, leading to negligible (~10^-6) error on Cls (Credits Sandro Pinto)
  corrected f_evo term in terms d0,d1 of number count
  Small formatting tweaks for the documentation
  completed README of doc
  Final version of the documentation
  changed a detail in a comment
  chapters 2 and 3 of documentation expanded
  ...
parents 1b0882f6 472ea080
......@@ -110,6 +110,8 @@ CLASS = class.o
TEST_LOOPS = test_loops.o
TEST_LOOPS_OMP = test_loops_omp.o
TEST_DEGENERACY = test_degeneracy.o
TEST_TRANSFER = test_transfer.o
......@@ -156,6 +158,9 @@ test_sigma: $(TOOLS) $(SOURCE) $(EXTERNAL) $(OUTPUT) $(TEST_SIGMA)
test_loops: $(TOOLS) $(SOURCE) $(EXTERNAL) $(OUTPUT) $(TEST_LOOPS)
$(CC) $(OPTFLAG) $(OMPFLAG) $(LDFLAG) -o $@ $(addprefix build/,$(notdir $^)) -lm
test_loops_omp: $(TOOLS) $(SOURCE) $(EXTERNAL) $(OUTPUT) $(TEST_LOOPS_OMP)
$(CC) $(OPTFLAG) $(OMPFLAG) $(LDFLAG) -o $@ $(addprefix build/,$(notdir $^)) -lm
test_stephane: $(TOOLS) $(SOURCE) $(EXTERNAL) $(OUTPUT) $(TEST_STEPHANE)
$(CC) $(OPTFLAG) $(OMPFLAG) $(LDFLAG) -o $@ $(addprefix build/,$(notdir $^)) -lm
......
==============================================
CLASS: Cosmic Linear Anisotropy Solving System
CLASS: Cosmic Linear Anisotropy Solving System {#mainpage}
==============================================
:Author: Julien Lesgourgues
Authors: Julien Lesgourgues and Thomas Tram
with several major inputs from other people, especially Thomas Tram,
as well as Benjamin Audren, Simon Prunet, Jesus Torrado, Miguel
Zumalacarregui, etc.
with several major inputs from other people, especially Benjamin
Audren, Simon Prunet, Jesus Torrado, Miguel Zumalacarregui, Francesco
Montanari, etc.
For download and information, see http://class-code.net
......@@ -21,11 +20,11 @@ After downloading the code, unpack the archive (tar -zxvf
class_v*.tar.gz), go to the class directory (cd class_v*/) and compile
(make clean; make class). If the first compilation attempt fails, you
may need to open the Makefile and adapt the name of the compiler
(default: gcc), of the optization flag (default: -O4) and of the
(default: gcc), of the optimization flag (default: -O4) and of the
OpenMP flag (default: -fopenmp; this flag is facultative, you are free
to compile without OpenMP if you don't want parallel execution; note
that you need the version 4.2 or higher of gcc to be able to compile
with -fopenmp. Several details on the CLASS compilation are given on
with -fopenmp). Several details on the CLASS compilation are given on
the wiki page
https://github.com/lesgourg/class_public/wiki/Installation
......@@ -37,7 +36,7 @@ To check that the code runs, type:
./class explanatory.ini
The explanatory.ini file is a reference input file, containing and
explaning the use of all possible input parameters. We recommend to
explaining the use of all possible input parameters. We recommend to
read it, to keep it unchanged (for future reference), and to create
for your own purposes some shorter input files, containing only the
input lines which are useful for you. Input files must have a *.ini
......@@ -49,14 +48,16 @@ one of them, and run with two input files, for instance:
./class test.ini cl_permille.pre
A simplified documentation can be found in the paper `CLASS I:
Overview <http://arxiv.org/abs/1104.2932>`_. On top of that, if you
wish to modify the code, you will find lots of comments directly into
the files. Other CLASS papers dedicated to various aspects of the code
are listed in the CLASS web page. Slides from CLASS-dedicated courses
can be seen at
The automatically-generated documentation is located in
doc/manual/html/index.html
doc/manual/CLASS_manual.pdf
On top of that, if you wish to modify the code, you will find lots of
comments directly in the files.
http://lesgourg.web.cern.ch/lesgourg/class-tour/class-tour.html
Python
------
To use CLASS from python, or ipython notebooks, or from the Monte
Python parameter extraction code, you need to compile not only the
......@@ -72,13 +73,13 @@ Plotting utility
Since version 2.3, the package includes an improved plotting script
called CPU.py (Class Plotting Utility), written by Benjamin Audren and
Jesus Torrado. It can plot the Cl's, the P(k) or any other CLASS
puput, for one or several models, as well as their ratio or percentage
output, for one or several models, as well as their ratio or percentage
difference. The syntax and list of available options is obtained by
typing 'pyhton CPU.py --help'. There is a similar script for MATLAB,
written by Thomas Tram. To use it, once in MATLAB, type 'help
plot_CLASS_output.m'
Developping the code
Developing the code
--------------------
If you want to develop the code, we suggest that you download it from
......@@ -96,9 +97,7 @@ Using the code
--------------
You can use CLASS freely, provided that in your publications, you cite
at least the paper `CLASS II: Approximation schemes
<http://arxiv.org/abs/1104.2933>`_. Feel free to cite more CLASS
papers!
at least the paper `CLASS II: Approximation schemes <http://arxiv.org/abs/1104.2933>`_. Feel free to cite more CLASS papers!
Support
-------
......
CLASS automatic documentation folders
=====================================
(Deanna Hooper, 25.03.2016)
* the automatically generated PDF manual can be found in
doc/manual/CLASS_MANUAL.pdf
* or you can open the html version (actually nicer) with your browser: just open the file
doc/manual/html/index.html
* the files in doc/input/ are auxiliary files for generating it
* if you wish to update this manual yourself using doxygen, look at instructions in section 6 of CLASS_MANUAL.pdf
Where to find information and documentation on CLASS?
======================================================
Author: Julien Lesgourgues
* __For what the code can actually compute__: all possible input parameters, all coded cosmological models, all functionalities, all observables, etc.: read the file `explanatory.ini` in the main `CLASS` directory: it is a reference file where we keep track of all possible input.
* __For the structure, style, and concrete aspects of the code__: this documentation; plus the slides of our `CLASS` lectures, for instance those from Tokyo 2014 available at
`https://www.dropbox.com/sh/ma5muh76sggwk8k/AABl_DDUBEzAjjdywMjeTya2a?dl=0`
in the folder `CLASS_Lecture_slides/`.
* __For the python wrapper of `CLASS`__: at the moment, the best is the slides from these lectures, for instance following the previous link and looking into
`CLASS_Lecture_slides/lecture7_wrapper.pdf`
and into
`IPython_Notebooks`
for example of python sessions. We will expand soon the documentation on this part with a dedicated webpage.
* __For the physics and equations used in the code__: mainly, the following papers:
- *Cosmological perturbation theory in the synchronous and conformal Newtonian gauges*
C. P. Ma and E. Bertschinger.
astro-ph/9506072
10.1086/176550
Astrophys. J. __455__, 7 (1995)
- *The Cosmic Linear Anisotropy Solving System (CLASS) II: Approximation schemes*
D. Blas, J. Lesgourgues and T. Tram.
arXiv:1104.2933 [astro-ph.CO]
10.1088/1475-7516/2011/07/034
JCAP __1107__, 034 (2011)
- *The Cosmic Linear Anisotropy Solving System (CLASS) IV: efficient implementation of non-cold relics*
J. Lesgourgues and T. Tram.
arXiv:1104.2935 [astro-ph.CO]
10.1088/1475-7516/2011/09/032
JCAP __1109__, 032 (2011)
- *Optimal polarisation equations in FLRW universes*
T. Tram and J. Lesgourgues.
arXiv:1305.3261 [astro-ph.CO]
10.1088/1475-7516/2013/10/002
JCAP __1310__, 002 (2013)
- *Fast and accurate CMB computations in non-flat FLRW universes*
J. Lesgourgues and T. Tram.
arXiv:1312.2697 [astro-ph.CO]
10.1088/1475-7516/2014/09/032
JCAP __1409__, no. 09, 032 (2014)
- *The CLASSgal code for Relativistic Cosmological Large Scale Structure*
E. Di Dio, F. Montanari, J. Lesgourgues and R. Durrer.
arXiv:1307.1459 [astro-ph.CO]
10.1088/1475-7516/2013/11/044
JCAP __1311__, 044 (2013)
This diff is collapsed.
This diff is collapsed.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{doxygen}
% Packages used by this style file
\RequirePackage{alltt}
\RequirePackage{array}
\RequirePackage{calc}
\RequirePackage{float}
\RequirePackage{ifthen}
\RequirePackage{verbatim}
\RequirePackage[table]{xcolor}
\RequirePackage{xtab}
%---------- Internal commands used in this style file ----------------
\newcommand{\ensurespace}[1]{%
\begingroup%
\setlength{\dimen@}{#1}%
\vskip\z@\@plus\dimen@%
\penalty -100\vskip\z@\@plus -\dimen@%
\vskip\dimen@%
\penalty 9999%
\vskip -\dimen@%
\vskip\z@skip% hide the previous |\vskip| from |\addvspace|
\endgroup%
}
\newcommand{\DoxyLabelFont}{}
\newcommand{\entrylabel}[1]{%
{%
\parbox[b]{\labelwidth-4pt}{%
\makebox[0pt][l]{\DoxyLabelFont#1}%
\vspace{1.5\baselineskip}%
}%
}%
}
\newenvironment{DoxyDesc}[1]{%
\ensurespace{4\baselineskip}%
\begin{list}{}{%
\settowidth{\labelwidth}{20pt}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{0pt}%
\setlength{\leftmargin}{\labelwidth+\labelsep}%
\renewcommand{\makelabel}{\entrylabel}%
}%
\item[#1]%
}{%
\end{list}%
}
\newsavebox{\xrefbox}
\newlength{\xreflength}
\newcommand{\xreflabel}[1]{%
\sbox{\xrefbox}{#1}%
\setlength{\xreflength}{\wd\xrefbox}%
\ifthenelse{\xreflength>\labelwidth}{%
\begin{minipage}{\textwidth}%
\setlength{\parindent}{0pt}%
\hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
\end{minipage}%
}{%
\parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
}%
}
%---------- Commands used by doxygen LaTeX output generator ----------
% Used by <pre> ... </pre>
\newenvironment{DoxyPre}{%
\small%
\begin{alltt}%
}{%
\end{alltt}%
\normalsize%
}
% Used by @code ... @endcode
\newenvironment{DoxyCode}{%
\par%
\scriptsize%
\begin{alltt}%
}{%
\end{alltt}%
\normalsize%
}
% Used by @example, @include, @includelineno and @dontinclude
\newenvironment{DoxyCodeInclude}{%
\DoxyCode%
}{%
\endDoxyCode%
}
% Used by @verbatim ... @endverbatim
\newenvironment{DoxyVerb}{%
\footnotesize%
\verbatim%
}{%
\endverbatim%
\normalsize%
}
% Used by @verbinclude
\newenvironment{DoxyVerbInclude}{%
\DoxyVerb%
}{%
\endDoxyVerb%
}
% Used by numbered lists (using '-#' or <ol> ... </ol>)
\newenvironment{DoxyEnumerate}{%
\enumerate%
}{%
\endenumerate%
}
% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
\newenvironment{DoxyItemize}{%
\itemize%
}{%
\enditemize%
}
% Used by description lists (using <dl> ... </dl>)
\newenvironment{DoxyDescription}{%
\description%
}{%
\enddescription%
}
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
% (only if caption is specified)
\newenvironment{DoxyImage}{%
\begin{figure}[H]%
\begin{center}%
}{%
\end{center}%
\end{figure}%
}
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
% (only if no caption is specified)
\newenvironment{DoxyImageNoCaption}{%
\begin{center}%
}{%
\end{center}%
}
% Used by @attention
\newenvironment{DoxyAttention}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @author and @authors
\newenvironment{DoxyAuthor}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @date
\newenvironment{DoxyDate}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @invariant
\newenvironment{DoxyInvariant}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @note
\newenvironment{DoxyNote}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @post
\newenvironment{DoxyPostcond}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @pre
\newenvironment{DoxyPrecond}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @copyright
\newenvironment{DoxyCopyright}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @remark
\newenvironment{DoxyRemark}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @return and @returns
\newenvironment{DoxyReturn}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @since
\newenvironment{DoxySince}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @see
\newenvironment{DoxySeeAlso}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @version
\newenvironment{DoxyVersion}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @warning
\newenvironment{DoxyWarning}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @internal
\newenvironment{DoxyInternal}[1]{%
\paragraph*{#1}%
}{%
}
% Used by @par and @paragraph
\newenvironment{DoxyParagraph}[1]{%
\begin{list}{}{%
\settowidth{\labelwidth}{40pt}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{-4pt}%
\renewcommand{\makelabel}{\entrylabel}%
}%
\item[#1]%
}{%
\end{list}%
}
% Used by parameter lists
\newenvironment{DoxyParams}[2][]{%
\par%
\nopagebreak[1]
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablefirsthead{}%
\tablehead{}%
\ifthenelse{\equal{#1}{}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.805\textwidth}|}}%
{\ifthenelse{\equal{#1}{1}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.678\textwidth}|}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
>{\centering\hspace{0pt}}p{0.15\textwidth}|%
>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.501\textwidth}|}}%
}\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for fields of simple structs
\newenvironment{DoxyFields}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.15\textwidth}|%
p{0.63\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for parameters within a detailed function description
\newenvironment{DoxyParamCaption}{%
\renewcommand{\item}[2][]{##1 {\em ##2}}%
}{%
}
% Used by return value lists
\newenvironment{DoxyRetVals}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used by exception lists
\newenvironment{DoxyExceptions}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used by template parameter lists
\newenvironment{DoxyTemplParams}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for member lists
\newenvironment{DoxyCompactItemize}{%
\begin{itemize}%
\setlength{\itemsep}{-3pt}%
\setlength{\parsep}{0pt}%
\setlength{\topsep}{0pt}%
\setlength{\partopsep}{0pt}%
}{%
\end{itemize}%
}
% Used for member descriptions
\newenvironment{DoxyCompactList}{%
\begin{list}{}{%
\setlength{\leftmargin}{0.5cm}%
\setlength{\itemsep}{0pt}%
\setlength{\parsep}{0pt}%
\setlength{\topsep}{0pt}%
\renewcommand{\makelabel}{\hfill}%
}%
}{%
\end{list}%
}
% Used for reference lists (@bug, @deprecated, @todo, etc.)
\newenvironment{DoxyRefList}{%
\begin{list}{}{%
\setlength{\labelwidth}{10pt}%
\setlength{\leftmargin}{\labelwidth}%
\addtolength{\leftmargin}{\labelsep}%
\renewcommand{\makelabel}{\xreflabel}%
}%
}{%
\end{list}%
}
% Used by @bug, @deprecated, @todo, etc.
\newenvironment{DoxyRefDesc}[1]{%
\begin{list}{}{%
\renewcommand\makelabel[1]{\textbf{##1}}%
\settowidth\labelwidth{\makelabel{#1}}%
\setlength\leftmargin{\labelwidth+\labelsep}%
}%
}{%
\end{list}%
}
% Used by parameter lists and simple sections
\newenvironment{Desc}
{\begin{list}{}{%
\settowidth{\labelwidth}{40pt}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{-4pt}%
\renewcommand{\makelabel}{\entrylabel}%
}