[docs]class BaseLikelihood:
"""
This is the base likelihood object. Base for all other likelihoods.
"""
def __init__(self, name):
self.name_ = name
[docs] def name(self):
"""
Name of the dataset
:return: name
"""
return self.name_
[docs] def setTheory(self, theory):
"""
Define a theoretical model to use in the likelihood
Parameters
------------
theory : object
Instance of BaseCosmology class.
For example, theory = LCDMCosmology()
:return: theory
"""
self.theory_ = theory
[docs] def theory(self):
"""
:return: theory
"""
return self.theory_
[docs] def freeParameters(self):
"""
:return: free parameters of the theory
"""
return self.theory_.freeParameters()
[docs] def updateParams(self, params):
"""
Update values of the model parameters
Parameters
----------
params : list
List of instance of Parameter class.
:return: list of updated parameters
"""
return self.theory_.updateParams(params)
def loglike(self):
return 0.0
def theory_loglike_prior(self):
return self.theory_.prior_loglike()
def loglike_wprior(self):
return self.loglike()+self.theory_.prior_loglike()