kernels.f90 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. interface
  2. subroutine helm3d_f(nd, zk, sources, charge, ns, ztarg, nt, pot, thresh) !bind(C, name="helm3d_f_")
  3. implicit none
  4. integer *4, intent(in) :: nd
  5. complex *8, intent(in) :: zk
  6. real *8, intent(in) :: sources(*)
  7. complex *8, intent(in) :: charge(*)
  8. integer *4, intent(in) :: ns
  9. real *8, intent(in) :: ztarg(*)
  10. integer *4, intent(in) :: nt
  11. complex *8, intent(out):: pot(*)
  12. real *8, intent(in) :: thresh
  13. end subroutine
  14. subroutine helm3d_vec_f(nd, zk, sources, charge, ns, ztarg, nt, pot, thresh) !bind(C, name="helm3d_vec_f_")
  15. implicit none
  16. integer *4, intent(in) :: nd
  17. complex *8, intent(in) :: zk
  18. real *8, intent(in) :: sources(*)
  19. complex *8, intent(in) :: charge(*)
  20. integer *4, intent(in) :: ns
  21. real *8, intent(in) :: ztarg(*)
  22. integer *4, intent(in) :: nt
  23. complex *8, intent(out):: pot(*)
  24. real *8, intent(in) :: thresh
  25. end subroutine
  26. subroutine helm3d_d(nd, zk, sources, charge, ns, ztarg, nt, pot, thresh) !bind(C, name="helm3d_d_")
  27. implicit none
  28. integer *4, intent(in) :: nd
  29. complex*16, intent(in) :: zk
  30. real *8, intent(in) :: sources(*)
  31. complex*16, intent(in) :: charge(*)
  32. integer *4, intent(in) :: ns
  33. real *8, intent(in) :: ztarg(*)
  34. integer *4, intent(in) :: nt
  35. complex*16, intent(out):: pot(*)
  36. real *8, intent(in) :: thresh
  37. end subroutine
  38. subroutine helm3d_vec_d(nd, zk, sources, charge, ns, ztarg, nt, pot, thresh) !bind(C, name="helm3d_vec_d_")
  39. implicit none
  40. integer *4, intent(in) :: nd
  41. complex*16, intent(in) :: zk
  42. real *8, intent(in) :: sources(*)
  43. complex*16, intent(in) :: charge(*)
  44. integer *4, intent(in) :: ns
  45. real *8, intent(in) :: ztarg(*)
  46. integer *4, intent(in) :: nt
  47. complex*16, intent(out):: pot(*)
  48. real *8, intent(in) :: thresh
  49. end subroutine
  50. end interface