conv.sh 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. #!/bin/bash
  2. CORES=16;
  3. export EXEC=examples/bin/fmm_cheb
  4. # Set run parameters
  5. declare -a nodes=();
  6. declare -a cores=();
  7. declare -a mpi_proc=();
  8. declare -a threads=();
  9. declare -a testcase=();
  10. declare -a n_pts=();
  11. declare -a m=();
  12. declare -a q=();
  13. declare -a tol=();
  14. declare -a depth=();
  15. declare -a unif=();
  16. declare -a adap=();
  17. declare -a max_time=();
  18. ###################################################################################################
  19. # SMOOTH INPUT, LAPLACE KERNEL, SINGLE NODE CONVERGENCE RESULTS #
  20. ###################################################################################################
  21. # m=10, q=9, tol=1e-{0,1,2,3,4,5,6}
  22. nodes+=( 1 1 1 1 1 1 1 :)
  23. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  24. mpi_proc+=( 1 1 1 1 1 1 1 :)
  25. threads+=( 1 1 1 1 1 1 1 :)
  26. testcase+=( 1 1 1 1 1 1 1 :)
  27. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  28. m+=( 10 10 10 10 10 10 10 :)
  29. q+=( 9 9 9 9 9 9 9 :)
  30. tol+=( 1e-0 1e-1 1e-2 1e-3 1e-4 1e-5 1e-6 :)
  31. depth+=( 15 15 15 15 15 15 15 :)
  32. unif+=( 1 1 1 1 1 1 1 :)
  33. adap+=( 1 1 1 1 1 1 1 :)
  34. max_time+=( 1000000 1000000 1000000 1000000 1000000 1000000 1000000 :)
  35. # m=10, q=14, tol=1e-{0,1,2,3,4,5,6,7}
  36. nodes+=( 1 1 1 1 1 1 1 1 :)
  37. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  38. mpi_proc+=( 1 1 1 1 1 1 1 1 :)
  39. threads+=( 1 1 1 1 1 1 1 1 :)
  40. testcase+=( 1 1 1 1 1 1 1 1 :)
  41. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  42. m+=( 10 10 10 10 10 10 10 10 :)
  43. q+=( 14 14 14 14 14 14 14 14 :)
  44. tol+=( 1e-0 1e-1 1e-2 1e-3 1e-4 1e-5 1e-6 1e-7 :)
  45. depth+=( 15 15 15 15 15 15 15 15 :)
  46. unif+=( 1 1 1 1 1 1 1 1 :)
  47. adap+=( 1 1 1 1 1 1 1 1 :)
  48. max_time+=( 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 :)
  49. # m={4,6,8,10,12}, q=9, tol=1e-4
  50. nodes+=( 1 1 1 1 1 :)
  51. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  52. mpi_proc+=( 1 1 1 1 1 :)
  53. threads+=( 1 1 1 1 1 :)
  54. testcase+=( 1 1 1 1 1 :)
  55. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  56. m+=( 4 6 8 10 12 :)
  57. q+=( 9 9 9 9 9 :)
  58. tol+=( 1e-4 1e-4 1e-4 1e-4 1e-4 :)
  59. depth+=( 15 15 15 15 15 :)
  60. unif+=( 1 1 1 1 1 :)
  61. adap+=( 1 1 1 1 1 :)
  62. max_time+=( 1000000 1000000 1000000 1000000 1000000 :)
  63. # m={4,6,8,10,12}, q=14, tol=1e-4
  64. nodes+=( 1 1 1 1 1 : :)
  65. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} : :)
  66. mpi_proc+=( 1 1 1 1 1 : :)
  67. threads+=( 1 1 1 1 1 : :)
  68. testcase+=( 1 1 1 1 1 : :)
  69. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) : :)
  70. m+=( 4 6 8 10 12 : :)
  71. q+=( 14 14 14 14 14 : :)
  72. tol+=( 1e-4 1e-4 1e-4 1e-4 1e-4 : :)
  73. depth+=( 15 15 15 15 15 : :)
  74. unif+=( 1 1 1 1 1 : :)
  75. adap+=( 1 1 1 1 1 : :)
  76. max_time+=( 1000000 1000000 1000000 1000000 1000000 : :)
  77. ###################################################################################################
  78. # DISCONTINUOUS SPHERE, LAPLACE KERNEL, SINGLE NODE CONVERGENCE RESULTS #
  79. ###################################################################################################
  80. # m=10, q=9, depth={4,5,6,7,8,9}
  81. nodes+=( 1 1 1 1 1 1 :)
  82. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  83. mpi_proc+=( 1 1 1 1 1 1 :)
  84. threads+=( 1 1 1 1 1 1 :)
  85. testcase+=( 2 2 2 2 2 2 :)
  86. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  87. m+=( 10 10 10 10 10 10 :)
  88. q+=( 9 9 9 9 9 9 :)
  89. tol+=( 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 :)
  90. depth+=( 4 5 6 7 8 9 :)
  91. unif+=( 1 1 1 1 1 1 :)
  92. adap+=( 1 1 1 1 1 1 :)
  93. max_time+=( 1000000 1000000 1000000 1000000 1000000 1000000 :)
  94. # m=10, q=14, depth={4,5,6,7,8,9}
  95. nodes+=( 1 1 1 1 1 1 : :)
  96. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} : :)
  97. mpi_proc+=( 1 1 1 1 1 1 : :)
  98. threads+=( 1 1 1 1 1 1 : :)
  99. testcase+=( 2 2 2 2 2 2 : :)
  100. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) : :)
  101. m+=( 10 10 10 10 10 10 : :)
  102. q+=( 14 14 14 14 14 14 : :)
  103. tol+=( 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 : :)
  104. depth+=( 4 5 6 7 8 9 : :)
  105. unif+=( 1 1 1 1 1 1 : :)
  106. adap+=( 1 1 1 1 1 1 : :)
  107. max_time+=( 1000000 1000000 1000000 1000000 1000000 1000000 : :)
  108. ###################################################################################################
  109. # SMOOTH INPUT, STOKES KERNEL, SINGLE NODE CONVERGENCE RESULTS #
  110. ###################################################################################################
  111. # m={4,6,8,10,12}, q=9, tol=1e-4
  112. nodes+=( 1 1 1 1 1 :)
  113. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  114. mpi_proc+=( 1 1 1 1 1 :)
  115. threads+=( 1 1 1 1 1 :)
  116. testcase+=( 3 3 3 3 3 :)
  117. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  118. m+=( 4 6 8 10 12 :)
  119. q+=( 9 9 9 9 9 :)
  120. tol+=( 1e-4 1e-4 1e-4 1e-4 1e-4 :)
  121. depth+=( 15 15 15 15 15 :)
  122. unif+=( 1 1 1 1 1 :)
  123. adap+=( 1 1 1 1 1 :)
  124. max_time+=( 1000000 1000000 1000000 1000000 1000000 :)
  125. # m={4,6,8,10,12}, q=14, tol=1e-4
  126. nodes+=( 1 1 1 1 1 : :)
  127. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} : :)
  128. mpi_proc+=( 1 1 1 1 1 : :)
  129. threads+=( 1 1 1 1 1 : :)
  130. testcase+=( 3 3 3 3 3 : :)
  131. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) : :)
  132. m+=( 4 6 8 10 12 : :)
  133. q+=( 14 14 14 14 14 : :)
  134. tol+=( 1e-4 1e-4 1e-4 1e-4 1e-4 : :)
  135. depth+=( 15 15 15 15 15 : :)
  136. unif+=( 1 1 1 1 1 : :)
  137. adap+=( 1 1 1 1 1 : :)
  138. max_time+=( 1000000 1000000 1000000 1000000 1000000 : :)
  139. ###################################################################################################
  140. # SMOOTH INPUT, HELMHOLTZ KERNEL, SINGLE NODE CONVERGENCE RESULTS #
  141. ###################################################################################################
  142. # m={4,6,8,10,12}, q=9, tol=1e-5
  143. nodes+=( 1 1 1 1 1 :)
  144. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  145. mpi_proc+=( 1 1 1 1 1 :)
  146. threads+=( 1 1 1 1 1 :)
  147. testcase+=( 5 5 5 5 5 :)
  148. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) :)
  149. m+=( 4 6 8 10 12 :)
  150. q+=( 9 9 9 9 9 :)
  151. tol+=( 1e-5 1e-5 1e-5 1e-5 1e-5 :)
  152. depth+=( 10 10 10 10 10 :)
  153. unif+=( 1 1 1 1 1 :)
  154. adap+=( 1 1 1 1 1 :)
  155. max_time+=( 10000000 10000000 10000000 10000000 10000000 :)
  156. # m={4,6,8,10,12}, q=14, tol=1e-5
  157. nodes+=( 1 1 1 1 1 : :)
  158. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} : :)
  159. mpi_proc+=( 1 1 1 1 1 : :)
  160. threads+=( 1 1 1 1 1 : :)
  161. testcase+=( 5 5 5 5 5 : :)
  162. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) $((8**1)) : :)
  163. m+=( 4 6 8 10 12 : :)
  164. q+=( 14 14 14 14 14 : :)
  165. tol+=( 1e-5 1e-5 1e-5 1e-5 1e-5 : :)
  166. depth+=( 10 10 10 10 10 : :)
  167. unif+=( 1 1 1 1 1 : :)
  168. adap+=( 1 1 1 1 1 : :)
  169. max_time+=( 10000000 10000000 10000000 10000000 10000000 : :)
  170. ###################################################################################################
  171. # Export arrays
  172. export nodes_="$(declare -p nodes)";
  173. export cores_="$(declare -p cores)";
  174. export mpi_proc_="$(declare -p mpi_proc)";
  175. export threads_="$(declare -p threads)";
  176. export testcase_="$(declare -p testcase)";
  177. export n_pts_="$(declare -p n_pts)";
  178. export m_="$(declare -p m)";
  179. export q_="$(declare -p q)";
  180. export tol_="$(declare -p tol)";
  181. export depth_="$(declare -p depth)";
  182. export unif_="$(declare -p unif)";
  183. export adap_="$(declare -p adap)";
  184. export max_time_="$(declare -p max_time)";
  185. export RESULT_FNAME=$(basename ${0%.*}).out;
  186. export WORK_DIR=$(dirname ${PWD}/$0)/..
  187. cd ${WORK_DIR}
  188. TERM_WIDTH=$(stty size | cut -d ' ' -f 2)
  189. ./scripts/.submit_jobs.sh | cut -b -${TERM_WIDTH}