Sets up parameters used when creating the MPI derived type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(particle_set), | intent(inout) | :: | this |
Set of Lagrangian objects |
||
| type(MPI_Datatype), | intent(out), | allocatable | :: | types(:) |
Array of types |
|
| integer, | intent(out), | allocatable | :: | lengths(:) |
Array of lengths |
|
| integer(kind=MPI_ADDRESS_KIND), | intent(out), | allocatable | :: | displacement(:) |
Array of displacements |
impure subroutine particle_set_SetMPIDataTypeParams(this,types,lengths,displacement) !> Sets up parameters used when creating the MPI derived type. use mpi_f08 implicit none class(particle_set), intent(inout) :: this !! Set of Lagrangian objects type(MPI_Datatype), intent(out), & allocatable :: types(:) !! Array of types integer, intent(out), & allocatable :: lengths(:) !! Array of lengths integer(kind=MPI_ADDRESS_KIND), & intent(out), & allocatable :: displacement(:) !! Array of displacements select case (this%part_type) case (PP_TYPE_DEFAULT) call particle_set_SetMPIDataTypeParams_default(this,types,lengths,displacement) case (PP_TYPE_BASSET ) call particle_set_SetMPIDataTypeParams_BH (this,types,lengths,displacement) case default call this%parallel%Stop("Unknown particle type") end select return end subroutine particle_set_SetMPIDataTypeParams