calculate_fields Subroutine

private subroutine calculate_fields(fields_func, g_in, phi_out, apar_out, bpar_out)

Calculates the fields consistent with the passed distribution function

Arguments

Type IntentOptional Attributes Name
procedure(invert_field_func) :: fields_func
complex, intent(in), dimension(:, :, :) :: g_in
complex, intent(out), dimension (:,:,:) :: phi_out
complex, intent(out), dimension (:,:,:) :: apar_out
complex, intent(out), dimension (:,:,:) :: bpar_out

Contents

Source Code


Source Code

  subroutine calculate_fields(fields_func, g_in, phi_out, apar_out, bpar_out)
    use nonlinear_terms, only: time_add_explicit_terms_field
    use job_manage, only: time_message
    procedure(invert_field_func) :: fields_func
    complex, dimension(:, :, :), intent(in) :: g_in
    complex, dimension (:,:,:), intent (out) :: phi_out, apar_out, bpar_out
    call time_message(.false., time_add_explicit_terms_field, 'Explicit terms - field')
    call fields_func(g_in, phi_out, apar_out, bpar_out, local_only = .true.)
    call time_message(.false., time_add_explicit_terms_field, 'Explicit terms - field')
  end subroutine calculate_fields