Generate a per-rank filename:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | base_dir |
Output directory |
||
| character(len=*), | intent(in) | :: | prefix |
File prefix (e.g. “output” or “restart”) |
||
| integer, | intent(in) | :: | rank |
MPI rank number |
function output_rank_filename(base_dir, prefix, rank) result(fname) !! Generate a per-rank filename: <base_dir>/<prefix>_rank_NNNNNN.nc character(len=*), intent(in) :: base_dir !! Output directory character(len=*), intent(in) :: prefix !! File prefix (e.g. "output" or "restart") integer, intent(in) :: rank !! MPI rank number character(len=512) :: fname write (fname, '(A,"/",A,"_rank_",I6.6,".nc")') & trim(base_dir), trim(prefix), rank end function output_rank_filename