Fisher Forecast
Fisher Matrices can be used to forecast parameter uncertainties with few computational resources. They are encapsulated in the following struct
CosmoCentral.Fisherαβ
— TypeFisherαβ()
This struct contains the array with the Fisher Matrix.
We implement two different approaches to evaluate the Fisher Matrix:
- A field approach, where we consider the $a_{\ell m}$ to be the observable
- An estimator approach, where we consider the $C_\ell$'s to be the observable
If correctly implemented, the two approaches give the same result (Hamimeche & Lewis 2008, Carron 2012).
Field approach
The Fisher Matrix in the Field approach is evaluated by the following method
CosmoCentral.ForecastFisherαβ
— MethodForecastFisherαβ(PathCentralCℓ::String, Path∂Cℓ::String,
InputList::Vector{Dict{String, Vector{Any}}}, CosmologicalGrid::CosmologicalGrid)
This function evaluate the Fisher Matrix according to the following formula:
\[F_{\alpha \beta}=\sum_{\ell=\ell_{\min }}^{\ell_{\max }} \operatorname{Tr}\left \{[\boldsymbol{\Sigma}(\ell)]^{-1} \frac{\partial \mathbf{C}(\ell)}{\partial \alpha}[\boldsymbol{\Sigma}(\ell)]^{-1} \frac{\partial \mathbf{C}(\ell)}{\partial \beta}\right\},\]
where $\alpha$ and $\beta$ are parameters of the Fisher Matrix, $\ell$ are the multipoles, $\Sigma$ is the Covariance Matrix of the Field Approach and $\frac{\partial \mathbf{C}(\ell)}{\partial \alpha}$ is the Matrix of the derivatives of the $C_\ell$ wrt parameter $\alpha$.
Estimator approach
The Fisher Matrix in the Estimator approach is evaluated by the following method
CosmoCentral.ForecastFisherαβ
— MethodForecastFisherαβ(PathCentralCℓ::String, Path∂Cℓ::String,
InputList::Vector{Dict{String, Vector{Any}}}, CosmologicalGrid::CosmologicalGrid,
ciccio::String)
This function evaluate the Fisher Matrix according to the following formula:
\[F_{\alpha \beta}=\sum_{\ell=\ell_{\min }}^{\ell_{\max }} \operatorname{vecp} \left(\frac{\partial \mathbf{C}(\ell)}{\partial \alpha}\right)^{T} \left(\boldsymbol{\Xi}(\ell)\right)^{-1} \operatorname{vecp}\left(\frac{\partial \mathbf{C}(\ell)} {\partial \beta}\right),\]
where $\alpha$ and $\beta$ are parameters of the Fisher Matrix, $\ell$ are the multipoles, $\Xi$ is the Covariance Matrix of the Field Approach CℓCovariance
and $\frac{\partial \mathbf{C}(\ell)}{\partial \alpha}$ is the Matrix of the derivatives of the $C_\ell$ wrt parameter $\alpha$.
Plotting Fisher Matrix
Here we show plots for some Fisher Matrices (this code will probably soon released in a separate package).
canvas = FisherPlot.PrepareCanvas(BigLaTeXArray, central_values, limits, ticks, probes, colors,
PlotPars)
FisherPlot.PaintCorrMattrix!(canvas, central_values,
CosmoCentral.SelectCorrelationMatrix(FisherWL, pars_list), "deepskyblue3")
FisherPlot.PaintCorrMattrix!(canvas, central_values,
CosmoCentral.SelectCorrelationMatrix(FisherGCNew, pars_list), "darkorange1")
FisherPlot.PaintCorrMattrix!(canvas, central_values,
CosmoCentral.SelectCorrelationMatrix(FisherGCNewplusWL, pars_list), "green")
FisherPlot.PaintCorrMattrix!(canvas, central_values,
CosmoCentral.SelectCorrelationMatrix(FisherFinal, pars_list), "red")
canvas