shaing_callen_wrappers.f90 Source File


This file depends on

sourcefile~~shaing_callen_wrappers.f90~~EfferentGraph sourcefile~shaing_callen_wrappers.f90 shaing_callen_wrappers.f90 sourcefile~constants.f90 constants.f90 sourcefile~shaing_callen_wrappers.f90->sourcefile~constants.f90 sourcefile~field_base.f90 field_base.f90 sourcefile~shaing_callen_wrappers.f90->sourcefile~field_base.f90 sourcefile~fieldline.f90 fieldline.f90 sourcefile~shaing_callen_wrappers.f90->sourcefile~fieldline.f90 sourcefile~fieldline_integrands.f90 fieldline_integrands.f90 sourcefile~shaing_callen_wrappers.f90->sourcefile~fieldline_integrands.f90 sourcefile~field_base.f90->sourcefile~constants.f90 sourcefile~fieldline.f90->sourcefile~constants.f90 sourcefile~fieldline_integrands.f90->sourcefile~constants.f90 sourcefile~fieldline_integrands.f90->sourcefile~field_base.f90

Files dependent on this one

sourcefile~~shaing_callen_wrappers.f90~~AfferentGraph sourcefile~shaing_callen_wrappers.f90 shaing_callen_wrappers.f90 sourcefile~shaing_callen.f90 shaing_callen.f90 sourcefile~shaing_callen.f90->sourcefile~shaing_callen_wrappers.f90 sourcefile~main.f90 main.f90 sourcefile~main.f90->sourcefile~shaing_callen.f90

Source Code

module shaing_callen_wrappers
    use constants, only: dp
    use fieldline_mod, only: fieldline_t
    use field_base, only: field_t
    implicit none
    private

    class(field_t), allocatable :: this_field
    type(fieldline_t) :: this_fieldline
    type(fieldline_t) :: null_fieldline
    real(dp) :: this_eta
    real(dp), parameter :: null_eta = -1.0_dp

    public :: this_field, this_fieldline, null_fieldline, this_eta, null_eta
    public :: wrapper_lambda_over_B_squared

contains

    function wrapper_lambda_over_B_squared(phi)
        use fieldline_integrands, only: lambda_over_B_squared

        real(dp), intent(in) :: phi
        real(dp) :: wrapper_lambda_over_B_squared

        real(dp) :: theta

        theta = this_fieldline%get_theta(phi)
        wrapper_lambda_over_B_squared = lambda_over_B_squared(this_field, &
                                                              theta, &
                                                              phi, &
                                                              this_eta)
    end function wrapper_lambda_over_B_squared

end module shaing_callen_wrappers