Given a data set and a cosmological model, CAMEL can be used to perform:

- A best fit estimation
- A profile likelihood for a given parameter
- A MCMC (Markov Chain Monte Carlo)

For each case, you will find a different executable.

All executables share the same parameter file.

## Write CMB Power Spectra

To write a CMB power spectrum given some parameters, use the executable `writeSpectra`

writeSpectra parfile(in) lmax(in) cl.fits(out)

TODO: describe OUTPUT

## Compute χ^{2} (and check your parmeter file)

To compute χ^{2} for a given set of parameters and combination of likelihoods, use the executable `writeChi2`

writeChi2 parfile(in) [clfile(out)]

TODO: describe OUTPUT

## Parameter scan

To compute χ^{2} for several values of one parameter (all other parameters being fixed) based on a combination of likelihoods, use the executable `ScanParam`

ScanParam parfile(in) varname xmin xmax Npt

TODO: describe OUTPUT

The previous executables can be run interactively.

**From now on all the followig ones should be run in batch mode**

cc-in2p3 users: see some scripts for submitting the follwing jobs under ` work/batch_cc`

## Best-fit estimation

To perform a bestfit estimation, use the executable `Minimize`

Minimize parfile(in) bestfit(out) [covmat(out)]

TODO: describe OUTPUT

## Profile

To run a profile likelihood, use the executable `profile`

Profile parfile(in) varname xmin xmax Npt

In practice, it is usually less time consuming to perform `Npt`

independent best-fit estimations (using Minimize) for each value of the parameter `varname`

between `xmin`

and `xmax`

since all the fits are performed in parallel
while the Profile code will perform them one after the other.

- parfile is a parameter file (look here)
- varname is the variable you want to profile with the same name as in the parameter file e.g. n_s
- xmin is the minimum value of varname for the profile you want to build e.g. 0.8
- xmax is the maximum value of varname for the profile you want to build e.g. 1.
- Npt is the number of points between xmin and xmax for which you want to find the chi2min e.g. 5

you should keep back the printout file.

## Monte Carlo Markov Chain (MCMC)

To run a MCMC chain, use the executable `mcmc`

mcmc parfile(in) samplesfile(out)

TODO: describe OUTPUT