37 public zero_parametrization_2d
42 type,
extends ( parametrized_function_2d ) :: zero_parametrization_2d
47 procedure :: set_param_number => zeroparametrized2dsetparamnumber
48 procedure :: init_parameters => zeroparametrized2dinitparams
49 procedure :: parameter_value => zeroparametrized2dparametervalues
52 procedure ::
value => zeroparametrized2dvalue
53 procedure :: first_derivative_x => zeroparametrized2dfirstderivativex
54 procedure :: first_derivative_y => zeroparametrized2dfirstderivativey
55 procedure :: second_derivative_x => zeroparametrized2dsecondderivativex
56 procedure :: second_derivative_y => zeroparametrized2dsecondderivativey
57 procedure :: second_derivative_xy => zeroparametrized2dsecondderivativexy
59 end type zero_parametrization_2d
69 subroutine zeroparametrized2dsetparamnumber( self )
73 class(zero_parametrization_2d) :: self
75 self%parameter_number = 0
77 end subroutine zeroparametrized2dsetparamnumber
82 subroutine zeroparametrized2dinitparams( self, array )
86 class(zero_parametrization_2d) :: self
87 real(dl),
dimension(self%parameter_number),
intent(in) :: array
89 end subroutine zeroparametrized2dinitparams
93 subroutine zeroparametrized2dparametervalues( self, i, value )
97 class(zero_parametrization_2d) :: self
98 integer ,
intent(in) :: i
99 real(dl),
intent(out) ::
value 103 end subroutine zeroparametrized2dparametervalues
107 function zeroparametrized2dvalue( self, x, y, eft_cache )
111 class(zero_parametrization_2d) :: self
112 real(dl),
intent(in) :: x
113 real(dl),
intent(in) :: y
114 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
115 real(dl) :: zeroparametrized2dvalue
117 zeroparametrized2dvalue = 0._dl
119 end function zeroparametrized2dvalue
123 function zeroparametrized2dfirstderivativex( self, x, y, eft_cache )
127 class(zero_parametrization_2d) :: self
128 real(dl),
intent(in) :: x
129 real(dl),
intent(in) :: y
130 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
131 real(dl) :: zeroparametrized2dfirstderivativex
133 zeroparametrized2dfirstderivativex = 0._dl
135 end function zeroparametrized2dfirstderivativex
139 function zeroparametrized2dfirstderivativey( self, x, y, eft_cache )
143 class(zero_parametrization_2d) :: self
144 real(dl),
intent(in) :: x
145 real(dl),
intent(in) :: y
146 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
147 real(dl) :: zeroparametrized2dfirstderivativey
149 zeroparametrized2dfirstderivativey = 0._dl
151 end function zeroparametrized2dfirstderivativey
155 function zeroparametrized2dsecondderivativex( self, x, y, eft_cache )
159 class(zero_parametrization_2d) :: self
160 real(dl),
intent(in) :: x
161 real(dl),
intent(in) :: y
162 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
163 real(dl) :: zeroparametrized2dsecondderivativex
165 zeroparametrized2dsecondderivativex = 0._dl
167 end function zeroparametrized2dsecondderivativex
171 function zeroparametrized2dsecondderivativey( self, x, y, eft_cache )
175 class(zero_parametrization_2d) :: self
176 real(dl),
intent(in) :: x
177 real(dl),
intent(in) :: y
178 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
179 real(dl) :: zeroparametrized2dsecondderivativey
181 zeroparametrized2dsecondderivativey = 0._dl
183 end function zeroparametrized2dsecondderivativey
187 function zeroparametrized2dsecondderivativexy( self, x, y, eft_cache )
191 class(zero_parametrization_2d) :: self
192 real(dl),
intent(in) :: x
193 real(dl),
intent(in) :: y
194 type(eftcamb_timestep_cache),
intent(in),
optional :: eft_cache
195 real(dl) :: zeroparametrized2dsecondderivativexy
197 zeroparametrized2dsecondderivativexy = 0._dl
199 end function zeroparametrized2dsecondderivativexy
This module contains the definition of the EFTCAMB caches. These are used to store parameters that ca...
This module contains the abstract class for generic parametrizations for 2D functions that are used b...
This module contains the definition of neutral parametrizations that can be used when parametrized fu...