Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(WeightObj_t), | intent(in) | :: | weights | |||
real(kind=dp), | intent(in) | :: | bVal | |||
real(kind=dp), | intent(in) | :: | negSwitches | |||
real(kind=dp), | intent(in) | :: | posSwitches |
function minus_switching_single(weights, bVal, negSwitches, posSwitches) result(prob)
type(WeightObj_t), intent(in) :: weights
real(dp), intent(in) :: bVal, negSwitches, posSwitches
real(dp) :: prob
real(dp) :: plus, minus
plus = weights%proc%plus(posSwitches, bVal, weights%dat)
minus = weights%proc%minus(negSwitches, bVal, weights%dat)
prob = 1.0_dp - calcStayingProb(minus, plus, bVal)
end function minus_switching_single