-
Notifications
You must be signed in to change notification settings - Fork 234
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'dev/gfdl' into user/wfc/remap_scheme
- Loading branch information
Showing
21 changed files
with
839 additions
and
155 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
!> A set of dummy interfaces for compiling the MOM6 drifters code | ||
module MOM_particles_mod | ||
|
||
use MOM_grid, only : ocean_grid_type | ||
use MOM_time_manager, only : time_type, get_date, operator(-) | ||
use MOM_variables, only : thermo_var_ptrs | ||
|
||
|
||
use particles_types_mod, only: particles, particles_gridded | ||
|
||
public particles_run, particles_init, particles_save_restart, particles_end | ||
|
||
contains | ||
|
||
!> Initializes particles container "parts" | ||
subroutine particles_init(parts, Grid, Time, dt, u, v) | ||
! Arguments | ||
type(particles), pointer, intent(out) :: parts !< Container for all types and memory | ||
type(ocean_grid_type), target, intent(in) :: Grid !< Grid type from parent model | ||
type(time_type), intent(in) :: Time !< Time type from parent model | ||
real, intent(in) :: dt !< particle timestep in seconds | ||
real, dimension(:,:,:),intent(in) :: u !< Zonal velocity field | ||
real, dimension(:,:,:),intent(in) :: v !< Meridional velocity field | ||
|
||
end subroutine particles_init | ||
|
||
!> The main driver the steps updates particles | ||
subroutine particles_run(parts, time, uo, vo, ho, tv, stagger) | ||
! Arguments | ||
type(particles), pointer :: parts !< Container for all types and memory | ||
type(time_type), intent(in) :: time !< Model time | ||
real, dimension(:,:,:),intent(in) :: uo !< Ocean zonal velocity (m/s) | ||
real, dimension(:,:,:),intent(in) :: vo !< Ocean meridional velocity (m/s) | ||
real, dimension(:,:,:),intent(in) :: ho !< Ocean layer thickness [H ~> m or kg m-2] | ||
type(thermo_var_ptrs), intent(in) :: tv !< structure containing pointers to available thermodynamic fields | ||
integer, optional, intent(in) :: stagger !< Flag for whether velocities are staggered | ||
|
||
end subroutine particles_run | ||
|
||
|
||
!>Save particle locations (and sometimes other vars) to restart file | ||
subroutine particles_save_restart(parts,temp,salt) | ||
! Arguments | ||
type(particles), pointer :: parts !< Container for all types and memory | ||
real,dimension(:,:,:),optional,intent(in) :: temp !< Optional container for temperature | ||
real,dimension(:,:,:),optional,intent(in) :: salt !< Optional container for salinity | ||
|
||
end subroutine particles_save_restart | ||
|
||
!> Deallocate all memory and disassociated pointer | ||
subroutine particles_end(parts,temp,salt) | ||
! Arguments | ||
type(particles), pointer :: parts !< Container for all types and memory | ||
real,dimension(:,:,:),optional,intent(in) :: temp !< Optional container for temperature | ||
real,dimension(:,:,:),optional,intent(in) :: salt !< Optional container for salinity | ||
|
||
end subroutine particles_end | ||
|
||
end module MOM_particles_mod |
Oops, something went wrong.