get_lfac_from_velocity Subroutine

public pure subroutine get_lfac_from_velocity(v, lfac)

Uses

  • proc~~get_lfac_from_velocity~~UsesGraph proc~get_lfac_from_velocity get_lfac_from_velocity module~mod_global_parameters mod_global_parameters proc~get_lfac_from_velocity->module~mod_global_parameters module~mod_basic_types mod_basic_types module~mod_global_parameters->module~mod_basic_types module~mod_connectivity mod_connectivity module~mod_global_parameters->module~mod_connectivity module~mod_constants mod_constants module~mod_global_parameters->module~mod_constants module~mod_physicaldata mod_physicaldata module~mod_global_parameters->module~mod_physicaldata module~mod_variables mod_variables module~mod_global_parameters->module~mod_variables mpi mpi module~mod_global_parameters->mpi module~mod_variables->module~mod_basic_types

Get Lorentz factor from velocity

Arguments

Type IntentOptional Attributes Name
double precision, intent(in), dimension(3) :: v
double precision, intent(out) :: lfac

Called by

proc~~get_lfac_from_velocity~~CalledByGraph proc~get_lfac_from_velocity get_lfac_from_velocity proc~gca_create_particles gca_create_particles proc~gca_create_particles->proc~get_lfac_from_velocity proc~lorentz_create_particles Lorentz_create_particles proc~lorentz_create_particles->proc~get_lfac_from_velocity proc~particles_create particles_create proc~particles_create->proc~gca_create_particles proc~particles_create->proc~lorentz_create_particles proc~main main proc~main->proc~particles_create program~agile agile program~agile->proc~main

Source Code

  pure subroutine get_lfac_from_velocity(v,lfac)
    use mod_global_parameters, only: ndir, c_norm
    double precision,dimension(3), intent(in)       :: v
    double precision, intent(out)                      :: lfac

    if (relativistic) then
       lfac = 1.0d0 / sqrt(1.0d0 - sum(v(:)**2)/c_norm**2)
    else
       lfac = 1.0d0
    end if

  end subroutine get_lfac_from_velocity