| Algorithm:
MPI-FDTD Do one time initialization work; Initialize fields, apply initial conditions; for t = 1 to tmax do for i, j, k = 1 to imax, jmax, kmax do Using MPI message passing, exchange magnetic fields with neighbors; Update electric fields using magnetic fields; Using MPI message passing, exchange updated electric fields with neighbors; Update magnetic fields using updated electric fields; Update fields at boundaries, apply boundary conditions; end end |
| Algorithm:
Hybrid-FDTD Do one time initialization work; Using OpenMP multithreading, initialize fields, apply initial conditions; for t = 1 to tmax do for i, j, k = 1 to imax, jmax, kmax do Using MPI message passing, exchange magnetic fields with neighbors; Using OpenMP multithreading, update electric fields using magnetic fields; Using MPI message passing, exchange updated electric fields with neighbors; Using OpenMP multithreading, update magnetic fields using updated electric fields; Using OpenMP multithreading, update fields at boundaries, apply boundary conditions; end end |

