PSyclone 2.3.1__tar.gz → 2.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3176) hide show
  1. PSyclone-2.5.0/.github/workflows/compilation.yml +134 -0
  2. PSyclone-2.5.0/.github/workflows/lfric_test.yml +160 -0
  3. PSyclone-2.5.0/.github/workflows/mlc_config.json +14 -0
  4. PSyclone-2.5.0/.github/workflows/nemo_tests.yml +226 -0
  5. PSyclone-2.5.0/.github/workflows/python-package.yml +166 -0
  6. PSyclone-2.5.0/.github/workflows/repo-sync.yml +87 -0
  7. PSyclone-2.5.0/.gitignore +27 -0
  8. PSyclone-2.5.0/.gitmodules +9 -0
  9. PSyclone-2.5.0/.readthedocs.yaml +10 -0
  10. PSyclone-2.5.0/LICENSE +29 -0
  11. PSyclone-2.5.0/PKG-INFO +51 -0
  12. PSyclone-2.5.0/apt.txt +38 -0
  13. PSyclone-2.5.0/changelog +2981 -0
  14. PSyclone-2.5.0/config/psyclone.cfg +164 -0
  15. PSyclone-2.5.0/doc/README.md +43 -0
  16. PSyclone-2.5.0/doc/_ext/apilinks.py +90 -0
  17. PSyclone-2.5.0/doc/bibliography/references.bib +36 -0
  18. PSyclone-2.5.0/doc/developer_guide/.readthedocs.yaml +66 -0
  19. PSyclone-2.5.0/doc/developer_guide/2level_psyir.png +0 -0
  20. PSyclone-2.5.0/doc/developer_guide/APIs.rst +1315 -0
  21. PSyclone-2.5.0/doc/developer_guide/_static/theme_overrides.css +17 -0
  22. PSyclone-2.5.0/doc/developer_guide/cells_distributed.dia +0 -0
  23. PSyclone-2.5.0/doc/developer_guide/cells_distributed.png +0 -0
  24. PSyclone-2.5.0/doc/developer_guide/cells_global.dia +0 -0
  25. PSyclone-2.5.0/doc/developer_guide/cells_global.png +0 -0
  26. PSyclone-2.5.0/doc/developer_guide/code_snippets/newnode.py +86 -0
  27. PSyclone-2.5.0/doc/developer_guide/coding-style.rst +266 -0
  28. PSyclone-2.5.0/doc/developer_guide/conf.py +368 -0
  29. PSyclone-2.5.0/doc/developer_guide/dependency.rst +669 -0
  30. PSyclone-2.5.0/doc/developer_guide/dofs_cont_annexed.dia +0 -0
  31. PSyclone-2.5.0/doc/developer_guide/dofs_cont_annexed.png +0 -0
  32. PSyclone-2.5.0/doc/developer_guide/dofs_cont_global.dia +0 -0
  33. PSyclone-2.5.0/doc/developer_guide/dofs_cont_global.png +0 -0
  34. PSyclone-2.5.0/doc/developer_guide/dofs_cont_halos.dia +0 -0
  35. PSyclone-2.5.0/doc/developer_guide/dofs_cont_halos.png +0 -0
  36. PSyclone-2.5.0/doc/developer_guide/dofs_disc_distributed.dia +0 -0
  37. PSyclone-2.5.0/doc/developer_guide/dofs_disc_distributed.png +0 -0
  38. PSyclone-2.5.0/doc/developer_guide/dofs_disc_global.dia +0 -0
  39. PSyclone-2.5.0/doc/developer_guide/dofs_disc_global.png +0 -0
  40. PSyclone-2.5.0/doc/developer_guide/index.rst +72 -0
  41. PSyclone-2.5.0/doc/developer_guide/lfric_colouring.png +0 -0
  42. PSyclone-2.5.0/doc/developer_guide/modules.rst +298 -0
  43. PSyclone-2.5.0/doc/developer_guide/multigrid.png +0 -0
  44. PSyclone-2.5.0/doc/developer_guide/parsing.rst +366 -0
  45. PSyclone-2.5.0/doc/developer_guide/pip_requirements.txt +43 -0
  46. PSyclone-2.5.0/doc/developer_guide/psy_data.rst +1289 -0
  47. PSyclone-2.5.0/doc/developer_guide/psyir.rst +1091 -0
  48. PSyclone-2.5.0/doc/developer_guide/psyir_backends.rst +402 -0
  49. PSyclone-2.5.0/doc/developer_guide/psyir_symbols.rst +338 -0
  50. PSyclone-2.5.0/doc/developer_guide/sympy.rst +239 -0
  51. PSyclone-2.5.0/doc/developer_guide/transformations.rst +556 -0
  52. PSyclone-2.5.0/doc/developer_guide/working_practises.rst +653 -0
  53. PSyclone-2.5.0/doc/logo/psyclone_v1.0.png +0 -0
  54. PSyclone-2.5.0/doc/logo/psyclone_v1.0.xcf +0 -0
  55. PSyclone-2.5.0/doc/logo/psyclone_v1.0_small.png +0 -0
  56. PSyclone-2.5.0/doc/logo/psyclone_v1.0_small.xcf +0 -0
  57. PSyclone-2.5.0/doc/psyad/user_guide/.readthedocs.yaml +63 -0
  58. PSyclone-2.5.0/doc/psyad/user_guide/conf.py +90 -0
  59. PSyclone-2.5.0/doc/psyad/user_guide/implementation.rst +627 -0
  60. PSyclone-2.5.0/doc/psyad/user_guide/index.rst +75 -0
  61. PSyclone-2.5.0/doc/psyad/user_guide/introduction.rst +61 -0
  62. PSyclone-2.5.0/doc/psyad/user_guide/psyad_command.rst +209 -0
  63. PSyclone-2.5.0/doc/reference_guide/.readthedocs.yaml +66 -0
  64. PSyclone-2.5.0/doc/reference_guide/doxygen.config +2427 -0
  65. PSyclone-2.5.0/doc/reference_guide/pip_requirements.txt +44 -0
  66. PSyclone-2.5.0/doc/reference_guide/source/.gitignore +1 -0
  67. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.alg_gen.rst +39 -0
  68. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.core.rst +98 -0
  69. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.core.single_variable_access_info.rst +35 -0
  70. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.core.variables_access_info.rst +25 -0
  71. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.alg_invoke_2_psy_call_trans.rst +25 -0
  72. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.kernel_module_inline_trans.rst +10 -0
  73. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.raise_psyir_2_alg_trans.rst +25 -0
  74. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.rst +66 -0
  75. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.go_symbol_table.rst +10 -0
  76. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.gocean_constants.rst +25 -0
  77. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.kernel.psyir.rst +35 -0
  78. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.kernel.rst +33 -0
  79. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.rst +46 -0
  80. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_alg_invoke_2_psy_call_trans.rst +10 -0
  81. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.raise_psyir_2_gocean_kern_trans.rst +35 -0
  82. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.rst +24 -0
  83. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.lfric_alg.rst +25 -0
  84. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.psyir.lfric_alg_invoke_call.rst +25 -0
  85. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.psyir.lfric_kernel_functor.rst +45 -0
  86. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.psyir.rst +64 -0
  87. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.rst +84 -0
  88. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.arg_index_to_metadata_index.rst +10 -0
  89. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kern_call_invoke_arg_list.rst +25 -0
  90. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.columnwise_operator_arg_metadata.rst +25 -0
  91. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.common_arg_metadata.rst +25 -0
  92. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.common_declaration_metadata.rst +25 -0
  93. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.common_meta_arg_metadata.rst +25 -0
  94. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.common_metadata.rst +25 -0
  95. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.evaluator_targets_metadata.rst +25 -0
  96. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.field_arg_metadata.rst +25 -0
  97. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.field_vector_arg_metadata.rst +25 -0
  98. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.inter_grid_arg_metadata.rst +25 -0
  99. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.inter_grid_vector_arg_metadata.rst +25 -0
  100. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.lfric_kernel_metadata.rst +25 -0
  101. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_args_metadata.rst +25 -0
  102. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_funcs_arg_metadata.rst +25 -0
  103. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_funcs_metadata.rst +25 -0
  104. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_mesh_arg_metadata.rst +25 -0
  105. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_mesh_metadata.rst +25 -0
  106. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_ref_element_arg_metadata.rst +25 -0
  107. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.meta_ref_element_metadata.rst +25 -0
  108. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.operates_on_metadata.rst +25 -0
  109. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.operator_arg_metadata.rst +25 -0
  110. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.psyir.rst +25 -0
  111. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.rst +40 -0
  112. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.scalar_arg_metadata.rst +25 -0
  113. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel.shapes_metadata.rst +25 -0
  114. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_builtins.rst +715 -0
  115. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_collection.rst +25 -0
  116. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_extract_driver_creator.rst +10 -0
  117. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_fields.rst +25 -0
  118. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_invoke.rst +25 -0
  119. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_invokes.rst +25 -0
  120. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_kern.rst +25 -0
  121. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_kern_call_factory.rst +25 -0
  122. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_kern_metadata.rst +25 -0
  123. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_loop.rst +25 -0
  124. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_loop_bounds.rst +25 -0
  125. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_run_time_checks.rst +25 -0
  126. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_scalar_args.rst +25 -0
  127. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_stencils.rst +25 -0
  128. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_symbol_table.rst +10 -0
  129. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_types.rst +10 -0
  130. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.metadata_to_arguments_rules.rst +10 -0
  131. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.rst +273 -0
  132. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.raise_psyir_2_lfric_alg_trans.rst +25 -0
  133. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.raise_psyir_2_lfric_kern_trans.rst +35 -0
  134. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.rst +23 -0
  135. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.utils.rst +10 -0
  136. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_arrayrange2loop_trans.rst +25 -0
  137. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.rst +110 -0
  138. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.dynamo0p3.rst +275 -0
  139. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.gocean1p0.rst +185 -0
  140. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.parse.module_info.rst +10 -0
  141. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.parse.module_manager.rst +10 -0
  142. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.parse.rst +61 -0
  143. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyGen.rst +195 -0
  144. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.common.adjoint_utils.rst +35 -0
  145. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.common.rst +18 -0
  146. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.lfric.lfric_adjoint.rst +10 -0
  147. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.lfric.lfric_adjoint_harness.rst +10 -0
  148. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.lfric.rst +19 -0
  149. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.domain.rst +19 -0
  150. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.rst +23 -0
  151. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyad.tl2ad.rst +30 -0
  152. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.debug_writer.rst +10 -0
  153. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.rst +25 -0
  154. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.frontend.rst +20 -0
  155. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.frontend.sympy_reader.rst +10 -0
  156. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.acc_clauses.rst +45 -0
  157. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.acc_directives.rst +125 -0
  158. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.dynamic_omp_task_directive.rst +10 -0
  159. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.if_block.rst +10 -0
  160. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.intrinsic_call.rst +10 -0
  161. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.omp_directives.rst +175 -0
  162. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.omp_task_directive.rst +10 -0
  163. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.operation.rst +45 -0
  164. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.rst +916 -0
  165. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.while_loop.rst +10 -0
  166. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.datatypes.rst +75 -0
  167. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.interfaces.rst +10 -0
  168. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.intrinsic_symbol.rst +25 -0
  169. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.rst +388 -0
  170. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.symbol_table.rst +10 -0
  171. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.tools.read_write_info.rst +10 -0
  172. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.tools.rst +54 -0
  173. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.acc_update_trans.rst +10 -0
  174. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.hoist_loop_bound_expr_trans.rst +25 -0
  175. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.inline_trans.rst +25 -0
  176. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.array_reduction_base_trans.rst +10 -0
  177. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.intrinsic2code_trans.rst +10 -0
  178. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.maxval2loop_trans.rst +10 -0
  179. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.minval2loop_trans.rst +10 -0
  180. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.product2loop_trans.rst +10 -0
  181. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.rst +30 -0
  182. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.sum2loop_trans.rst +10 -0
  183. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.omp_loop_trans.rst +10 -0
  184. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.omp_target_trans.rst +10 -0
  185. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.omp_task_trans.rst +10 -0
  186. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.parallel_loop_trans.rst +10 -0
  187. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.reference2arrayrange_trans.rst +10 -0
  188. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.replace_induction_variables_trans.rst +25 -0
  189. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.rst +413 -0
  190. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.rst +41 -0
  191. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.core.rst +23 -0
  192. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.core.single_variable_access_info_test.rst +10 -0
  193. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.core.variables_access_info_test.rst +10 -0
  194. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.gocean_build.rst +10 -0
  195. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.lfric_build_test.rst +10 -0
  196. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.parse.conftest.rst +10 -0
  197. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.parse.module_info_test.rst +10 -0
  198. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.parse.module_manager_test.rst +10 -0
  199. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.parse.rst +24 -0
  200. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.debug_writer_test.rst +10 -0
  201. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_common_block_test.rst +10 -0
  202. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_routine_test.rst +10 -0
  203. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_unsupported_declns_test.rst +10 -0
  204. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.rst +32 -0
  205. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_alloc_handler_test.rst +10 -0
  206. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_call_handler_test.rst +10 -0
  207. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_common_block_test.rst +10 -0
  208. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_dealloc_handler_test.rst +10 -0
  209. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_include_test.rst +10 -0
  210. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_intrinsic_handler_test.rst +10 -0
  211. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_parameter_stmts_test.rst +10 -0
  212. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_part_ref_test.rst +10 -0
  213. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_save_stmts_test.rst +10 -0
  214. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_select_case_test.rst +10 -0
  215. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.rst +50 -0
  216. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.sympy_reader_test.rst +10 -0
  217. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.rst +52 -0
  218. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.tests.utils_test.rst +10 -0
  219. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.transformations.rst +245 -0
  220. PSyclone-2.5.0/doc/reference_guide/source/autogenerated/psyclone.utils.rst +10 -0
  221. PSyclone-2.5.0/doc/reference_guide/source/conf.py +213 -0
  222. PSyclone-2.5.0/doc/reference_guide/source/index.rst +40 -0
  223. PSyclone-2.5.0/doc/thebigpicture.mm +528 -0
  224. PSyclone-2.5.0/doc/user_guide/.readthedocs.yaml +66 -0
  225. PSyclone-2.5.0/doc/user_guide/_static/theme_overrides.css +17 -0
  226. PSyclone-2.5.0/doc/user_guide/algorithm_layer.rst +147 -0
  227. PSyclone-2.5.0/doc/user_guide/built_ins.rst +319 -0
  228. PSyclone-2.5.0/doc/user_guide/conf.py +394 -0
  229. PSyclone-2.5.0/doc/user_guide/configuration.rst +331 -0
  230. PSyclone-2.5.0/doc/user_guide/dag.png +0 -0
  231. PSyclone-2.5.0/doc/user_guide/dynamo0p3.rst +3902 -0
  232. PSyclone-2.5.0/doc/user_guide/dynamo0p3_topclasses.dot +26 -0
  233. PSyclone-2.5.0/doc/user_guide/dynamo0p3_topclasses.png +0 -0
  234. PSyclone-2.5.0/doc/user_guide/dynamo0p3_topclasses.svg +195 -0
  235. PSyclone-2.5.0/doc/user_guide/examples.rst +748 -0
  236. PSyclone-2.5.0/doc/user_guide/getting_going.rst +526 -0
  237. PSyclone-2.5.0/doc/user_guide/gocean1p0.rst +916 -0
  238. PSyclone-2.5.0/doc/user_guide/grid_offset_choices.png +0 -0
  239. PSyclone-2.5.0/doc/user_guide/grids_SW_stagger.png +0 -0
  240. PSyclone-2.5.0/doc/user_guide/index.rst +137 -0
  241. PSyclone-2.5.0/doc/user_guide/introduction.rst +95 -0
  242. PSyclone-2.5.0/doc/user_guide/kernel_layer.rst +168 -0
  243. PSyclone-2.5.0/doc/user_guide/libraries.rst +211 -0
  244. PSyclone-2.5.0/doc/user_guide/make.bat +190 -0
  245. PSyclone-2.5.0/doc/user_guide/nemo.rst +211 -0
  246. PSyclone-2.5.0/doc/user_guide/pip_requirements.txt +43 -0
  247. PSyclone-2.5.0/doc/user_guide/profiling.rst +544 -0
  248. PSyclone-2.5.0/doc/user_guide/psy_data.rst +257 -0
  249. PSyclone-2.5.0/doc/user_guide/psy_layer.rst +219 -0
  250. PSyclone-2.5.0/doc/user_guide/psyclone_command.rst +424 -0
  251. PSyclone-2.5.0/doc/user_guide/psyclone_kern.rst +617 -0
  252. PSyclone-2.5.0/doc/user_guide/psyir.rst +832 -0
  253. PSyclone-2.5.0/doc/user_guide/psyke.rst +552 -0
  254. PSyclone-2.5.0/doc/user_guide/schedule_with_indices.png +0 -0
  255. PSyclone-2.5.0/doc/user_guide/system_specific_setup.rst +117 -0
  256. PSyclone-2.5.0/doc/user_guide/transformations.rst +1094 -0
  257. PSyclone-2.5.0/doc/user_guide/tutorial.rst +63 -0
  258. PSyclone-2.5.0/examples/.gitignore +11 -0
  259. PSyclone-2.5.0/examples/Makefile +47 -0
  260. PSyclone-2.5.0/examples/common.mk +103 -0
  261. PSyclone-2.5.0/examples/gocean/Makefile +39 -0
  262. PSyclone-2.5.0/examples/gocean/README.md +94 -0
  263. PSyclone-2.5.0/examples/gocean/eg1/.gitignore +12 -0
  264. PSyclone-2.5.0/examples/gocean/eg1/Makefile +115 -0
  265. PSyclone-2.5.0/examples/gocean/eg1/README.md +77 -0
  266. PSyclone-2.5.0/examples/gocean/eg1/dag.ipynb +976 -0
  267. PSyclone-2.5.0/examples/gocean/eg1/ompt_alg.f90 +105 -0
  268. PSyclone-2.5.0/examples/gocean/eg1/opencl_transformation.py +83 -0
  269. PSyclone-2.5.0/examples/gocean/eg1/openmp.ipynb +132 -0
  270. PSyclone-2.5.0/examples/gocean/eg1/openmp_taskloop_trans.py +78 -0
  271. PSyclone-2.5.0/examples/gocean/eg1/runme.py +83 -0
  272. PSyclone-2.5.0/examples/gocean/eg1/runme_dag.py +90 -0
  273. PSyclone-2.5.0/examples/gocean/eg1/runme_loop_fuse.py +101 -0
  274. PSyclone-2.5.0/examples/gocean/eg1/runme_openacc.py +125 -0
  275. PSyclone-2.5.0/examples/gocean/eg1/runme_openmp.py +108 -0
  276. PSyclone-2.5.0/examples/gocean/eg2/.gitignore +7 -0
  277. PSyclone-2.5.0/examples/gocean/eg2/Makefile +123 -0
  278. PSyclone-2.5.0/examples/gocean/eg2/README.md +106 -0
  279. PSyclone-2.5.0/examples/gocean/eg2/acc_prof_transform.py +69 -0
  280. PSyclone-2.5.0/examples/gocean/eg2/acc_transform.py +79 -0
  281. PSyclone-2.5.0/examples/gocean/eg2/alg.f90 +99 -0
  282. PSyclone-2.5.0/examples/gocean/eg2/alg_gen.f90 +44 -0
  283. PSyclone-2.5.0/examples/gocean/eg2/inc_field_0_mod.f90 +35 -0
  284. PSyclone-2.5.0/examples/gocean/eg2/inc_field_mod.f90 +79 -0
  285. PSyclone-2.5.0/examples/gocean/eg3/.gitignore +1 -0
  286. PSyclone-2.5.0/examples/gocean/eg3/Makefile +113 -0
  287. PSyclone-2.5.0/examples/gocean/eg3/README.md +133 -0
  288. PSyclone-2.5.0/examples/gocean/eg3/alg.f90 +103 -0
  289. PSyclone-2.5.0/examples/gocean/eg3/alg_gen.f90 +45 -0
  290. PSyclone-2.5.0/examples/gocean/eg3/compute_cu_mod.f90 +89 -0
  291. PSyclone-2.5.0/examples/gocean/eg3/compute_cv_mod.f90 +85 -0
  292. PSyclone-2.5.0/examples/gocean/eg3/compute_h_mod.f90 +85 -0
  293. PSyclone-2.5.0/examples/gocean/eg3/compute_z_mod.f90 +103 -0
  294. PSyclone-2.5.0/examples/gocean/eg3/ocl_trans.py +81 -0
  295. PSyclone-2.5.0/examples/gocean/eg3/psy_gen.f90 +496 -0
  296. PSyclone-2.5.0/examples/gocean/eg4/.gitignore +5 -0
  297. PSyclone-2.5.0/examples/gocean/eg4/Makefile +101 -0
  298. PSyclone-2.5.0/examples/gocean/eg4/README.md +143 -0
  299. PSyclone-2.5.0/examples/gocean/eg4/acc_transform.py +83 -0
  300. PSyclone-2.5.0/examples/gocean/eg4/alg_gen.f90 +27 -0
  301. PSyclone-2.5.0/examples/gocean/eg4/alg_kern_use_var.f90 +82 -0
  302. PSyclone-2.5.0/examples/gocean/eg4/alg_nested_use.f90 +50 -0
  303. PSyclone-2.5.0/examples/gocean/eg4/another_mod.f90 +47 -0
  304. PSyclone-2.5.0/examples/gocean/eg4/data_mod.f90 +52 -0
  305. PSyclone-2.5.0/examples/gocean/eg4/kern_call_kern_mod.f90 +62 -0
  306. PSyclone-2.5.0/examples/gocean/eg4/kern_nested_use_mod.f90 +59 -0
  307. PSyclone-2.5.0/examples/gocean/eg4/kern_use_var_mod.f90 +66 -0
  308. PSyclone-2.5.0/examples/gocean/eg4/ocl_transform.py +80 -0
  309. PSyclone-2.5.0/examples/gocean/eg4/psy_gen.f90 +53 -0
  310. PSyclone-2.5.0/examples/gocean/eg5/Makefile +38 -0
  311. PSyclone-2.5.0/examples/gocean/eg5/README.md +49 -0
  312. PSyclone-2.5.0/examples/gocean/eg5/extract/.gitignore +7 -0
  313. PSyclone-2.5.0/examples/gocean/eg5/extract/Makefile +161 -0
  314. PSyclone-2.5.0/examples/gocean/eg5/extract/README.md +141 -0
  315. PSyclone-2.5.0/examples/gocean/eg5/extract/alg.f90 +33 -0
  316. PSyclone-2.5.0/examples/gocean/eg5/extract/driver-main-init.f90 +136 -0
  317. PSyclone-2.5.0/examples/gocean/eg5/extract/driver-main-update.f90 +91 -0
  318. PSyclone-2.5.0/examples/gocean/eg5/extract/extract_transform.py +76 -0
  319. PSyclone-2.5.0/examples/gocean/eg5/extract/init_field_mod.f90 +72 -0
  320. PSyclone-2.5.0/examples/gocean/eg5/extract/main.f90 +39 -0
  321. PSyclone-2.5.0/examples/gocean/eg5/extract/update_field_mod.f90 +85 -0
  322. PSyclone-2.5.0/examples/gocean/eg5/nan/.gitignore +4 -0
  323. PSyclone-2.5.0/examples/gocean/eg5/nan/Makefile +114 -0
  324. PSyclone-2.5.0/examples/gocean/eg5/nan/README.md +77 -0
  325. PSyclone-2.5.0/examples/gocean/eg5/nan/alg.f90 +25 -0
  326. PSyclone-2.5.0/examples/gocean/eg5/nan/init_field_mod.f90 +76 -0
  327. PSyclone-2.5.0/examples/gocean/eg5/nan/test.x90 +84 -0
  328. PSyclone-2.5.0/examples/gocean/eg5/nan/test_nan_transform.py +78 -0
  329. PSyclone-2.5.0/examples/gocean/eg5/nan/update_field_mod.f90 +81 -0
  330. PSyclone-2.5.0/examples/gocean/eg5/profile/.gitignore +4 -0
  331. PSyclone-2.5.0/examples/gocean/eg5/profile/Makefile +174 -0
  332. PSyclone-2.5.0/examples/gocean/eg5/profile/README.md +136 -0
  333. PSyclone-2.5.0/examples/gocean/eg5/profile/alg.f90 +29 -0
  334. PSyclone-2.5.0/examples/gocean/eg5/profile/init_field_mod.f90 +72 -0
  335. PSyclone-2.5.0/examples/gocean/eg5/profile/test.x90 +83 -0
  336. PSyclone-2.5.0/examples/gocean/eg5/profile/update_field_mod.f90 +76 -0
  337. PSyclone-2.5.0/examples/gocean/eg5/readonly/.gitignore +4 -0
  338. PSyclone-2.5.0/examples/gocean/eg5/readonly/Makefile +113 -0
  339. PSyclone-2.5.0/examples/gocean/eg5/readonly/README.md +93 -0
  340. PSyclone-2.5.0/examples/gocean/eg5/readonly/alg.f90 +34 -0
  341. PSyclone-2.5.0/examples/gocean/eg5/readonly/init_field_mod.f90 +81 -0
  342. PSyclone-2.5.0/examples/gocean/eg5/readonly/psy.f90 +194 -0
  343. PSyclone-2.5.0/examples/gocean/eg5/readonly/read_only_transform.py +76 -0
  344. PSyclone-2.5.0/examples/gocean/eg5/readonly/test.x90 +90 -0
  345. PSyclone-2.5.0/examples/gocean/eg5/readonly/update_field_mod.f90 +105 -0
  346. PSyclone-2.5.0/examples/gocean/eg6/Makefile +45 -0
  347. PSyclone-2.5.0/examples/gocean/eg6/alg.f90 +96 -0
  348. PSyclone-2.5.0/examples/gocean/eg6/backends_transform.py +73 -0
  349. PSyclone-2.5.0/examples/gocean/eg6/inc_field_mod.f90 +84 -0
  350. PSyclone-2.5.0/examples/gocean/eg7/Makefile +46 -0
  351. PSyclone-2.5.0/examples/gocean/eg7/alg.f90 +96 -0
  352. PSyclone-2.5.0/examples/gocean/eg7/alg_transform.py +53 -0
  353. PSyclone-2.5.0/examples/gocean/eg7/inc_field_mod.f90 +84 -0
  354. PSyclone-2.5.0/examples/lfric/Makefile +38 -0
  355. PSyclone-2.5.0/examples/lfric/README.md +401 -0
  356. PSyclone-2.5.0/examples/lfric/code/dg_matrix_vector_kernel_mod.F90 +136 -0
  357. PSyclone-2.5.0/examples/lfric/code/gw_mixed_schur_preconditioner_alg_mod.x90 +247 -0
  358. PSyclone-2.5.0/examples/lfric/code/matrix_vector_kernel_mod.F90 +132 -0
  359. PSyclone-2.5.0/examples/lfric/code/testkern_mod.F90 +82 -0
  360. PSyclone-2.5.0/examples/lfric/code/testkern_write_any_mod.f90 +82 -0
  361. PSyclone-2.5.0/examples/lfric/eg1/Makefile +53 -0
  362. PSyclone-2.5.0/examples/lfric/eg1/single_invoke.x90 +53 -0
  363. PSyclone-2.5.0/examples/lfric/eg10/Makefile +65 -0
  364. PSyclone-2.5.0/examples/lfric/eg10/intergrid_3levels.x90 +52 -0
  365. PSyclone-2.5.0/examples/lfric/eg11/.gitignore +2 -0
  366. PSyclone-2.5.0/examples/lfric/eg11/Makefile +92 -0
  367. PSyclone-2.5.0/examples/lfric/eg11/async_script.py +82 -0
  368. PSyclone-2.5.0/examples/lfric/eg11/driver.f90 +41 -0
  369. PSyclone-2.5.0/examples/lfric/eg11/helmholtz_solver_alg_mod.f90 +14 -0
  370. PSyclone-2.5.0/examples/lfric/eg11/helmholtz_solver_alg_mod.x90 +67 -0
  371. PSyclone-2.5.0/examples/lfric/eg11/helmholtz_solver_alg_psy.f90 +125 -0
  372. PSyclone-2.5.0/examples/lfric/eg12/Makefile +57 -0
  373. PSyclone-2.5.0/examples/lfric/eg12/colouring_and_omp.py +80 -0
  374. PSyclone-2.5.0/examples/lfric/eg12/extract_kernel_with_transformations.py +111 -0
  375. PSyclone-2.5.0/examples/lfric/eg12/extract_nodes.py +93 -0
  376. PSyclone-2.5.0/examples/lfric/eg12/find_kernel.py +137 -0
  377. PSyclone-2.5.0/examples/lfric/eg13/.gitignore +4 -0
  378. PSyclone-2.5.0/examples/lfric/eg13/Makefile +51 -0
  379. PSyclone-2.5.0/examples/lfric/eg13/alg.f90 +107 -0
  380. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_10_mod.f90 +53 -0
  381. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_11_mod.f90 +53 -0
  382. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_12_mod.f90 +53 -0
  383. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_13_mod.f90 +53 -0
  384. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_14_mod.f90 +53 -0
  385. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_15_mod.f90 +53 -0
  386. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_16_mod.f90 +53 -0
  387. PSyclone-2.5.0/examples/lfric/eg13/dg_matrix_vector_kernel_17_mod.f90 +53 -0
  388. PSyclone-2.5.0/examples/lfric/eg13/kernel_constants.py +95 -0
  389. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_10_mod.f90 +52 -0
  390. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_11_mod.f90 +52 -0
  391. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_12_mod.f90 +52 -0
  392. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_13_mod.f90 +52 -0
  393. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_14_mod.f90 +52 -0
  394. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_15_mod.f90 +52 -0
  395. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_16_mod.f90 +52 -0
  396. PSyclone-2.5.0/examples/lfric/eg13/matrix_vector_kernel_17_mod.f90 +52 -0
  397. PSyclone-2.5.0/examples/lfric/eg13/psy.f90 +404 -0
  398. PSyclone-2.5.0/examples/lfric/eg14/.gitignore +6 -0
  399. PSyclone-2.5.0/examples/lfric/eg14/Makefile +130 -0
  400. PSyclone-2.5.0/examples/lfric/eg14/README.md +46 -0
  401. PSyclone-2.5.0/examples/lfric/eg14/acc_parallel.py +94 -0
  402. PSyclone-2.5.0/examples/lfric/eg14/main.x90 +118 -0
  403. PSyclone-2.5.0/examples/lfric/eg14/main_alg.f90 +54 -0
  404. PSyclone-2.5.0/examples/lfric/eg14/main_psy.f90 +210 -0
  405. PSyclone-2.5.0/examples/lfric/eg14/other_alg_mod.x90 +53 -0
  406. PSyclone-2.5.0/examples/lfric/eg14/other_alg_mod_alg.f90 +13 -0
  407. PSyclone-2.5.0/examples/lfric/eg14/other_alg_mod_psy.f90 +56 -0
  408. PSyclone-2.5.0/examples/lfric/eg14/testkern_w0_kernel_mod.f90 +82 -0
  409. PSyclone-2.5.0/examples/lfric/eg15/Makefile +48 -0
  410. PSyclone-2.5.0/examples/lfric/eg15/matvec_opt.py +107 -0
  411. PSyclone-2.5.0/examples/lfric/eg16/Makefile +44 -0
  412. PSyclone-2.5.0/examples/lfric/eg16/README.md +51 -0
  413. PSyclone-2.5.0/examples/lfric/eg16/create.py +141 -0
  414. PSyclone-2.5.0/examples/lfric/eg17/Makefile +41 -0
  415. PSyclone-2.5.0/examples/lfric/eg17/README.md +76 -0
  416. PSyclone-2.5.0/examples/lfric/eg17/full_example/.gitignore +4 -0
  417. PSyclone-2.5.0/examples/lfric/eg17/full_example/Makefile +93 -0
  418. PSyclone-2.5.0/examples/lfric/eg17/full_example/main.x90 +99 -0
  419. PSyclone-2.5.0/examples/lfric/eg17/full_example/main_alg.f90 +43 -0
  420. PSyclone-2.5.0/examples/lfric/eg17/full_example/main_psy.f90 +123 -0
  421. PSyclone-2.5.0/examples/lfric/eg17/full_example/testkern_w0_kernel_mod.f90 +82 -0
  422. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/.gitignore +7 -0
  423. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/Makefile +142 -0
  424. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/README.md +86 -0
  425. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/driver-main-init.F90 +1723 -0
  426. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/driver-main-init.f90 +68 -0
  427. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/driver-main-update.F90 +2503 -0
  428. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/driver-main-update.f90 +64 -0
  429. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/extract_transform.py +79 -0
  430. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/main.x90 +110 -0
  431. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/main_alg.f90 +52 -0
  432. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/main_psy.f90 +169 -0
  433. PSyclone-2.5.0/examples/lfric/eg17/full_example_extract/testkern_w0_kernel_mod.f90 +90 -0
  434. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/.gitignore +4 -0
  435. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/Makefile +96 -0
  436. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/main.x90 +100 -0
  437. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/main_alg.f90 +44 -0
  438. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/main_psy.f90 +123 -0
  439. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/mesh_BiP128x16-400x100.nc +0 -0
  440. PSyclone-2.5.0/examples/lfric/eg17/full_example_netcdf/testkern_w0_kernel_mod.f90 +82 -0
  441. PSyclone-2.5.0/examples/lfric/eg18/Makefile +49 -0
  442. PSyclone-2.5.0/examples/lfric/eg18/advection_alg_mod.x90 +71 -0
  443. PSyclone-2.5.0/examples/lfric/eg19/.gitignore +3 -0
  444. PSyclone-2.5.0/examples/lfric/eg19/Makefile +83 -0
  445. PSyclone-2.5.0/examples/lfric/eg19/alg.f90 +27 -0
  446. PSyclone-2.5.0/examples/lfric/eg19/algorithm.x90 +74 -0
  447. PSyclone-2.5.0/examples/lfric/eg19/mixed_kernel_mod.f90 +113 -0
  448. PSyclone-2.5.0/examples/lfric/eg19/mixed_precision_psy.f90 +166 -0
  449. PSyclone-2.5.0/examples/lfric/eg2/Makefile +62 -0
  450. PSyclone-2.5.0/examples/lfric/eg2/loop_fuse_trans.py +79 -0
  451. PSyclone-2.5.0/examples/lfric/eg2/module_inline_trans.py +75 -0
  452. PSyclone-2.5.0/examples/lfric/eg2/multi_invoke_mod.x90 +60 -0
  453. PSyclone-2.5.0/examples/lfric/eg2/print_psyir_trans.py +63 -0
  454. PSyclone-2.5.0/examples/lfric/eg20/.gitignore +2 -0
  455. PSyclone-2.5.0/examples/lfric/eg20/Makefile +75 -0
  456. PSyclone-2.5.0/examples/lfric/eg20/test_alg_mod.f90 +35 -0
  457. PSyclone-2.5.0/examples/lfric/eg20/test_alg_mod.x90 +39 -0
  458. PSyclone-2.5.0/examples/lfric/eg20/test_alg_mod_psy.f90 +158 -0
  459. PSyclone-2.5.0/examples/lfric/eg20/testkern_mod.F90 +82 -0
  460. PSyclone-2.5.0/examples/lfric/eg3/Makefile +53 -0
  461. PSyclone-2.5.0/examples/lfric/eg3/colouring_and_omp.py +80 -0
  462. PSyclone-2.5.0/examples/lfric/eg3/matrix_vector_mm_mod.F90 +128 -0
  463. PSyclone-2.5.0/examples/lfric/eg3/solver_mod.x90 +795 -0
  464. PSyclone-2.5.0/examples/lfric/eg3/w3_solver_kernel_mod.F90 +206 -0
  465. PSyclone-2.5.0/examples/lfric/eg4/Makefile +56 -0
  466. PSyclone-2.5.0/examples/lfric/eg4/backends_transform.py +79 -0
  467. PSyclone-2.5.0/examples/lfric/eg4/enforce_bc_kernel_mod.f90 +120 -0
  468. PSyclone-2.5.0/examples/lfric/eg4/matrix_vector_kernel_mod.F90 +133 -0
  469. PSyclone-2.5.0/examples/lfric/eg4/mm_diagonal_kernel_mod.F90 +120 -0
  470. PSyclone-2.5.0/examples/lfric/eg4/solver_mod.x90 +152 -0
  471. PSyclone-2.5.0/examples/lfric/eg5/Makefile +46 -0
  472. PSyclone-2.5.0/examples/lfric/eg5/alg.f90 +104 -0
  473. PSyclone-2.5.0/examples/lfric/eg5/conservative_flux_kernel_mod.F90 +264 -0
  474. PSyclone-2.5.0/examples/lfric/eg5/subgrid_coeffs_kernel_mod.F90 +221 -0
  475. PSyclone-2.5.0/examples/lfric/eg6/Makefile +64 -0
  476. PSyclone-2.5.0/examples/lfric/eg6/alg.x90 +66 -0
  477. PSyclone-2.5.0/examples/lfric/eg6/omp_reprod_script.py +81 -0
  478. PSyclone-2.5.0/examples/lfric/eg6/omp_script.py +76 -0
  479. PSyclone-2.5.0/examples/lfric/eg7/Makefile +46 -0
  480. PSyclone-2.5.0/examples/lfric/eg7/alg.x90 +94 -0
  481. PSyclone-2.5.0/examples/lfric/eg7/columnwise_op_app_kernel_mod.F90 +157 -0
  482. PSyclone-2.5.0/examples/lfric/eg7/columnwise_op_asm_kernel_mod.F90 +161 -0
  483. PSyclone-2.5.0/examples/lfric/eg7/columnwise_op_mul_kernel_mod.F90 +180 -0
  484. PSyclone-2.5.0/examples/lfric/eg7/matrix_vector_kernel_mod.F90 +131 -0
  485. PSyclone-2.5.0/examples/lfric/eg8/Makefile +53 -0
  486. PSyclone-2.5.0/examples/lfric/eg8/apply_variable_hx_kernel_mod.F90 +364 -0
  487. PSyclone-2.5.0/examples/lfric/eg8/enforce_bc_kernel_mod.F90 +120 -0
  488. PSyclone-2.5.0/examples/lfric/eg8/helmholtz_solver_alg_mod.x90 +88 -0
  489. PSyclone-2.5.0/examples/lfric/eg8/redundant_script.py +67 -0
  490. PSyclone-2.5.0/examples/lfric/eg8/scaled_matrix_vector_kernel_mod.F90 +140 -0
  491. PSyclone-2.5.0/examples/lfric/eg9/Makefile +53 -0
  492. PSyclone-2.5.0/examples/lfric/eg9/advective_inc_alg_mod.x90 +133 -0
  493. PSyclone-2.5.0/examples/lfric/eg9/colouring_and_omp.py +80 -0
  494. PSyclone-2.5.0/examples/lfric/eg9/matrix_vector_kernel_mod.F90 +133 -0
  495. PSyclone-2.5.0/examples/lfric/eg9/rtheta_bd_kernel_mod.F90 +297 -0
  496. PSyclone-2.5.0/examples/lfric/eg9/rtheta_kernel_mod.F90 +179 -0
  497. PSyclone-2.5.0/examples/lfric/eg9/rtheta_wtheta_kernel_mod.F90 +198 -0
  498. PSyclone-2.5.0/examples/lfric/eg9/sample_poly_adv_kernel_mod.F90 +499 -0
  499. PSyclone-2.5.0/examples/lfric/scripts/Makefile +54 -0
  500. PSyclone-2.5.0/examples/lfric/scripts/async_halo_exchanges.py +78 -0
  501. PSyclone-2.5.0/examples/lfric/scripts/colouring_and_omp.py +80 -0
  502. PSyclone-2.5.0/examples/lfric/scripts/compare_ouput.py +87 -0
  503. PSyclone-2.5.0/examples/lfric/scripts/everything_everywhere_all_at_once.py +144 -0
  504. PSyclone-2.5.0/examples/lfric/scripts/inline_kernels_and_intrinsics.py +82 -0
  505. PSyclone-2.5.0/examples/lfric/scripts/kernel_print.py +66 -0
  506. PSyclone-2.5.0/examples/lfric/scripts/loop_fuse.py +82 -0
  507. PSyclone-2.5.0/examples/lfric/scripts/redundant_dofs.py +75 -0
  508. PSyclone-2.5.0/examples/lfric/scripts/redundant_setval_c.py +80 -0
  509. PSyclone-2.5.0/examples/line_length/Makefile +46 -0
  510. PSyclone-2.5.0/examples/line_length/longlines.f90 +50 -0
  511. PSyclone-2.5.0/examples/line_length/testkern_qr_mod.F90 +87 -0
  512. PSyclone-2.5.0/examples/nemo/.gitignore +2 -0
  513. PSyclone-2.5.0/examples/nemo/Makefile +38 -0
  514. PSyclone-2.5.0/examples/nemo/README.md +142 -0
  515. PSyclone-2.5.0/examples/nemo/eg1/Makefile +50 -0
  516. PSyclone-2.5.0/examples/nemo/eg1/README.md +67 -0
  517. PSyclone-2.5.0/examples/nemo/eg1/openmp_cpu_levels_trans.py +67 -0
  518. PSyclone-2.5.0/examples/nemo/eg1/openmp_gpu_levels_trans.py +94 -0
  519. PSyclone-2.5.0/examples/nemo/eg2/Makefile +54 -0
  520. PSyclone-2.5.0/examples/nemo/eg2/README.md +63 -0
  521. PSyclone-2.5.0/examples/nemo/eg2/omp_levels_trans.py +78 -0
  522. PSyclone-2.5.0/examples/nemo/eg3/.gitignore +3 -0
  523. PSyclone-2.5.0/examples/nemo/eg3/Makefile +92 -0
  524. PSyclone-2.5.0/examples/nemo/eg3/README.md +106 -0
  525. PSyclone-2.5.0/examples/nemo/eg3/domain_setup.sh +42 -0
  526. PSyclone-2.5.0/examples/nemo/eg3/kernel_utils.py +139 -0
  527. PSyclone-2.5.0/examples/nemo/eg3/kernels_trans.py +115 -0
  528. PSyclone-2.5.0/examples/nemo/eg3/psy.f90 +249 -0
  529. PSyclone-2.5.0/examples/nemo/eg4/Makefile +66 -0
  530. PSyclone-2.5.0/examples/nemo/eg4/README.md +143 -0
  531. PSyclone-2.5.0/examples/nemo/eg4/copy_stencil.f90 +49 -0
  532. PSyclone-2.5.0/examples/nemo/eg4/copy_stencil.ipynb +98 -0
  533. PSyclone-2.5.0/examples/nemo/eg4/dawn_script.py +91 -0
  534. PSyclone-2.5.0/examples/nemo/eg4/hori_diff.f90 +50 -0
  535. PSyclone-2.5.0/examples/nemo/eg4/if_example.f90 +63 -0
  536. PSyclone-2.5.0/examples/nemo/eg4/intrinsic_example.f90 +63 -0
  537. PSyclone-2.5.0/examples/nemo/eg4/sir_trans.py +67 -0
  538. PSyclone-2.5.0/examples/nemo/eg4/sir_trans_all.py +132 -0
  539. PSyclone-2.5.0/examples/nemo/eg4/sir_trans_loop.py +103 -0
  540. PSyclone-2.5.0/examples/nemo/eg4/tra_adv_compute.F90 +170 -0
  541. PSyclone-2.5.0/examples/nemo/eg4/tridiagonal_solve.f90 +67 -0
  542. PSyclone-2.5.0/examples/nemo/eg5/.gitignore +4 -0
  543. PSyclone-2.5.0/examples/nemo/eg5/Makefile +106 -0
  544. PSyclone-2.5.0/examples/nemo/eg5/README.md +90 -0
  545. PSyclone-2.5.0/examples/nemo/eg5/domain_setup.sh +42 -0
  546. PSyclone-2.5.0/examples/nemo/eg5/extract_kernels.py +112 -0
  547. PSyclone-2.5.0/examples/nemo/eg5/psy.f90 +400 -0
  548. PSyclone-2.5.0/examples/nemo/scripts/.gitignore +1 -0
  549. PSyclone-2.5.0/examples/nemo/scripts/Makefile +120 -0
  550. PSyclone-2.5.0/examples/nemo/scripts/acc_kernels_trans.py +438 -0
  551. PSyclone-2.5.0/examples/nemo/scripts/acc_loops_trans.py +131 -0
  552. PSyclone-2.5.0/examples/nemo/scripts/omp_cpu_trans.py +108 -0
  553. PSyclone-2.5.0/examples/nemo/scripts/omp_gpu_trans.py +147 -0
  554. PSyclone-2.5.0/examples/nemo/scripts/process_nemo.py +170 -0
  555. PSyclone-2.5.0/examples/nemo/scripts/utils.py +414 -0
  556. PSyclone-2.5.0/examples/psyad/Makefile +39 -0
  557. PSyclone-2.5.0/examples/psyad/README.md +66 -0
  558. PSyclone-2.5.0/examples/psyad/eg1/.gitignore +2 -0
  559. PSyclone-2.5.0/examples/psyad/eg1/Makefile +63 -0
  560. PSyclone-2.5.0/examples/psyad/eg1/README.md +76 -0
  561. PSyclone-2.5.0/examples/psyad/eg1/test_harness.f90 +54 -0
  562. PSyclone-2.5.0/examples/psyad/eg1/testkern_mod.f90 +75 -0
  563. PSyclone-2.5.0/examples/psyad/eg1/testkernadj_mod.f90 +36 -0
  564. PSyclone-2.5.0/examples/psyad/eg2/.gitignore +5 -0
  565. PSyclone-2.5.0/examples/psyad/eg2/Makefile +100 -0
  566. PSyclone-2.5.0/examples/psyad/eg2/README.md +159 -0
  567. PSyclone-2.5.0/examples/psyad/lfric/Makefile +52 -0
  568. PSyclone-2.5.0/examples/psyad/lfric/README.md +66 -0
  569. PSyclone-2.5.0/examples/psyad/lfric/adjoint/.gitignore +10 -0
  570. PSyclone-2.5.0/examples/psyad/lfric/adjoint/LICENCE +27 -0
  571. PSyclone-2.5.0/examples/psyad/lfric/adjoint/README.md +51 -0
  572. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_calc_exner_pointwise_mod.F90 +25 -0
  573. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_convert_hdiv_field_kernel_mod.F90 +104 -0
  574. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_dg_inc_matrix_vector_kernel_mod.F90 +106 -0
  575. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_helmholtz_operator_kernel_mod.F90 +255 -0
  576. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_kinetic_energy_gradient_kernel_mod.F90 +152 -0
  577. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_matrix_vector_kernel_mod.F90 +104 -0
  578. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_moist_dyn_gas_kernel_mod.F90 +46 -0
  579. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_poly1d_vert_adv_kernel_mod.F90 +143 -0
  580. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_poly1d_vert_w3_reconstruction_kernel_mod.F90 +122 -0
  581. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_poly_advective_kernel_mod.F90 +134 -0
  582. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_pressure_gradient_bd_kernel_mod.F90 +229 -0
  583. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_project_eos_pressure_kernel_mod.F90 +178 -0
  584. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_rhs_project_eos_kernel_mod.F90 +182 -0
  585. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_rhs_sample_eos_kernel_mod.F90 +142 -0
  586. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_sample_eos_pressure_kernel_mod.F90 +118 -0
  587. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_strong_curl_kernel_mod.F90 +75 -0
  588. PSyclone-2.5.0/examples/psyad/lfric/adjoint/adj_vorticity_advection_kernel_mod.F90 +211 -0
  589. PSyclone-2.5.0/examples/psyad/lfric/adjoint/lbl_adj_poly1d_w3_reconstruction_kernel_mod.F90 +106 -0
  590. PSyclone-2.5.0/examples/psyad/lfric/adjoint/lbl_adj_poly2d_w3_reconstruction_kernel_mod.F90 +92 -0
  591. PSyclone-2.5.0/examples/psyad/lfric/adjoint/lbl_adj_pressure_gradient_bd_kernel_mod.F90 +169 -0
  592. PSyclone-2.5.0/examples/psyad/lfric/adjoint_partial/.gitignore +1 -0
  593. PSyclone-2.5.0/examples/psyad/lfric/adjoint_partial/README.md +46 -0
  594. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/Makefile +95 -0
  595. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/README.md +61 -0
  596. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/combine_w2_field_kernel_mod.F90 +92 -0
  597. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/convert_hdiv_field_kernel_mod.F90 +161 -0
  598. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/dg_inc_matrix_vector_kernel_mod.F90 +148 -0
  599. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/dg_matrix_vector_kernel_mod.F90 +98 -0
  600. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/helmholtz_operator_kernel_mod.F90 +537 -0
  601. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/matrix_vector_kernel_mod.F90 +147 -0
  602. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/poly1d_w3_reconstruction_kernel_mod.F90 +198 -0
  603. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/poly2d_w3_reconstruction_kernel_mod.F90 +176 -0
  604. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/sample_flux_kernel_mod.F90 +111 -0
  605. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/split_w2_field_kernel_mod.F90 +95 -0
  606. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_calc_exner_pointwise_mod.F90 +50 -0
  607. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_hydrostatic_kernel_mod.F90 +256 -0
  608. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_moist_dyn_gas_kernel_mod.F90 +84 -0
  609. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_moist_dyn_mass_kernel_mod.F90 +101 -0
  610. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_poly1d_vert_adv_kernel_mod.F90 +205 -0
  611. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_poly1d_vert_w3_reconstruction_kernel_mod.F90 +204 -0
  612. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_poly_advective_kernel_mod.F90 +172 -0
  613. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_pressure_gradient_bd_kernel_mod.F90 +299 -0
  614. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_project_eos_pressure_kernel_mod.F90 +239 -0
  615. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_rhs_project_eos_kernel_mod.F90 +272 -0
  616. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_rhs_sample_eos_kernel_mod.F90 +205 -0
  617. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tl_sample_eos_pressure_kernel_mod.F90 +167 -0
  618. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/tracer_viscosity_kernel_mod.F90 +143 -0
  619. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/transpose_matrix_vector_kernel_mod.F90 +103 -0
  620. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/w2_to_w1_projection_kernel_mod.F90 +120 -0
  621. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear/w3_advective_update_kernel_mod.F90 +115 -0
  622. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/Makefile +90 -0
  623. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/README.md +56 -0
  624. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/convert_hdiv_field_kernel_mod_tweaked.F90 +166 -0
  625. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/dg_inc_matrix_vector_kernel_mod_tweaked.F90 +155 -0
  626. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/matrix_vector_kernel_mod_tweaked.F90 +154 -0
  627. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/poly1d_w3_reconstruction_kernel_mod_tweaked.F90 +204 -0
  628. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/poly2d_w3_reconstruction_kernel_mod_tweaked.F90 +181 -0
  629. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_calc_exner_pointwise_mod_tweaked.F90 +58 -0
  630. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_kinetic_energy_gradient_kernel_mod_tweaked.F90 +226 -0
  631. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_moist_dyn_gas_kernel_mod_tweaked.F90 +92 -0
  632. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_poly1d_vert_adv_kernel_mod_tweaked.F90 +228 -0
  633. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_poly1d_vert_w3_reconstruction_kernel_mod_tweaked.F90 +228 -0
  634. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_project_eos_pressure_kernel_mod_tweaked.F90 +254 -0
  635. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_rhs_project_eos_kernel_mod_tweaked.F90 +273 -0
  636. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_sample_eos_pressure_kernel_mod_tweaked.F90 +182 -0
  637. PSyclone-2.5.0/examples/psyad/lfric/tangent_linear_tweaked/tl_vorticity_advection_kernel_mod_tweaked.F90 +260 -0
  638. PSyclone-2.5.0/examples/psyir/Makefile +50 -0
  639. PSyclone-2.5.0/examples/psyir/README.md +75 -0
  640. PSyclone-2.5.0/examples/psyir/create.py +216 -0
  641. PSyclone-2.5.0/examples/psyir/create_structure_types.py +170 -0
  642. PSyclone-2.5.0/examples/psyir/modify.py +111 -0
  643. PSyclone-2.5.0/examples/stub_generation/Makefile +45 -0
  644. PSyclone-2.5.0/examples/stub_generation/testkern_stencil_multi_mod.f90 +62 -0
  645. PSyclone-2.5.0/lib/.gitignore +3 -0
  646. PSyclone-2.5.0/lib/Makefile +71 -0
  647. PSyclone-2.5.0/lib/README.md +180 -0
  648. PSyclone-2.5.0/lib/extract/Makefile +45 -0
  649. PSyclone-2.5.0/lib/extract/README.md +54 -0
  650. PSyclone-2.5.0/lib/extract/netcdf/.gitignore +2 -0
  651. PSyclone-2.5.0/lib/extract/netcdf/Makefile +99 -0
  652. PSyclone-2.5.0/lib/extract/netcdf/README.md +82 -0
  653. PSyclone-2.5.0/lib/extract/netcdf/dl_esm_inf/Makefile +95 -0
  654. PSyclone-2.5.0/lib/extract/netcdf/dl_esm_inf/README.md +143 -0
  655. PSyclone-2.5.0/lib/extract/netcdf/dl_esm_inf/kernel_data_netcdf.f90 +134 -0
  656. PSyclone-2.5.0/lib/extract/netcdf/extract_netcdf_base.f90 +2521 -0
  657. PSyclone-2.5.0/lib/extract/netcdf/extract_netcdf_base.jinja +465 -0
  658. PSyclone-2.5.0/lib/extract/netcdf/lfric/.gitignore +1 -0
  659. PSyclone-2.5.0/lib/extract/netcdf/lfric/Makefile +104 -0
  660. PSyclone-2.5.0/lib/extract/netcdf/lfric/README.md +144 -0
  661. PSyclone-2.5.0/lib/extract/netcdf/lfric/extract_netcdf_base.f90 +1787 -0
  662. PSyclone-2.5.0/lib/extract/netcdf/lfric/kernel_data_netcdf.jinja +347 -0
  663. PSyclone-2.5.0/lib/extract/netcdf/lfric/psy_data_base.f90 +1189 -0
  664. PSyclone-2.5.0/lib/extract/netcdf/nemo/Makefile +83 -0
  665. PSyclone-2.5.0/lib/extract/netcdf/nemo/README.md +118 -0
  666. PSyclone-2.5.0/lib/extract/netcdf/nemo/extract_netcdf_base.f90 +1752 -0
  667. PSyclone-2.5.0/lib/extract/netcdf/nemo/kernel_data_netcdf.f90 +59 -0
  668. PSyclone-2.5.0/lib/extract/netcdf/nemo/psy_data_base.f90 +1189 -0
  669. PSyclone-2.5.0/lib/extract/netcdf/psy_data_base.f90 +1684 -0
  670. PSyclone-2.5.0/lib/extract/netcdf/read_kernel_data_mod.f90 +1770 -0
  671. PSyclone-2.5.0/lib/extract/netcdf/read_kernel_data_mod.jinja +311 -0
  672. PSyclone-2.5.0/lib/extract/standalone/.gitignore +2 -0
  673. PSyclone-2.5.0/lib/extract/standalone/Makefile +97 -0
  674. PSyclone-2.5.0/lib/extract/standalone/dl_esm_inf/Makefile +93 -0
  675. PSyclone-2.5.0/lib/extract/standalone/dl_esm_inf/README.md +128 -0
  676. PSyclone-2.5.0/lib/extract/standalone/dl_esm_inf/extract_standalone_base.f90 +303 -0
  677. PSyclone-2.5.0/lib/extract/standalone/dl_esm_inf/kernel_data_standalone.f90 +131 -0
  678. PSyclone-2.5.0/lib/extract/standalone/dl_esm_inf/psy_data_base.f90 +556 -0
  679. PSyclone-2.5.0/lib/extract/standalone/extract_standalone_base.f90 +993 -0
  680. PSyclone-2.5.0/lib/extract/standalone/extract_standalone_base.jinja +260 -0
  681. PSyclone-2.5.0/lib/extract/standalone/lfric/.gitignore +1 -0
  682. PSyclone-2.5.0/lib/extract/standalone/lfric/Makefile +100 -0
  683. PSyclone-2.5.0/lib/extract/standalone/lfric/README.md +127 -0
  684. PSyclone-2.5.0/lib/extract/standalone/lfric/extract_standalone_base.f90 +852 -0
  685. PSyclone-2.5.0/lib/extract/standalone/lfric/kernel_data_standalone.f90 +452 -0
  686. PSyclone-2.5.0/lib/extract/standalone/lfric/kernel_data_standalone.jinja +347 -0
  687. PSyclone-2.5.0/lib/extract/standalone/lfric/psy_data_base.f90 +1449 -0
  688. PSyclone-2.5.0/lib/extract/standalone/nemo/Makefile +82 -0
  689. PSyclone-2.5.0/lib/extract/standalone/nemo/README.md +99 -0
  690. PSyclone-2.5.0/lib/extract/standalone/nemo/extract_standalone_base.f90 +711 -0
  691. PSyclone-2.5.0/lib/extract/standalone/nemo/kernel_data_standalone.f90 +59 -0
  692. PSyclone-2.5.0/lib/extract/standalone/nemo/psy_data_base.f90 +1214 -0
  693. PSyclone-2.5.0/lib/extract/standalone/psy_data_base.f90 +1684 -0
  694. PSyclone-2.5.0/lib/extract/standalone/read_kernel_data_mod.f90 +1410 -0
  695. PSyclone-2.5.0/lib/extract/standalone/read_kernel_data_mod.jinja +245 -0
  696. PSyclone-2.5.0/lib/get_python.sh +60 -0
  697. PSyclone-2.5.0/lib/nan_test/.gitignore +1 -0
  698. PSyclone-2.5.0/lib/nan_test/Makefile +76 -0
  699. PSyclone-2.5.0/lib/nan_test/README.md +82 -0
  700. PSyclone-2.5.0/lib/nan_test/dl_esm_inf/Makefile +114 -0
  701. PSyclone-2.5.0/lib/nan_test/dl_esm_inf/README.md +117 -0
  702. PSyclone-2.5.0/lib/nan_test/dl_esm_inf/nan_test.f90 +119 -0
  703. PSyclone-2.5.0/lib/nan_test/dl_esm_inf/nan_test_base.f90 +293 -0
  704. PSyclone-2.5.0/lib/nan_test/dl_esm_inf/psy_data_base.f90 +556 -0
  705. PSyclone-2.5.0/lib/nan_test/lfric/.gitignore +1 -0
  706. PSyclone-2.5.0/lib/nan_test/lfric/Makefile +118 -0
  707. PSyclone-2.5.0/lib/nan_test/lfric/README.md +123 -0
  708. PSyclone-2.5.0/lib/nan_test/lfric/nan_test.jinja +294 -0
  709. PSyclone-2.5.0/lib/nan_test/lfric/nan_test_base.f90 +765 -0
  710. PSyclone-2.5.0/lib/nan_test/lfric/psy_data_base.f90 +1214 -0
  711. PSyclone-2.5.0/lib/nan_test/nan_test_base.jinja +229 -0
  712. PSyclone-2.5.0/lib/process.py +160 -0
  713. PSyclone-2.5.0/lib/profiling/Makefile +68 -0
  714. PSyclone-2.5.0/lib/profiling/README.md +260 -0
  715. PSyclone-2.5.0/lib/profiling/dl_timer/.gitignore +2 -0
  716. PSyclone-2.5.0/lib/profiling/dl_timer/Makefile +80 -0
  717. PSyclone-2.5.0/lib/profiling/dl_timer/README.md +144 -0
  718. PSyclone-2.5.0/lib/profiling/dl_timer/dl_timer.f90 +137 -0
  719. PSyclone-2.5.0/lib/profiling/drhook/.gitignore +1 -0
  720. PSyclone-2.5.0/lib/profiling/drhook/Makefile +70 -0
  721. PSyclone-2.5.0/lib/profiling/drhook/README.md +156 -0
  722. PSyclone-2.5.0/lib/profiling/drhook/drhook_psy.f90 +155 -0
  723. PSyclone-2.5.0/lib/profiling/lfric_timer/Makefile +94 -0
  724. PSyclone-2.5.0/lib/profiling/lfric_timer/README.md +147 -0
  725. PSyclone-2.5.0/lib/profiling/lfric_timer/profile_psy_data_mod.F90 +139 -0
  726. PSyclone-2.5.0/lib/profiling/nvidia/Makefile +60 -0
  727. PSyclone-2.5.0/lib/profiling/nvidia/README.md +111 -0
  728. PSyclone-2.5.0/lib/profiling/nvidia/nvtx_prof.f90 +223 -0
  729. PSyclone-2.5.0/lib/profiling/simple_timing/.gitignore +2 -0
  730. PSyclone-2.5.0/lib/profiling/simple_timing/Makefile +72 -0
  731. PSyclone-2.5.0/lib/profiling/simple_timing/README.md +120 -0
  732. PSyclone-2.5.0/lib/profiling/simple_timing/simple_timing.f90 +240 -0
  733. PSyclone-2.5.0/lib/profiling/tau/.gitignore +1 -0
  734. PSyclone-2.5.0/lib/profiling/tau/Makefile +60 -0
  735. PSyclone-2.5.0/lib/profiling/tau/README.md +105 -0
  736. PSyclone-2.5.0/lib/profiling/tau/tau_psy.f90 +139 -0
  737. PSyclone-2.5.0/lib/profiling/template/.gitignore +1 -0
  738. PSyclone-2.5.0/lib/profiling/template/Makefile +72 -0
  739. PSyclone-2.5.0/lib/profiling/template/README.md +111 -0
  740. PSyclone-2.5.0/lib/profiling/template/dummy_lib.f90 +142 -0
  741. PSyclone-2.5.0/lib/profiling/template/psy_data_base.f90 +269 -0
  742. PSyclone-2.5.0/lib/psy_data_base.f90 +959 -0
  743. PSyclone-2.5.0/lib/psy_data_base.jinja +416 -0
  744. PSyclone-2.5.0/lib/read_only/.gitignore +2 -0
  745. PSyclone-2.5.0/lib/read_only/Makefile +83 -0
  746. PSyclone-2.5.0/lib/read_only/README.md +81 -0
  747. PSyclone-2.5.0/lib/read_only/dl_esm_inf/.gitignore +2 -0
  748. PSyclone-2.5.0/lib/read_only/dl_esm_inf/Makefile +116 -0
  749. PSyclone-2.5.0/lib/read_only/dl_esm_inf/README.md +120 -0
  750. PSyclone-2.5.0/lib/read_only/dl_esm_inf/psy_data_base.f90 +556 -0
  751. PSyclone-2.5.0/lib/read_only/dl_esm_inf/read_only.f90 +161 -0
  752. PSyclone-2.5.0/lib/read_only/dl_esm_inf/read_only_base.f90 +566 -0
  753. PSyclone-2.5.0/lib/read_only/lfric/.gitignore +2 -0
  754. PSyclone-2.5.0/lib/read_only/lfric/Makefile +122 -0
  755. PSyclone-2.5.0/lib/read_only/lfric/README.md +123 -0
  756. PSyclone-2.5.0/lib/read_only/lfric/read_only.jinja +356 -0
  757. PSyclone-2.5.0/lib/read_only/read_only_base.jinja +440 -0
  758. PSyclone-2.5.0/psyclone.pdf +0 -0
  759. PSyclone-2.5.0/requirements.txt +40 -0
  760. PSyclone-2.5.0/setup.cfg +18 -0
  761. PSyclone-2.5.0/setup.py +180 -0
  762. PSyclone-2.5.0/src/PSyclone.egg-info/PKG-INFO +51 -0
  763. PSyclone-2.5.0/src/PSyclone.egg-info/SOURCES.txt +2535 -0
  764. PSyclone-2.5.0/src/PSyclone.egg-info/requires.txt +27 -0
  765. PSyclone-2.5.0/src/psyclone/.pylintrc +17 -0
  766. PSyclone-2.5.0/src/psyclone/__init__.py +33 -0
  767. PSyclone-2.5.0/src/psyclone/alg_gen.py +323 -0
  768. PSyclone-2.5.0/src/psyclone/configuration.py +1422 -0
  769. PSyclone-2.5.0/src/psyclone/core/__init__.py +58 -0
  770. PSyclone-2.5.0/src/psyclone/core/access_type.py +135 -0
  771. PSyclone-2.5.0/src/psyclone/core/component_indices.py +197 -0
  772. PSyclone-2.5.0/src/psyclone/core/signature.py +265 -0
  773. PSyclone-2.5.0/src/psyclone/core/single_variable_access_info.py +445 -0
  774. PSyclone-2.5.0/src/psyclone/core/symbolic_maths.py +326 -0
  775. PSyclone-2.5.0/src/psyclone/core/variables_access_info.py +374 -0
  776. PSyclone-2.5.0/src/psyclone/domain/common/__init__.py +40 -0
  777. PSyclone-2.5.0/src/psyclone/domain/common/algorithm/__init__.py +49 -0
  778. PSyclone-2.5.0/src/psyclone/domain/common/algorithm/psyir.py +317 -0
  779. PSyclone-2.5.0/src/psyclone/domain/common/extract_driver_creator.py +676 -0
  780. PSyclone-2.5.0/src/psyclone/domain/common/psylayer/__init__.py +40 -0
  781. PSyclone-2.5.0/src/psyclone/domain/common/psylayer/psyloop.py +363 -0
  782. PSyclone-2.5.0/src/psyclone/domain/common/transformations/__init__.py +47 -0
  783. PSyclone-2.5.0/src/psyclone/domain/common/transformations/alg_invoke_2_psy_call_trans.py +246 -0
  784. PSyclone-2.5.0/src/psyclone/domain/common/transformations/alg_trans.py +98 -0
  785. PSyclone-2.5.0/src/psyclone/domain/common/transformations/kernel_module_inline_trans.py +319 -0
  786. PSyclone-2.5.0/src/psyclone/domain/common/transformations/raise_psyir_2_alg_trans.py +270 -0
  787. PSyclone-2.5.0/src/psyclone/domain/gocean/__init__.py +42 -0
  788. PSyclone-2.5.0/src/psyclone/domain/gocean/go_symbol_table.py +137 -0
  789. PSyclone-2.5.0/src/psyclone/domain/gocean/gocean_constants.py +128 -0
  790. PSyclone-2.5.0/src/psyclone/domain/gocean/kernel/__init__.py +45 -0
  791. PSyclone-2.5.0/src/psyclone/domain/gocean/kernel/psyir.py +1059 -0
  792. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/__init__.py +55 -0
  793. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_alg_invoke_2_psy_call_trans.py +75 -0
  794. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_const_loop_bounds_trans.py +262 -0
  795. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_extract_trans.py +180 -0
  796. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_loop_fuse_trans.py +103 -0
  797. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_move_iteration_boundaries_inside_kernel_trans.py +242 -0
  798. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/gocean_opencl_trans.py +1549 -0
  799. PSyclone-2.5.0/src/psyclone/domain/gocean/transformations/raise_psyir_2_gocean_kern_trans.py +250 -0
  800. PSyclone-2.5.0/src/psyclone/domain/lfric/__init__.py +99 -0
  801. PSyclone-2.5.0/src/psyclone/domain/lfric/algorithm/__init__.py +54 -0
  802. PSyclone-2.5.0/src/psyclone/domain/lfric/algorithm/lfric_alg.py +483 -0
  803. PSyclone-2.5.0/src/psyclone/domain/lfric/algorithm/psyir/__init__.py +56 -0
  804. PSyclone-2.5.0/src/psyclone/domain/lfric/algorithm/psyir/lfric_alg_invoke_call.py +87 -0
  805. PSyclone-2.5.0/src/psyclone/domain/lfric/algorithm/psyir/lfric_kernel_functor.py +222 -0
  806. PSyclone-2.5.0/src/psyclone/domain/lfric/arg_index_to_metadata_index.py +266 -0
  807. PSyclone-2.5.0/src/psyclone/domain/lfric/arg_ordering.py +954 -0
  808. PSyclone-2.5.0/src/psyclone/domain/lfric/function_space.py +394 -0
  809. PSyclone-2.5.0/src/psyclone/domain/lfric/kern_call_acc_arg_list.py +256 -0
  810. PSyclone-2.5.0/src/psyclone/domain/lfric/kern_call_arg_list.py +973 -0
  811. PSyclone-2.5.0/src/psyclone/domain/lfric/kern_call_invoke_arg_list.py +361 -0
  812. PSyclone-2.5.0/src/psyclone/domain/lfric/kern_stub_arg_list.py +513 -0
  813. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/__init__.py +75 -0
  814. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/columnwise_operator_arg_metadata.py +57 -0
  815. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/common_arg_metadata.py +154 -0
  816. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/common_declaration_metadata.py +516 -0
  817. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/common_meta_arg_metadata.py +249 -0
  818. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/common_metadata.py +159 -0
  819. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/evaluator_targets_metadata.py +124 -0
  820. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/field_arg_metadata.py +207 -0
  821. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/field_vector_arg_metadata.py +144 -0
  822. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/inter_grid_arg_metadata.py +186 -0
  823. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/inter_grid_vector_arg_metadata.py +155 -0
  824. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/lfric_kernel_metadata.py +1197 -0
  825. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_args_metadata.py +170 -0
  826. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_funcs_arg_metadata.py +215 -0
  827. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_funcs_metadata.py +118 -0
  828. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_mesh_arg_metadata.py +100 -0
  829. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_mesh_metadata.py +125 -0
  830. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_ref_element_arg_metadata.py +105 -0
  831. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/meta_ref_element_metadata.py +121 -0
  832. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/operates_on_metadata.py +114 -0
  833. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/operator_arg_metadata.py +175 -0
  834. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/psyir.py +117 -0
  835. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/scalar_arg_metadata.py +130 -0
  836. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel/shapes_metadata.py +155 -0
  837. PSyclone-2.5.0/src/psyclone/domain/lfric/kernel_interface.py +853 -0
  838. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_arg_descriptor.py +757 -0
  839. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_builtins.py +3336 -0
  840. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_collection.py +153 -0
  841. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_constants.py +531 -0
  842. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_extract_driver_creator.py +985 -0
  843. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_fields.py +176 -0
  844. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_invoke.py +354 -0
  845. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_invokes.py +67 -0
  846. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_kern.py +972 -0
  847. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_kern_call_factory.py +93 -0
  848. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_kern_metadata.py +678 -0
  849. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_loop.py +1049 -0
  850. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_loop_bounds.py +113 -0
  851. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_run_time_checks.py +234 -0
  852. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_scalar_args.py +282 -0
  853. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_stencils.py +658 -0
  854. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_symbol_table.py +248 -0
  855. PSyclone-2.5.0/src/psyclone/domain/lfric/lfric_types.py +595 -0
  856. PSyclone-2.5.0/src/psyclone/domain/lfric/metadata_to_arguments_rules.py +573 -0
  857. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/__init__.py +52 -0
  858. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/lfric_alg_invoke_2_psy_call_trans.py +337 -0
  859. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/lfric_alg_trans.py +52 -0
  860. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/lfric_extract_trans.py +169 -0
  861. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/lfric_loop_fuse_trans.py +232 -0
  862. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/raise_psyir_2_lfric_alg_trans.py +110 -0
  863. PSyclone-2.5.0/src/psyclone/domain/lfric/transformations/raise_psyir_2_lfric_kern_trans.py +236 -0
  864. PSyclone-2.5.0/src/psyclone/domain/lfric/utils.py +136 -0
  865. PSyclone-2.5.0/src/psyclone/domain/nemo/__init__.py +46 -0
  866. PSyclone-2.5.0/src/psyclone/domain/nemo/nemo_constants.py +79 -0
  867. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/__init__.py +68 -0
  868. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/create_nemo_invoke_schedule_trans.py +158 -0
  869. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/create_nemo_loop_trans.py +151 -0
  870. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/create_nemo_psy_trans.py +166 -0
  871. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/nemo_allarrayaccess2loop_trans.py +157 -0
  872. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/nemo_allarrayrange2loop_trans.py +168 -0
  873. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/nemo_arrayaccess2loop_trans.py +280 -0
  874. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/nemo_arrayrange2loop_trans.py +312 -0
  875. PSyclone-2.5.0/src/psyclone/domain/nemo/transformations/nemo_outerarrayrange2loop_trans.py +180 -0
  876. PSyclone-2.5.0/src/psyclone/dynamo0p3.py +6466 -0
  877. PSyclone-2.5.0/src/psyclone/errors.py +138 -0
  878. PSyclone-2.5.0/src/psyclone/expression.py +340 -0
  879. PSyclone-2.5.0/src/psyclone/f2pygen.py +1465 -0
  880. PSyclone-2.5.0/src/psyclone/gen_kernel_stub.py +100 -0
  881. PSyclone-2.5.0/src/psyclone/generator.py +672 -0
  882. PSyclone-2.5.0/src/psyclone/gocean1p0.py +2312 -0
  883. PSyclone-2.5.0/src/psyclone/kernel_tools.py +202 -0
  884. PSyclone-2.5.0/src/psyclone/line_length.py +183 -0
  885. PSyclone-2.5.0/src/psyclone/nemo.py +285 -0
  886. PSyclone-2.5.0/src/psyclone/parse/__init__.py +47 -0
  887. PSyclone-2.5.0/src/psyclone/parse/algorithm.py +1175 -0
  888. PSyclone-2.5.0/src/psyclone/parse/kernel.py +1032 -0
  889. PSyclone-2.5.0/src/psyclone/parse/lfric_builtins_mod.f90 +1256 -0
  890. PSyclone-2.5.0/src/psyclone/parse/module_info.py +212 -0
  891. PSyclone-2.5.0/src/psyclone/parse/module_manager.py +347 -0
  892. PSyclone-2.5.0/src/psyclone/parse/utils.py +131 -0
  893. PSyclone-2.5.0/src/psyclone/profiler.py +195 -0
  894. PSyclone-2.5.0/src/psyclone/psyGen.py +2878 -0
  895. PSyclone-2.5.0/src/psyclone/psyad/__init__.py +41 -0
  896. PSyclone-2.5.0/src/psyclone/psyad/adjoint_visitor.py +446 -0
  897. PSyclone-2.5.0/src/psyclone/psyad/domain/__init__.py +0 -0
  898. PSyclone-2.5.0/src/psyclone/psyad/domain/common/__init__.py +42 -0
  899. PSyclone-2.5.0/src/psyclone/psyad/domain/common/adjoint_utils.py +236 -0
  900. PSyclone-2.5.0/src/psyclone/psyad/domain/lfric/__init__.py +42 -0
  901. PSyclone-2.5.0/src/psyclone/psyad/domain/lfric/lfric_adjoint.py +292 -0
  902. PSyclone-2.5.0/src/psyclone/psyad/domain/lfric/lfric_adjoint_harness.py +815 -0
  903. PSyclone-2.5.0/src/psyclone/psyad/main.py +187 -0
  904. PSyclone-2.5.0/src/psyclone/psyad/tl2ad.py +708 -0
  905. PSyclone-2.5.0/src/psyclone/psyad/transformations/__init__.py +39 -0
  906. PSyclone-2.5.0/src/psyclone/psyad/transformations/adjoint_trans.py +92 -0
  907. PSyclone-2.5.0/src/psyclone/psyad/transformations/assignment_trans.py +420 -0
  908. PSyclone-2.5.0/src/psyclone/psyad/transformations/preprocess.py +105 -0
  909. PSyclone-2.5.0/src/psyclone/psyad/transformations/tangent_linear_error.py +60 -0
  910. PSyclone-2.5.0/src/psyclone/psyad/utils.py +142 -0
  911. PSyclone-2.5.0/src/psyclone/psyir/__init__.py +40 -0
  912. PSyclone-2.5.0/src/psyclone/psyir/backend/__init__.py +33 -0
  913. PSyclone-2.5.0/src/psyclone/psyir/backend/c.py +566 -0
  914. PSyclone-2.5.0/src/psyclone/psyir/backend/debug_writer.py +80 -0
  915. PSyclone-2.5.0/src/psyclone/psyir/backend/fortran.py +1666 -0
  916. PSyclone-2.5.0/src/psyclone/psyir/backend/language_writer.py +278 -0
  917. PSyclone-2.5.0/src/psyclone/psyir/backend/opencl.py +265 -0
  918. PSyclone-2.5.0/src/psyclone/psyir/backend/sir.py +572 -0
  919. PSyclone-2.5.0/src/psyclone/psyir/backend/sympy_writer.py +697 -0
  920. PSyclone-2.5.0/src/psyclone/psyir/backend/visitor.py +301 -0
  921. PSyclone-2.5.0/src/psyclone/psyir/frontend/__init__.py +33 -0
  922. PSyclone-2.5.0/src/psyclone/psyir/frontend/fortran.py +229 -0
  923. PSyclone-2.5.0/src/psyclone/psyir/frontend/fparser2.py +4893 -0
  924. PSyclone-2.5.0/src/psyclone/psyir/frontend/sympy_reader.py +216 -0
  925. PSyclone-2.5.0/src/psyclone/psyir/nodes/__init__.py +199 -0
  926. PSyclone-2.5.0/src/psyclone/psyir/nodes/acc_clauses.py +123 -0
  927. PSyclone-2.5.0/src/psyclone/psyir/nodes/acc_directives.py +1036 -0
  928. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_member.py +92 -0
  929. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_mixin.py +747 -0
  930. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_of_structures_member.py +98 -0
  931. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_of_structures_mixin.py +120 -0
  932. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_of_structures_reference.py +139 -0
  933. PSyclone-2.5.0/src/psyclone/psyir/nodes/array_reference.py +200 -0
  934. PSyclone-2.5.0/src/psyclone/psyir/nodes/assignment.py +213 -0
  935. PSyclone-2.5.0/src/psyclone/psyir/nodes/call.py +421 -0
  936. PSyclone-2.5.0/src/psyclone/psyir/nodes/clause.py +76 -0
  937. PSyclone-2.5.0/src/psyclone/psyir/nodes/codeblock.py +163 -0
  938. PSyclone-2.5.0/src/psyclone/psyir/nodes/commentable_mixin.py +92 -0
  939. PSyclone-2.5.0/src/psyclone/psyir/nodes/container.py +175 -0
  940. PSyclone-2.5.0/src/psyclone/psyir/nodes/datanode.py +57 -0
  941. PSyclone-2.5.0/src/psyclone/psyir/nodes/directive.py +324 -0
  942. PSyclone-2.5.0/src/psyclone/psyir/nodes/dynamic_omp_task_directive.py +2162 -0
  943. PSyclone-2.5.0/src/psyclone/psyir/nodes/extract_node.py +198 -0
  944. PSyclone-2.5.0/src/psyclone/psyir/nodes/file_container.py +75 -0
  945. PSyclone-2.5.0/src/psyclone/psyir/nodes/if_block.py +197 -0
  946. PSyclone-2.5.0/src/psyclone/psyir/nodes/intrinsic_call.py +972 -0
  947. PSyclone-2.5.0/src/psyclone/psyir/nodes/kernel_schedule.py +53 -0
  948. PSyclone-2.5.0/src/psyclone/psyir/nodes/literal.py +173 -0
  949. PSyclone-2.5.0/src/psyclone/psyir/nodes/loop.py +476 -0
  950. PSyclone-2.5.0/src/psyclone/psyir/nodes/member.py +140 -0
  951. PSyclone-2.5.0/src/psyclone/psyir/nodes/nan_test_node.py +127 -0
  952. PSyclone-2.5.0/src/psyclone/psyir/nodes/node.py +1738 -0
  953. PSyclone-2.5.0/src/psyclone/psyir/nodes/omp_clauses.py +522 -0
  954. PSyclone-2.5.0/src/psyclone/psyir/nodes/omp_directives.py +2669 -0
  955. PSyclone-2.5.0/src/psyclone/psyir/nodes/omp_task_directive.py +183 -0
  956. PSyclone-2.5.0/src/psyclone/psyir/nodes/operation.py +451 -0
  957. PSyclone-2.5.0/src/psyclone/psyir/nodes/profile_node.py +64 -0
  958. PSyclone-2.5.0/src/psyclone/psyir/nodes/psy_data_node.py +793 -0
  959. PSyclone-2.5.0/src/psyclone/psyir/nodes/ranges.py +262 -0
  960. PSyclone-2.5.0/src/psyclone/psyir/nodes/read_only_verify_node.py +133 -0
  961. PSyclone-2.5.0/src/psyclone/psyir/nodes/reference.py +196 -0
  962. PSyclone-2.5.0/src/psyclone/psyir/nodes/return_stmt.py +53 -0
  963. PSyclone-2.5.0/src/psyclone/psyir/nodes/routine.py +290 -0
  964. PSyclone-2.5.0/src/psyclone/psyir/nodes/schedule.py +100 -0
  965. PSyclone-2.5.0/src/psyclone/psyir/nodes/scoping_node.py +133 -0
  966. PSyclone-2.5.0/src/psyclone/psyir/nodes/statement.py +50 -0
  967. PSyclone-2.5.0/src/psyclone/psyir/nodes/structure_member.py +135 -0
  968. PSyclone-2.5.0/src/psyclone/psyir/nodes/structure_reference.py +380 -0
  969. PSyclone-2.5.0/src/psyclone/psyir/nodes/while_loop.py +157 -0
  970. PSyclone-2.5.0/src/psyclone/psyir/symbols/__init__.py +96 -0
  971. PSyclone-2.5.0/src/psyclone/psyir/symbols/containersymbol.py +228 -0
  972. PSyclone-2.5.0/src/psyclone/psyir/symbols/data_type_symbol.py +129 -0
  973. PSyclone-2.5.0/src/psyclone/psyir/symbols/datasymbol.py +329 -0
  974. PSyclone-2.5.0/src/psyclone/psyir/symbols/datatypes.py +882 -0
  975. PSyclone-2.5.0/src/psyclone/psyir/symbols/interfaces.py +253 -0
  976. PSyclone-2.5.0/src/psyclone/psyir/symbols/intrinsic_symbol.py +56 -0
  977. PSyclone-2.5.0/src/psyclone/psyir/symbols/routinesymbol.py +156 -0
  978. PSyclone-2.5.0/src/psyclone/psyir/symbols/symbol.py +509 -0
  979. PSyclone-2.5.0/src/psyclone/psyir/symbols/symbol_table.py +1714 -0
  980. PSyclone-2.5.0/src/psyclone/psyir/symbols/typed_symbol.py +231 -0
  981. PSyclone-2.5.0/src/psyclone/psyir/tools/__init__.py +45 -0
  982. PSyclone-2.5.0/src/psyclone/psyir/tools/dependency_tools.py +868 -0
  983. PSyclone-2.5.0/src/psyclone/psyir/tools/read_write_info.py +167 -0
  984. PSyclone-2.5.0/src/psyclone/psyir/transformations/__init__.py +140 -0
  985. PSyclone-2.5.0/src/psyclone/psyir/transformations/acc_update_trans.py +475 -0
  986. PSyclone-2.5.0/src/psyclone/psyir/transformations/arrayrange2loop_trans.py +219 -0
  987. PSyclone-2.5.0/src/psyclone/psyir/transformations/chunk_loop_trans.py +297 -0
  988. PSyclone-2.5.0/src/psyclone/psyir/transformations/extract_trans.py +208 -0
  989. PSyclone-2.5.0/src/psyclone/psyir/transformations/fold_conditional_return_expressions_trans.py +149 -0
  990. PSyclone-2.5.0/src/psyclone/psyir/transformations/hoist_local_arrays_trans.py +370 -0
  991. PSyclone-2.5.0/src/psyclone/psyir/transformations/hoist_loop_bound_expr_trans.py +163 -0
  992. PSyclone-2.5.0/src/psyclone/psyir/transformations/hoist_trans.py +265 -0
  993. PSyclone-2.5.0/src/psyclone/psyir/transformations/inline_trans.py +967 -0
  994. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/__init__.py +41 -0
  995. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/abs2code_trans.py +156 -0
  996. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/array_reduction_base_trans.py +399 -0
  997. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/dotproduct2code_trans.py +330 -0
  998. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/intrinsic2code_trans.py +97 -0
  999. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/matmul2code_trans.py +497 -0
  1000. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/max2code_trans.py +74 -0
  1001. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/maxval2loop_trans.py +172 -0
  1002. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/min2code_trans.py +76 -0
  1003. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/minormax2code_trans.py +174 -0
  1004. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/minval2loop_trans.py +170 -0
  1005. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/product2loop_trans.py +179 -0
  1006. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/sign2code_trans.py +172 -0
  1007. PSyclone-2.5.0/src/psyclone/psyir/transformations/intrinsics/sum2loop_trans.py +183 -0
  1008. PSyclone-2.5.0/src/psyclone/psyir/transformations/loop_fuse_trans.py +338 -0
  1009. PSyclone-2.5.0/src/psyclone/psyir/transformations/loop_swap_trans.py +204 -0
  1010. PSyclone-2.5.0/src/psyclone/psyir/transformations/loop_tiling_2d_trans.py +179 -0
  1011. PSyclone-2.5.0/src/psyclone/psyir/transformations/loop_trans.py +142 -0
  1012. PSyclone-2.5.0/src/psyclone/psyir/transformations/nan_test_trans.py +108 -0
  1013. PSyclone-2.5.0/src/psyclone/psyir/transformations/omp_loop_trans.py +265 -0
  1014. PSyclone-2.5.0/src/psyclone/psyir/transformations/omp_target_trans.py +112 -0
  1015. PSyclone-2.5.0/src/psyclone/psyir/transformations/omp_task_trans.py +204 -0
  1016. PSyclone-2.5.0/src/psyclone/psyir/transformations/omp_taskwait_trans.py +489 -0
  1017. PSyclone-2.5.0/src/psyclone/psyir/transformations/parallel_loop_trans.py +210 -0
  1018. PSyclone-2.5.0/src/psyclone/psyir/transformations/profile_trans.py +77 -0
  1019. PSyclone-2.5.0/src/psyclone/psyir/transformations/psy_data_trans.py +354 -0
  1020. PSyclone-2.5.0/src/psyclone/psyir/transformations/read_only_verify_trans.py +142 -0
  1021. PSyclone-2.5.0/src/psyclone/psyir/transformations/reference2arrayrange_trans.py +186 -0
  1022. PSyclone-2.5.0/src/psyclone/psyir/transformations/region_trans.py +202 -0
  1023. PSyclone-2.5.0/src/psyclone/psyir/transformations/replace_induction_variables_trans.py +286 -0
  1024. PSyclone-2.5.0/src/psyclone/psyir/transformations/transformation_error.py +55 -0
  1025. PSyclone-2.5.0/src/psyclone/tests/.pylintrc +27 -0
  1026. PSyclone-2.5.0/src/psyclone/tests/__init__.py +0 -0
  1027. PSyclone-2.5.0/src/psyclone/tests/alggen_test.py +738 -0
  1028. PSyclone-2.5.0/src/psyclone/tests/config_test.py +783 -0
  1029. PSyclone-2.5.0/src/psyclone/tests/conftest.py +235 -0
  1030. PSyclone-2.5.0/src/psyclone/tests/core/__init__.py +0 -0
  1031. PSyclone-2.5.0/src/psyclone/tests/core/access_type_test.py +123 -0
  1032. PSyclone-2.5.0/src/psyclone/tests/core/component_indices_test.py +171 -0
  1033. PSyclone-2.5.0/src/psyclone/tests/core/signature_test.py +241 -0
  1034. PSyclone-2.5.0/src/psyclone/tests/core/single_variable_access_info_test.py +335 -0
  1035. PSyclone-2.5.0/src/psyclone/tests/core/symbolic_maths_test.py +474 -0
  1036. PSyclone-2.5.0/src/psyclone/tests/core/variables_access_info_test.py +478 -0
  1037. PSyclone-2.5.0/src/psyclone/tests/dependency_test.py +849 -0
  1038. PSyclone-2.5.0/src/psyclone/tests/domain/common/algorithm/alg_psyir_test.py +484 -0
  1039. PSyclone-2.5.0/src/psyclone/tests/domain/common/extract_driver_creator_test.py +576 -0
  1040. PSyclone-2.5.0/src/psyclone/tests/domain/common/psylayer/psyloop_test.py +184 -0
  1041. PSyclone-2.5.0/src/psyclone/tests/domain/common/transformations/alg_invoke_2_psy_call_trans_test.py +589 -0
  1042. PSyclone-2.5.0/src/psyclone/tests/domain/common/transformations/alg_trans_test.py +132 -0
  1043. PSyclone-2.5.0/src/psyclone/tests/domain/common/transformations/kernel_module_inline_trans_test.py +652 -0
  1044. PSyclone-2.5.0/src/psyclone/tests/domain/common/transformations/raise_psyir_2_alg_trans_test.py +538 -0
  1045. PSyclone-2.5.0/src/psyclone/tests/domain/constants_test.py +113 -0
  1046. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/go_symbol_table_test.py +119 -0
  1047. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/gocean_build_test.py +130 -0
  1048. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/gocean_constants_test.py +63 -0
  1049. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/goinvokeschedule_test.py +113 -0
  1050. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/goloop_test.py +373 -0
  1051. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/kernel/go_kernel_arg_test.py +332 -0
  1052. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/kernel/gocean_kern_psyir_test.py +777 -0
  1053. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/kernel/gokern_test.py +122 -0
  1054. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/globalstoargs_test.py +383 -0
  1055. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean1p0_transformations_test.py +1584 -0
  1056. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean_alg_invoke_2_psy_call_trans_test.py +84 -0
  1057. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean_const_loop_bounds_trans_test.py +205 -0
  1058. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean_extract_test.py +673 -0
  1059. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean_move_iteration_boundaries_inside_kernel_trans_test.py +216 -0
  1060. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/gocean_opencl_trans_test.py +1293 -0
  1061. PSyclone-2.5.0/src/psyclone/tests/domain/gocean/transformations/raise_psyir_2_gocean_kern_trans_test.py +296 -0
  1062. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/algorithm/lfric_alg_test.py +399 -0
  1063. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/algorithm/psyir/lfric_alg_invoke_call_test.py +173 -0
  1064. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/algorithm/psyir/lfric_kernel_functor_test.py +166 -0
  1065. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/arg_index_to_metadata_index_test.py +198 -0
  1066. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/arg_ordering_test.py +499 -0
  1067. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/int_to_real_x_test.py +189 -0
  1068. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/real_to_int_x_test.py +176 -0
  1069. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/real_to_real_x_test.py +176 -0
  1070. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/reduction_builtins_test.py +208 -0
  1071. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/setval_random_test.py +117 -0
  1072. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/sum_x_test.py +130 -0
  1073. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/x_innerproduct_x_test.py +121 -0
  1074. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/builtins/x_innerproduct_y_test.py +132 -0
  1075. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/conftest.py +138 -0
  1076. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/dyn_invoke_schedule_test.py +63 -0
  1077. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/dyn_meshes_test.py +88 -0
  1078. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/dyn_proxies_test.py +155 -0
  1079. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kern_call_acc_arg_list_test.py +214 -0
  1080. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kern_call_arg_list_test.py +661 -0
  1081. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kern_call_invoke_arg_list_test.py +115 -0
  1082. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/columnwise_operator_arg_metadata_test.py +54 -0
  1083. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/common_arg_metadata_test.py +131 -0
  1084. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/common_declaration_metadata_test.py +495 -0
  1085. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/common_meta_arg_metadata_test.py +315 -0
  1086. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/common_metadata_test.py +132 -0
  1087. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/evaluator_targets_metadata_test.py +151 -0
  1088. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/field_arg_metadata_test.py +224 -0
  1089. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/field_vector_arg_metadata_test.py +147 -0
  1090. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/inter_grid_arg_metadata_test.py +178 -0
  1091. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/inter_grid_vector_arg_metadata_test.py +155 -0
  1092. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/lfric_kern_psyir_test.py +150 -0
  1093. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/lfric_kernel_metadata_test.py +1534 -0
  1094. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_args_metadata_test.py +184 -0
  1095. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_funcs_arg_metadata_test.py +257 -0
  1096. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_funcs_metadata_test.py +163 -0
  1097. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_mesh_arg_metadata_test.py +122 -0
  1098. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_mesh_metadata_test.py +155 -0
  1099. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_ref_element_arg_metadata_test.py +132 -0
  1100. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/meta_ref_element_metadata_test.py +167 -0
  1101. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/operates_on_metadata_test.py +128 -0
  1102. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/operator_arg_metadata_test.py +187 -0
  1103. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/scalar_arg_metadata_test.py +134 -0
  1104. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel/shapes_metadata_test.py +158 -0
  1105. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/kernel_interface_test.py +1083 -0
  1106. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_build_test.py +113 -0
  1107. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_builtins_test.py +4609 -0
  1108. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_config_test.py +385 -0
  1109. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_constants_test.py +139 -0
  1110. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_domain_kernels_test.py +454 -0
  1111. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_dynamopsy_test.py +188 -0
  1112. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_extract_driver_creator_test.py +570 -0
  1113. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_field_codegen_test.py +1170 -0
  1114. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_field_mdata_test.py +736 -0
  1115. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_field_stubgen_test.py +338 -0
  1116. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_integer_builtins_test.py +830 -0
  1117. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_kern_test.py +474 -0
  1118. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_loop_bounds_test.py +102 -0
  1119. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_loop_test.py +1088 -0
  1120. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_mesh_props_stubgen_test.py +155 -0
  1121. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_mesh_props_test.py +380 -0
  1122. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_ref_elem_stubgen_test.py +162 -0
  1123. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_scalar_codegen_test.py +616 -0
  1124. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_scalar_mdata_test.py +564 -0
  1125. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_scalar_stubgen_test.py +139 -0
  1126. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_stencil_stubgen_test.py +194 -0
  1127. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_stencil_test.py +1995 -0
  1128. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_symbol_table_test.py +215 -0
  1129. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/lfric_types_test.py +399 -0
  1130. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/metadata_to_arguments_rules_test.py +637 -0
  1131. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/test_utils.py +182 -0
  1132. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/dynamo0p3_transformations_test.py +7553 -0
  1133. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/lfric_alg_invoke_2_psy_call_trans_test.py +431 -0
  1134. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/lfric_alg_trans_test.py +92 -0
  1135. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/lfric_extract_test.py +786 -0
  1136. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/lfric_haloex_test.py +663 -0
  1137. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/raise_psyir_2_lfric_alg_trans_test.py +377 -0
  1138. PSyclone-2.5.0/src/psyclone/tests/domain/lfric/transformations/raise_psyir_2_lfric_kern_trans_test.py +362 -0
  1139. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/nodes/nemo_loop_test.py +150 -0
  1140. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/test_files/nemo_test.cfg +143 -0
  1141. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/acc_update_test.py +476 -0
  1142. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/create_nemo_invoke_schedule_trans_test.py +147 -0
  1143. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/create_nemo_loop_trans_test.py +93 -0
  1144. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/create_nemo_psy_trans_test.py +132 -0
  1145. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/enter_data_test.py +96 -0
  1146. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/nemo_allarrayaccess2loop_trans_test.py +228 -0
  1147. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/nemo_allarrayrange2loop_trans_test.py +237 -0
  1148. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/nemo_arrayaccess2loop_trans_test.py +635 -0
  1149. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/nemo_arrayrange2loop_trans_test.py +619 -0
  1150. PSyclone-2.5.0/src/psyclone/tests/domain/nemo/transformations/nemo_outerarrayrange2loop_trans_test.py +253 -0
  1151. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_basis_test.py +2144 -0
  1152. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_cma_test.py +1685 -0
  1153. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_lma_test.py +1009 -0
  1154. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_multigrid_test.py +907 -0
  1155. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_quadrature_test.py +952 -0
  1156. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_stubgen_test.py +651 -0
  1157. PSyclone-2.5.0/src/psyclone/tests/dynamo0p3_test.py +4467 -0
  1158. PSyclone-2.5.0/src/psyclone/tests/errors_test.py +85 -0
  1159. PSyclone-2.5.0/src/psyclone/tests/exceptions_test.py +136 -0
  1160. PSyclone-2.5.0/src/psyclone/tests/expression_test.py +290 -0
  1161. PSyclone-2.5.0/src/psyclone/tests/f2pygen_test.py +1548 -0
  1162. PSyclone-2.5.0/src/psyclone/tests/gen_kernel_stub_test.py +77 -0
  1163. PSyclone-2.5.0/src/psyclone/tests/generator_test.py +1399 -0
  1164. PSyclone-2.5.0/src/psyclone/tests/gocean1p0_config_test.py +393 -0
  1165. PSyclone-2.5.0/src/psyclone/tests/gocean1p0_stencil_test.py +308 -0
  1166. PSyclone-2.5.0/src/psyclone/tests/gocean1p0_test.py +1454 -0
  1167. PSyclone-2.5.0/src/psyclone/tests/gocean_build.py +183 -0
  1168. PSyclone-2.5.0/src/psyclone/tests/kernel_tools_test.py +255 -0
  1169. PSyclone-2.5.0/src/psyclone/tests/lfric_build.py +132 -0
  1170. PSyclone-2.5.0/src/psyclone/tests/lfric_build_test.py +155 -0
  1171. PSyclone-2.5.0/src/psyclone/tests/lfric_ref_elem_test.py +348 -0
  1172. PSyclone-2.5.0/src/psyclone/tests/line_length_test.py +487 -0
  1173. PSyclone-2.5.0/src/psyclone/tests/nemo/__init__.py +0 -0
  1174. PSyclone-2.5.0/src/psyclone/tests/nemo/nemo_config_test.py +136 -0
  1175. PSyclone-2.5.0/src/psyclone/tests/nemo/nemo_psy_test.py +183 -0
  1176. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/afunction.f90 +43 -0
  1177. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/array_section.f90 +44 -0
  1178. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/array_section_index_mismatch.f90 +49 -0
  1179. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/array_syntax.f90 +48 -0
  1180. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/array_valued_function.f90 +51 -0
  1181. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/array_valued_operation.f90 +44 -0
  1182. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/code_block.f90 +65 -0
  1183. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/empty_routine.f90 +41 -0
  1184. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/explicit_do.f90 +51 -0
  1185. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/explicit_do_long_line.f90 +54 -0
  1186. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/explicit_do_two_loops.f90 +63 -0
  1187. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/explicit_over_implicit.f90 +47 -0
  1188. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/fixed_lhs.f90 +42 -0
  1189. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/imperfect_nest.f90 +88 -0
  1190. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_different_dims.f90 +46 -0
  1191. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_do.f90 +42 -0
  1192. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_do2.f90 +45 -0
  1193. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_do_hidden_accessor.f90 +48 -0
  1194. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_do_slice.f90 +46 -0
  1195. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_do_undefined.f90 +46 -0
  1196. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_many_dims.f90 +45 -0
  1197. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_mismatch_error.f90 +46 -0
  1198. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/implicit_single_value.f90 +45 -0
  1199. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/include_files/local_mpi.h +36 -0
  1200. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/include_stmt.f90 +45 -0
  1201. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/io_in_loop.f90 +70 -0
  1202. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/two_explicit_do.f90 +59 -0
  1203. PSyclone-2.5.0/src/psyclone/tests/nemo/test_files/utf_char.f90 +36 -0
  1204. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/nemo_extract_test.py +56 -0
  1205. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/openacc/data_directive_test.py +505 -0
  1206. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/openacc/kernels_directive_test.py +409 -0
  1207. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/openacc/loop_directive_test.py +226 -0
  1208. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/openacc/parallel_directive_test.py +200 -0
  1209. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/openmp/openmp_test.py +243 -0
  1210. PSyclone-2.5.0/src/psyclone/tests/nemo/transformations/profiling/nemo_profile_test.py +484 -0
  1211. PSyclone-2.5.0/src/psyclone/tests/parse/__init__.py +0 -0
  1212. PSyclone-2.5.0/src/psyclone/tests/parse/algorithm_test.py +945 -0
  1213. PSyclone-2.5.0/src/psyclone/tests/parse/conftest.py +74 -0
  1214. PSyclone-2.5.0/src/psyclone/tests/parse/kernel_test.py +841 -0
  1215. PSyclone-2.5.0/src/psyclone/tests/parse/module_info_test.py +182 -0
  1216. PSyclone-2.5.0/src/psyclone/tests/parse/module_manager_test.py +310 -0
  1217. PSyclone-2.5.0/src/psyclone/tests/parse/parse_test.py +316 -0
  1218. PSyclone-2.5.0/src/psyclone/tests/parse/utils_test.py +124 -0
  1219. PSyclone-2.5.0/src/psyclone/tests/psyGen_test.py +2240 -0
  1220. PSyclone-2.5.0/src/psyclone/tests/psyad/adjoint_visitor_test.py +940 -0
  1221. PSyclone-2.5.0/src/psyclone/tests/psyad/domain/common/test_adjoint_utils.py +190 -0
  1222. PSyclone-2.5.0/src/psyclone/tests/psyad/domain/lfric/test_lfric_adjoint.py +618 -0
  1223. PSyclone-2.5.0/src/psyclone/tests/psyad/domain/lfric/test_lfric_adjoint_harness.py +861 -0
  1224. PSyclone-2.5.0/src/psyclone/tests/psyad/main_test.py +509 -0
  1225. PSyclone-2.5.0/src/psyclone/tests/psyad/tl2ad_test.py +1182 -0
  1226. PSyclone-2.5.0/src/psyclone/tests/psyad/transformations/test_adjoint_trans.py +91 -0
  1227. PSyclone-2.5.0/src/psyclone/tests/psyad/transformations/test_assignment_trans.py +1483 -0
  1228. PSyclone-2.5.0/src/psyclone/tests/psyad/transformations/test_preprocess.py +405 -0
  1229. PSyclone-2.5.0/src/psyclone/tests/psyad/transformations/test_tangent_linear_error.py +50 -0
  1230. PSyclone-2.5.0/src/psyclone/tests/psyad/utils_test.py +150 -0
  1231. PSyclone-2.5.0/src/psyclone/tests/psyir/__init__.py +0 -0
  1232. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/__init__.py +0 -0
  1233. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/c_test.py +582 -0
  1234. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/debug_writer_test.py +138 -0
  1235. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_common_block_test.py +78 -0
  1236. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_format_stmt_test.py +63 -0
  1237. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_gen_decls_test.py +312 -0
  1238. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_routine_test.py +310 -0
  1239. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_test.py +1999 -0
  1240. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/fortran_unsupported_declns_test.py +290 -0
  1241. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/language_writer_test.py +240 -0
  1242. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/opencl_test.py +259 -0
  1243. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/psyir_openacc_test.py +312 -0
  1244. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/psyir_openmp_test.py +293 -0
  1245. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/sir_test.py +970 -0
  1246. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/sympy_writer_test.py +556 -0
  1247. PSyclone-2.5.0/src/psyclone/tests/psyir/backend/visitor_test.py +487 -0
  1248. PSyclone-2.5.0/src/psyclone/tests/psyir/conftest.py +58 -0
  1249. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/__init__.py +0 -0
  1250. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/conftest.py +55 -0
  1251. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fortran_test.py +226 -0
  1252. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_alloc_handler_test.py +202 -0
  1253. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_bound_intrinsic_test.py +73 -0
  1254. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_call_handler_test.py +150 -0
  1255. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_common_block_test.py +238 -0
  1256. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_container_test.py +380 -0
  1257. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_dealloc_handler_test.py +71 -0
  1258. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_derived_type_test.py +551 -0
  1259. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_do_handler_test.py +361 -0
  1260. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_find_or_create_symbol_test.py +267 -0
  1261. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_format_stmt_test.py +69 -0
  1262. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_fortran_use_test.py +345 -0
  1263. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_generate_psyir_test.py +148 -0
  1264. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_include_test.py +182 -0
  1265. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_interface_block_test.py +200 -0
  1266. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_intrinsic_handler_test.py +412 -0
  1267. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_kind_params_test.py +236 -0
  1268. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_literals_test.py +360 -0
  1269. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_main_program_handler_test.py +119 -0
  1270. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_module_handler_test.py +111 -0
  1271. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_nint_intrinsic_test.py +75 -0
  1272. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_parameter_stmts_test.py +262 -0
  1273. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_part_ref_test.py +133 -0
  1274. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_program_handler_test.py +79 -0
  1275. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_save_stmts_test.py +233 -0
  1276. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_select_case_test.py +693 -0
  1277. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_size_intrinsic_test.py +67 -0
  1278. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_subroutine_handler_test.py +555 -0
  1279. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_subscript_triplet_handler_test.py +117 -0
  1280. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_test.py +3175 -0
  1281. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/fparser2_where_handler_test.py +784 -0
  1282. PSyclone-2.5.0/src/psyclone/tests/psyir/frontend/sympy_reader_test.py +104 -0
  1283. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/acc_clauses_test.py +60 -0
  1284. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/acc_directives_test.py +669 -0
  1285. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/array_member_test.py +225 -0
  1286. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/array_mixin_test.py +751 -0
  1287. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/array_of_structures_member_test.py +105 -0
  1288. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/array_of_structures_reference_test.py +228 -0
  1289. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/array_reference_test.py +606 -0
  1290. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/assignment_test.py +340 -0
  1291. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/call_test.py +585 -0
  1292. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/clause_test.py +52 -0
  1293. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/codeblock_test.py +140 -0
  1294. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/commentable_mixin_test.py +101 -0
  1295. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/container_test.py +182 -0
  1296. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/datanode_test.py +50 -0
  1297. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/directive_test.py +228 -0
  1298. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/dynamic_omp_task_directive_test.py +3489 -0
  1299. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/extract_node_test.py +66 -0
  1300. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/file_container_test.py +99 -0
  1301. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/if_block_test.py +285 -0
  1302. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/intrinsic_call_test.py +525 -0
  1303. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/kernel_schedule_test.py +94 -0
  1304. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/literal_test.py +262 -0
  1305. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/loop_test.py +488 -0
  1306. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/member_test.py +98 -0
  1307. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/node_test.py +1817 -0
  1308. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/omp_clause_test.py +225 -0
  1309. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/omp_directives_test.py +4656 -0
  1310. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/omp_task_directive_test.py +140 -0
  1311. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/operation_test.py +682 -0
  1312. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/profile_node_test.py +202 -0
  1313. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/psy_data_node_test.py +519 -0
  1314. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/range_test.py +249 -0
  1315. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/read_only_verify_test.py +72 -0
  1316. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/reference_test.py +216 -0
  1317. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/return_stmt_test.py +72 -0
  1318. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/routine_test.py +272 -0
  1319. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/schedule_test.py +138 -0
  1320. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/scoping_node_test.py +252 -0
  1321. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/structure_member_test.py +147 -0
  1322. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/structure_reference_test.py +360 -0
  1323. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/type_convert_intrinsic_test.py +106 -0
  1324. PSyclone-2.5.0/src/psyclone/tests/psyir/nodes/while_loop_test.py +169 -0
  1325. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/containersymbol_test.py +233 -0
  1326. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/data_type_symbol_test.py +95 -0
  1327. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/datasymbol_test.py +519 -0
  1328. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/datatype_test.py +796 -0
  1329. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/interfaces_test.py +239 -0
  1330. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/routinesymbol_test.py +144 -0
  1331. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/symbol_table_test.py +2860 -0
  1332. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/symbol_test.py +400 -0
  1333. PSyclone-2.5.0/src/psyclone/tests/psyir/symbols/typed_symbol_test.py +237 -0
  1334. PSyclone-2.5.0/src/psyclone/tests/psyir/tools/dependency_tools_test.py +787 -0
  1335. PSyclone-2.5.0/src/psyclone/tests/psyir/tools/read_write_info_test.py +114 -0
  1336. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/arrayrange2loop_trans_test.py +480 -0
  1337. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/chunk_loop_trans_test.py +459 -0
  1338. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/extract_test.py +235 -0
  1339. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/fold_conditional_return_expressions_trans_test.py +161 -0
  1340. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/hoist_local_arrays_trans_test.py +570 -0
  1341. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/hoist_loop_bound_expr_trans_test.py +182 -0
  1342. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/hoist_trans_test.py +404 -0
  1343. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/inline_trans_test.py +2440 -0
  1344. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/abs2code_trans_test.py +243 -0
  1345. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/array_reduction_base_trans_test.py +748 -0
  1346. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/dotproduct2code_trans_test.py +567 -0
  1347. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/intrinsic2code_trans_test.py +119 -0
  1348. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/matmul2code_trans_test.py +927 -0
  1349. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/max2code_trans_test.py +53 -0
  1350. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/maxval2loop_trans_test.py +140 -0
  1351. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/min2code_trans_test.py +54 -0
  1352. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/minormax2code_trans_test.py +326 -0
  1353. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/minval2loop_trans_test.py +134 -0
  1354. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/product2loop_trans_test.py +142 -0
  1355. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/sign2code_trans_test.py +273 -0
  1356. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/intrinsics/sum2loop_trans_test.py +141 -0
  1357. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/kernel_transformation_test.py +458 -0
  1358. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/loop_colour_test.py +71 -0
  1359. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/loop_fusion_test.py +821 -0
  1360. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/loop_swap_trans_test.py +366 -0
  1361. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/loop_tiling_2d_trans_test.py +231 -0
  1362. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/loop_trans_test.py +154 -0
  1363. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/nan_test.py +167 -0
  1364. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/omp_target_trans_test.py +121 -0
  1365. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/omp_task_transformations_test.py +236 -0
  1366. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/omp_taskloop_transformations_test.py +864 -0
  1367. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/parallel_loop_trans_test.py +270 -0
  1368. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/profile_test.py +836 -0
  1369. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/psy_data_trans_test.py +222 -0
  1370. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/read_only_verify_trans_test.py +133 -0
  1371. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/reference2arrayrange_trans_test.py +357 -0
  1372. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/region_trans_test.py +194 -0
  1373. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/replace_induction_variables_trans_test.py +260 -0
  1374. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/transformation_error_test.py +53 -0
  1375. PSyclone-2.5.0/src/psyclone/tests/psyir/transformations/transformations_test.py +786 -0
  1376. PSyclone-2.5.0/src/psyclone/tests/test_files/__init__.py +33 -0
  1377. PSyclone-2.5.0/src/psyclone/tests/test_files/dummy_config.cfg +71 -0
  1378. PSyclone-2.5.0/src/psyclone/tests/test_files/dummy_transformations.py +62 -0
  1379. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.1_single_named_invoke.f90 +54 -0
  1380. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.2_many_named_invoke.f90 +55 -0
  1381. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.3_wrong_named_arg_invoke.f90 +54 -0
  1382. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.4_wrong_type_named_arg_invoke.f90 +54 -0
  1383. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.5_invoke_named_invoke.f90 +54 -0
  1384. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.0.6_invoke_name_invalid_chars.f90 +50 -0
  1385. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.0_single_invoke_xyoz_qr.f90 +55 -0
  1386. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.1_single_invoke_qr_deref.f90 +55 -0
  1387. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.2_single_invoke_2qr.f90 +57 -0
  1388. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.3_single_invoke_2_identical_qr.f90 +57 -0
  1389. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.4_wrong_qr_shape.f90 +52 -0
  1390. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.5_edge_qr.f90 +53 -0
  1391. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.6_face_qr.f90 +50 -0
  1392. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.7_face_and_edge_qr.f90 +52 -0
  1393. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.8_single_invoke_2qr_shapes.f90 +56 -0
  1394. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.1.9_single_invoke_2qr_shapes_int_field.f90 +54 -0
  1395. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.10_single_invoke_same_name.f90 +55 -0
  1396. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.11_single_invoke_same_name_array.f90 +56 -0
  1397. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.12_single_invoke_deref_name_clash.f90 +60 -0
  1398. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.13_single_invoke_field_deref.f90 +57 -0
  1399. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.14_single_invoke_dofs.f90 +51 -0
  1400. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.15_invoke_kern_with_call.f90 +56 -0
  1401. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.2_multi_invoke.f90 +54 -0
  1402. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.3_multi_invoke_qr.f90 +61 -0
  1403. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5.1_single_invoke_write_multi_fs.f90 +55 -0
  1404. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5.2_single_invoke_write_fld_op.f90 +55 -0
  1405. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5.3_single_invoke_write_any_anyd_space.f90 +50 -0
  1406. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5.4_single_invoke_write_anyspace_w2trace.f90 +50 -0
  1407. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5.5_single_invoke_write_multi_fs_int_field.f90 +55 -0
  1408. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.5_single_invoke_fs.f90 +54 -0
  1409. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.6.1_single_invoke_1_int_scalar.f90 +54 -0
  1410. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.6.2_single_invoke_1_int_from_derived_type.f90 +66 -0
  1411. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.6.3_single_invoke_multiple_derived_types.f90 +59 -0
  1412. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.6.4_scalar_mixed_prec.f90 +54 -0
  1413. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.6_single_invoke_2_int_scalars.f90 +55 -0
  1414. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.7_single_invoke_3scalar.f90 +54 -0
  1415. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1.9_single_invoke_2_real_scalars.f90 +51 -0
  1416. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.1_operator_nofield.f90 +59 -0
  1417. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.3_operator_different_spaces.f90 +59 -0
  1418. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.5_operator_no_field_different_space.f90 +54 -0
  1419. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.6_operator_no_field_scalar.f90 +58 -0
  1420. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.7_operator_read.f90 +58 -0
  1421. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10.9_operator_first.f90 +278 -0
  1422. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/10_operator.f90 +60 -0
  1423. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11.1_any_space.f90 +54 -0
  1424. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11.2_any_space.f90 +48 -0
  1425. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11.3_any_space.f90 +55 -0
  1426. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11.4_any_discontinuous_space.f90 +54 -0
  1427. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11.5_any_discontinuous_space.f90 +55 -0
  1428. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/11_any_space.f90 +54 -0
  1429. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/12.2_enforce_bc_kernel.f90 +50 -0
  1430. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/12.3_multi_kernel_specific.f90 +56 -0
  1431. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/12.4_enforce_op_bc_kernel.f90 +48 -0
  1432. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/12_kernel_specific.f90 +55 -0
  1433. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/13.1_kern_long_line.f90 +51 -0
  1434. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/13.2_alg_long_line_continuator.f90 +61 -0
  1435. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/13_alg_long_line.f90 +54 -0
  1436. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.1.1_halo_cont_write.f90 +52 -0
  1437. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.1.2_stencil_w2_write.f90 +55 -0
  1438. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.10_halo_continuous_cell_w_to_r.f90 +58 -0
  1439. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.11_halo_required_clean_multi.f90 +71 -0
  1440. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.12_halo_wdofs_to_inc.f90 +56 -0
  1441. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.13_halo_inc_to_inc.f90 +54 -0
  1442. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.14_halo_inc_times3.f90 +57 -0
  1443. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.15_halo_readinc.f90 +55 -0
  1444. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.16_disc_stencil_then_read.f90 +62 -0
  1445. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.1_halo_writers.f90 +53 -0
  1446. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.2_halo_readers.f90 +54 -0
  1447. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.3_halo_readers_all_fs.f90 +63 -0
  1448. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.4.1_halo_vector.f90 +49 -0
  1449. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.4.2_halo_vector_xory.f90 +55 -0
  1450. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.4_halo_vector.f90 +52 -0
  1451. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.5_halo_depth.f90 +51 -0
  1452. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.6_halo_depth_2.f90 +52 -0
  1453. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.7.1_halo_annexed.f90 +66 -0
  1454. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.7_halo_annexed.f90 +60 -0
  1455. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.8_halo_same_stencils.f90 +61 -0
  1456. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/14.9_halo_different_stencils.f90 +68 -0
  1457. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.10_aX_plus_aY_builtin.f90 +52 -0
  1458. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.1_X_plus_Y_builtin.f90 +49 -0
  1459. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.1_builtin_and_normal_kernel_invoke_2.f90 +55 -0
  1460. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.2_builtin_and_normal_kernel_invoke.f90 +68 -0
  1461. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.2_inc_X_plus_Y_builtin.f90 +49 -0
  1462. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.3_aX_plus_Y_builtin.f90 +54 -0
  1463. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.4_inc_aX_plus_Y_builtin.f90 +53 -0
  1464. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.5_inc_X_plus_bY_builtin.f90 +52 -0
  1465. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.6_aX_plus_bY_builtin.f90 +54 -0
  1466. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.7_inc_aX_plus_bY_builtin.f90 +54 -0
  1467. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.8_a_plus_X_builtin.f90 +52 -0
  1468. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.8_a_plus_X_builtin_array_of_fields.f90 +58 -0
  1469. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.1.9_inc_a_plus_X_builtin.f90 +52 -0
  1470. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.1_sign_X_builtin.f90 +52 -0
  1471. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.2_sign_X_builtin_set_by_value.f90 +50 -0
  1472. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.3_real_to_int_X_builtin.f90 +51 -0
  1473. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.4_max_aX_builtin.f90 +52 -0
  1474. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.5_inc_max_aX_builtin.f90 +52 -0
  1475. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.6_min_aX_builtin.f90 +52 -0
  1476. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.7_inc_min_aX_builtin.f90 +52 -0
  1477. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.10.8_real_to_real_X_builtin.f90 +54 -0
  1478. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.11.1_X_times_Y_deduce_space.f90 +57 -0
  1479. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.11.2_X_times_Y_different_spaces.f90 +57 -0
  1480. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.12.1_invalid_builtin_kernel.f90 +54 -0
  1481. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.12.2_builtin_with_use.f90 +56 -0
  1482. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.12.3_single_pointwise_builtin.f90 +55 -0
  1483. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.13.1_aX_plus_Y_builtin_set_by_value.f90 +50 -0
  1484. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.13.2_aX_plus_bY_builtin_set_by_value.f90 +49 -0
  1485. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.14.1_multi_aX_plus_Y_builtin.f90 +61 -0
  1486. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.14.2_multiple_set_kernels.f90 +59 -0
  1487. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.14.3_sum_setval_field_builtin.f90 +52 -0
  1488. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.14.4_builtin_and_normal_kernel_invoke.f90 +54 -0
  1489. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.15.1_two_same_builtin_reductions.f90 +51 -0
  1490. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.16.1_two_different_builtin_reductions.f90 +51 -0
  1491. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.17.1_one_reduction_one_standard_builtin.f90 +52 -0
  1492. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.17.2_one_standard_builtin_one_reduction.f90 +52 -0
  1493. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.18.1_builtins_reduction_fuse_error.f90 +53 -0
  1494. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.19.1_three_builtins_two_reductions.f90 +52 -0
  1495. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.10_inc_X_minus_a_builtin.f90 +52 -0
  1496. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.1_X_minus_Y_builtin.f90 +49 -0
  1497. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.2_inc_X_minus_Y_builtin.f90 +48 -0
  1498. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.3_aX_minus_Y_builtin.f90 +52 -0
  1499. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.4_X_minus_bY_builtin.f90 +52 -0
  1500. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.5_inc_X_minus_bY_builtin.f90 +52 -0
  1501. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.6_aX_minus_bY_builtin.f90 +53 -0
  1502. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.7_a_minus_X_builtin.f90 +52 -0
  1503. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.8_inc_a_minus_X_builtin.f90 +52 -0
  1504. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.2.9_X_minus_a_builtin.f90 +52 -0
  1505. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.21.1_int_X_plus_Y_builtin.f90 +48 -0
  1506. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.21.2_int_inc_X_plus_Y_builtin.f90 +49 -0
  1507. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.21.3_int_a_plus_X_builtin.f90 +52 -0
  1508. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.21.4_int_inc_a_plus_X_builtin.f90 +52 -0
  1509. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.1_int_X_minus_Y_builtin.f90 +48 -0
  1510. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.2_int_inc_X_minus_Y_builtin.f90 +48 -0
  1511. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.3_int_a_minus_X_builtin.f90 +53 -0
  1512. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.4_int_inc_a_minus_X_builtin.f90 +53 -0
  1513. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.5_int_X_minus_a_builtin.f90 +53 -0
  1514. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.22.6_int_inc_X_minus_a_builtin.f90 +53 -0
  1515. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.23.1_int_X_times_Y_builtin.f90 +48 -0
  1516. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.23.2_int_inc_X_times_Y_builtin.f90 +48 -0
  1517. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.24.1_int_a_times_X_builtin.f90 +50 -0
  1518. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.24.2_int_inc_a_times_X_builtin.f90 +50 -0
  1519. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.27.1_int_setval_c_builtin.f90 +52 -0
  1520. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.27.2_int_setval_X_builtin.f90 +48 -0
  1521. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.1_int_sign_X_builtin.f90 +52 -0
  1522. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.2_int_to_real_X_builtin.f90 +51 -0
  1523. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.3_int_max_aX_builtin.f90 +52 -0
  1524. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.4_int_inc_max_aX_builtin.f90 +52 -0
  1525. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.5_int_min_aX_builtin.f90 +52 -0
  1526. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.28.6_int_inc_min_aX_builtin.f90 +52 -0
  1527. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.3.1_X_times_Y_builtin.f90 +49 -0
  1528. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.3.2_inc_X_times_Y_builtin.f90 +48 -0
  1529. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.3.3_inc_aX_times_Y_builtin.f90 +52 -0
  1530. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.4.1_a_times_X_builtin.f90 +54 -0
  1531. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.4.2_inc_a_times_X_builtin.f90 +53 -0
  1532. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.1_X_divideby_Y_builtin.f90 +49 -0
  1533. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.2_inc_X_divideby_Y_builtin.f90 +49 -0
  1534. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.3_a_divideby_X_builtin.f90 +50 -0
  1535. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.4_inc_a_divideby_X_builtin.f90 +50 -0
  1536. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.5_X_divideby_a_builtin.f90 +52 -0
  1537. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.5.6_inc_X_divideby_a_builtin.f90 +50 -0
  1538. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.6.1_inc_X_powreal_a_builtin.f90 +52 -0
  1539. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.6.2_inc_X_powint_n_builtin.f90 +60 -0
  1540. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.7.1_setval_c_builtin.f90 +52 -0
  1541. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.7.2_setval_X_builtin.f90 +49 -0
  1542. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.7.3_setval_X_before_user_kern.f90 +50 -0
  1543. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.7.4_setval_random_builtin.f90 +48 -0
  1544. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.8.1_sum_X_builtin.f90 +51 -0
  1545. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.9.1_X_innerproduct_Y_builtin.f90 +51 -0
  1546. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/15.9.2_X_innerproduct_X_builtin.f90 +50 -0
  1547. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/16.2_integer_scalar_sum.f90 +52 -0
  1548. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/16.4.1_multiple_scalar_sums2.f90 +53 -0
  1549. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.10_multiple_kernels_stencils.f90 +69 -0
  1550. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.11_multiple_stencils_mixed_case.f90 +58 -0
  1551. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.12_single_stencil_region.f90 +14 -0
  1552. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.13_single_stencil.f90 +56 -0
  1553. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.14_two_stencils_same_field.f90 +54 -0
  1554. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.15_stencils_same_field_literal_extent.f90 +56 -0
  1555. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.16_stencils_same_field_literal_direction.f90 +54 -0
  1556. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.17_single_kernel_multi_field_same_stencil.f90 +59 -0
  1557. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.18_anyspace_stencil_1.f90 +67 -0
  1558. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.19_anyspace_stencil_2.f90 +61 -0
  1559. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.1_single_stencil.f90 +51 -0
  1560. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.20_multiple_kernels_stencils.f90 +56 -0
  1561. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.21_stencil_names_clash.f90 +59 -0
  1562. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.22_stencil_names_indexed.f90 +60 -0
  1563. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.23_stencil_names_deref.f90 +59 -0
  1564. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.24_any_discontinuous_space_stencil.f90 +71 -0
  1565. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.25_multiple_stencils_int_field.f90 +58 -0
  1566. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.26_single_stencil_cross2d.f90 +50 -0
  1567. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.2_single_stencil_broken.f90 +50 -0
  1568. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.3_single_stencil_xory1d.f90 +54 -0
  1569. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.4_single_stencil_literal.f90 +53 -0
  1570. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.5.1_single_stencil_xory1d_literal.f90 +54 -0
  1571. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.5_single_stencil_xory1d_literal.f90 +54 -0
  1572. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.6_single_stencil_xory1d_value.f90 +56 -0
  1573. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.7_multiple_stencils.f90 +58 -0
  1574. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.8_multiple_stencils_same_name.f90 +55 -0
  1575. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/19.9_multiple_stencils_same_name.f90 +58 -0
  1576. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke.f90 +53 -0
  1577. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_any_discontinuous_space.f90 +52 -0
  1578. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_kern.f90 +55 -0
  1579. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_w2v.f90 +51 -0
  1580. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_w3.f90 +54 -0
  1581. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_w3_only_vector.f90 +52 -0
  1582. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_wtheta.f90 +52 -0
  1583. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/1_single_invoke_wtheta_only_vector.f90 +51 -0
  1584. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.0.1_cma_assembly_scalar.f90 +59 -0
  1585. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.0_cma_assembly.f90 +56 -0
  1586. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.1.1_cma_apply_same_spaces.f90 +55 -0
  1587. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.1.2_cma_apply_disc.f90 +60 -0
  1588. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.1_cma_apply.f90 +52 -0
  1589. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.2.1_cma_matrix_matrix.f90 +57 -0
  1590. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.2_cma_matrix_matrix.f90 +53 -0
  1591. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.3_cma_assembly_field.f90 +54 -0
  1592. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.4_cma_assembly_field_same_fs.f90 +53 -0
  1593. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.5_multi_cma_invoke.f90 +57 -0
  1594. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/20.6_multi_invoke_with_cma.f90 +59 -0
  1595. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/21.1_single_invoke_multi_anyw2.f90 +52 -0
  1596. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/21.2_single_invoke_multi_anyw2_basis.f90 +55 -0
  1597. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/21.3_single_invoke_anyw2_vector.f90 +54 -0
  1598. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/21.4_single_invoke_anyw2_operator.f90 +55 -0
  1599. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/21.5_single_invoke_anyw2_stencil.f90 +52 -0
  1600. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.0_intergrid_prolong.f90 +49 -0
  1601. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.1.1_intergrid_cont_restrict.f90 +50 -0
  1602. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.1_intergrid_restrict.f90 +50 -0
  1603. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.2.1_intergrid_3levels_anyd.f90 +56 -0
  1604. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.2_intergrid_3levels.f90 +57 -0
  1605. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.3_intergrid_plus_general.f90 +53 -0
  1606. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/22.4_intergrid_prolong_vec.f90 +50 -0
  1607. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/23.1_ref_elem_invoke.f90 +52 -0
  1608. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/23.2_multi_ref_elem_invoke.f90 +53 -0
  1609. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/23.3_shared_ref_elem_invoke.f90 +54 -0
  1610. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/23.4_ref_elem_all_faces_invoke.f90 +52 -0
  1611. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/23.5_ref_elem_mixed_prec.f90 +51 -0
  1612. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.1_mesh_prop_invoke.f90 +51 -0
  1613. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.1_read_fs.f90 +48 -0
  1614. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.2_duplicate_mesh_prop_invoke.f90 +52 -0
  1615. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.3_mesh_plus_ref_elem_invoke.f90 +51 -0
  1616. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.4_mesh_plus_face_qr_invoke.f90 +53 -0
  1617. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/24.5_mesh_plus_ref_elem_plus_qr_invoke.f90 +55 -0
  1618. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/25.0_domain.f90 +49 -0
  1619. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/25.1_2kern_domain.f90 +52 -0
  1620. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/25.1_kern_two_domain.f90 +54 -0
  1621. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/25.2_multikern_domain.f90 +63 -0
  1622. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/25.3_multikern_domain_cma.f90 +64 -0
  1623. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.1_mixed_precision.f90 +53 -0
  1624. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.2_mixed_precision_self.f90 +62 -0
  1625. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.3_mixed_precision_error.f90 +71 -0
  1626. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.4_mixed_precision_use.f90 +62 -0
  1627. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.5_mixed_precision_structure.f90 +73 -0
  1628. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.6.2_mixed_precision_rsolver_vector.f90 +65 -0
  1629. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.6.3_mixed_precision_rtran_vector.f90 +65 -0
  1630. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.6.4_mixed_precision_rbl_vector.f90 +65 -0
  1631. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.6.5_mixed_precision_rphys_vector.f90 +65 -0
  1632. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.6_mixed_precision_solver_vector.f90 +72 -0
  1633. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.7_mixed_precision_abstract_solver_vector.f90 +68 -0
  1634. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/26.8_mixed_precision_args.f90 +75 -0
  1635. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/27.access_tests.f90 +58 -0
  1636. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/2_incorrect_number_of_args.f90 +53 -0
  1637. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/3.1_multi_functions_multi_invokes.f90 +65 -0
  1638. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/3.2_multi_functions_multi_named_invokes.f90 +68 -0
  1639. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/3.3_multi_functions_multi_invokes_name_clash.f90 +68 -0
  1640. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/3.4_multi_invoke_name_clash_case_insensitive.f90 +53 -0
  1641. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/3_multi_invokes.f90 +65 -0
  1642. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.10_multi_position_named_invokes.f90 +66 -0
  1643. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.11_named_invoke_name_clash.f90 +58 -0
  1644. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.12_multikernel_invokes_w2v.f90 +55 -0
  1645. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.13_multikernel_invokes_w3_anyd.f90 +56 -0
  1646. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.14_multikernel_invokes_real_int_field_fs.f90 +62 -0
  1647. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.15_multikernel_invokes_real_int_field_invalid.f90 +64 -0
  1648. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.16_multikernel_invokes_real_int_scalar_invalid.f90 +63 -0
  1649. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.1_multikernel_invokes.f90 +59 -0
  1650. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.2_multikernel_invokes.f90 +52 -0
  1651. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.3_multikernel_invokes.f90 +58 -0
  1652. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.4_multikernel_invokes.f90 +61 -0
  1653. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.5.1_multikernel_invokes.f90 +58 -0
  1654. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.5.2_multikernel_invokes.f90 +72 -0
  1655. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.5_multikernel_invokes.f90 +63 -0
  1656. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.6_multikernel_invokes.f90 +57 -0
  1657. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.7_multikernel_invokes.f90 +58 -0
  1658. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.8_multikernel_invokes.f90 +70 -0
  1659. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4.9_named_multikernel_invokes.f90 +58 -0
  1660. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/4_multikernel_invokes.f90 +55 -0
  1661. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/5_alg_field_array.f90 +61 -0
  1662. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.1.1_eval_op_invoke.f90 +47 -0
  1663. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.10_2eval_2fs_qr_invoke.f90 +62 -0
  1664. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.11_2eval_2kern_invoke.f90 +49 -0
  1665. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.1_eval_invoke.f90 +45 -0
  1666. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.2_qr_eval_invoke.f90 +54 -0
  1667. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.3_2eval_invoke.f90 +48 -0
  1668. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.4_2eval_op_invoke.f90 +52 -0
  1669. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.5_2eval_op_to_invoke.f90 +52 -0
  1670. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.6_2eval_diff_nodal_space_invoke.f90 +55 -0
  1671. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.7_2eval_same_var_invoke.f90 +50 -0
  1672. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.8_eval_2fs_invoke.f90 +45 -0
  1673. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6.9_2eval_2fs_invoke.f90 +51 -0
  1674. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/6_multiple_QR_per_invoke.f90 +54 -0
  1675. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/7_QR_field_array.f90 +55 -0
  1676. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8.1_vector_field_deref.f90 +49 -0
  1677. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8.2.1_multikernel_invokes_w3_vector.f90 +55 -0
  1678. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8.2.2_multikernel_invokes_wtheta_vector.f90 +54 -0
  1679. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8.3_multikernel_invokes_vector.f90 +51 -0
  1680. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8_vector_field.f90 +49 -0
  1681. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/8_vector_field_2.f90 +49 -0
  1682. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/alg_script.py +67 -0
  1683. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/assemble_weak_derivative_w3_w2_kernel_mod.f90 +100 -0
  1684. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/broken_builtins_mod.f90 +85 -0
  1685. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_app_anydspace_kernel_mod.F90 +131 -0
  1686. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_app_kernel_mod.F90 +141 -0
  1687. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_app_same_fs_kernel_mod.F90 +124 -0
  1688. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_app_w2v_kernel_mod.F90 +126 -0
  1689. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_asm_field_kernel_mod.F90 +113 -0
  1690. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_asm_kernel_mod.F90 +141 -0
  1691. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_asm_kernel_scalar_mod.F90 +144 -0
  1692. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_asm_same_fs_kernel_mod.F90 +145 -0
  1693. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_mul_2scalars_kernel_mod.F90 +161 -0
  1694. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/columnwise_op_mul_kernel_mod.F90 +153 -0
  1695. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/enforce_bc_kernel_mod.f90 +119 -0
  1696. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/enforce_operator_bc_kernel_mod.F90 +119 -0
  1697. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/error_import.py +5 -0
  1698. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/error_syntax.py +5 -0
  1699. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/error_trans.py +22 -0
  1700. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/.gitignore +3 -0
  1701. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/LICENCE +27 -0
  1702. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/LICENCE.original +30 -0
  1703. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/Makefile +145 -0
  1704. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/README.md +64 -0
  1705. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/configuration/domain_size_config_mod.f90 +191 -0
  1706. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/dependency +141 -0
  1707. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/argument_mod.F90 +292 -0
  1708. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/argument_mod.f90 +294 -0
  1709. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/field_mod.F90 +69 -0
  1710. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/field_mod.f90 +71 -0
  1711. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/field_parent_mod.f90 +459 -0
  1712. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/field_r32_mod.f90 +1073 -0
  1713. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/field_r64_mod.f90 +1071 -0
  1714. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/integer_field_mod.F90 +1100 -0
  1715. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/integer_field_mod.f90 +1102 -0
  1716. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/kernel_mod.F90 +30 -0
  1717. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/kernel_mod.f90 +32 -0
  1718. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/master_dofmap_mod.F90 +123 -0
  1719. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/master_dofmap_mod.f90 +125 -0
  1720. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/polynomial_mod.F90 +113 -0
  1721. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/polynomial_mod.f90 +115 -0
  1722. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/pure_abstract_field_mod.f90 +32 -0
  1723. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_edge_mod.F90 +407 -0
  1724. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_edge_mod.f90 +409 -0
  1725. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_face_mod.F90 +437 -0
  1726. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_face_mod.f90 +439 -0
  1727. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_mod.F90 +25 -0
  1728. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_mod.f90 +27 -0
  1729. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_rule_mod.F90 +37 -0
  1730. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_rule_mod.f90 +39 -0
  1731. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xoyoz_mod.F90 +332 -0
  1732. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xoyoz_mod.f90 +334 -0
  1733. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xyoz_mod.F90 +347 -0
  1734. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xyoz_mod.f90 +349 -0
  1735. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xyz_mod.F90 +322 -0
  1736. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/quadrature_xyz_mod.f90 +324 -0
  1737. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_bl_field_mod.F90 +69 -0
  1738. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_bl_field_mod.f90 +71 -0
  1739. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_phys_field_mod.F90 +69 -0
  1740. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_phys_field_mod.f90 +71 -0
  1741. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_solver_field_mod.F90 +69 -0
  1742. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_solver_field_mod.f90 +71 -0
  1743. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_tran_field_mod.F90 +70 -0
  1744. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/r_tran_field_mod.f90 +72 -0
  1745. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/stencil_2d_dofmap_mod.f90 +268 -0
  1746. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/stencil_dofmap_helper_functions_mod.f90 +204 -0
  1747. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/stencil_dofmap_mod.F90 +365 -0
  1748. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/field/stencil_dofmap_mod.f90 +367 -0
  1749. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/fs_continuity_mod.F90 +104 -0
  1750. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/fs_continuity_mod.f90 +106 -0
  1751. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/function_space_constructor_helper_functions_mod.F90 +2428 -0
  1752. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/function_space_constructor_helper_functions_mod.f90 +2430 -0
  1753. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/function_space_mod.F90 +1460 -0
  1754. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/function_space/function_space_mod.f90 +1462 -0
  1755. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/initialisation/flux_direction_mod.f90 +21 -0
  1756. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/file_mod.F90 +206 -0
  1757. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/file_mod.f90 +208 -0
  1758. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/io_utility_mod.f90 +159 -0
  1759. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ncdf_quad_mod.F90 +1619 -0
  1760. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ncdf_quad_mod.f90 +1621 -0
  1761. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_2d_mod.F90 +854 -0
  1762. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_2d_mod.f90 +856 -0
  1763. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_file_mod.F90 +341 -0
  1764. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_file_mod.f90 +343 -0
  1765. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_generator_mod.F90 +232 -0
  1766. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/io/ugrid_generator_mod.f90 +234 -0
  1767. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/lfric_include_flags.inc +63 -0
  1768. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/extrusion_mod.f90 +558 -0
  1769. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/global_mesh_base_mod.F90 +1053 -0
  1770. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/global_mesh_base_mod.f90 +1055 -0
  1771. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/global_mesh_netcdf_mod.f90 +223 -0
  1772. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_colouring_mod.F90 +900 -0
  1773. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_colouring_mod.f90 +902 -0
  1774. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_constructor_helper_functions_mod.F90 +566 -0
  1775. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_constructor_helper_functions_mod.f90 +568 -0
  1776. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_map_mod.F90 +325 -0
  1777. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_map_mod.f90 +327 -0
  1778. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_mod.F90 +3142 -0
  1779. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/mesh_mod.f90 +3144 -0
  1780. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/partition_mod.F90 +1698 -0
  1781. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/partition_mod.f90 +1700 -0
  1782. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/reference_element_mod.F90 +1976 -0
  1783. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/mesh/reference_element_mod.f90 +1978 -0
  1784. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/columnwise_operator_mod.f90 +638 -0
  1785. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/operator_mod.F90 +74 -0
  1786. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/operator_mod.f90 +76 -0
  1787. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/operator_parent_mod.f90 +202 -0
  1788. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/operator_r32_mod.f90 +214 -0
  1789. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/operator_r64_mod.f90 +214 -0
  1790. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/r_solver_operator_mod.F90 +66 -0
  1791. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/r_solver_operator_mod.f90 +68 -0
  1792. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/r_tran_operator_mod.F90 +66 -0
  1793. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/operator/r_tran_operator_mod.f90 +68 -0
  1794. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/scalar/scalar_mod.F90 +30 -0
  1795. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/scalar/scalar_mod.f90 +32 -0
  1796. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/scalar/scalar_r32_mod.f90 +101 -0
  1797. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/scalar/scalar_r64_mod.f90 +101 -0
  1798. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/constants_mod.F90 +247 -0
  1799. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/constants_mod.f90 +249 -0
  1800. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/coord_transform_mod.F90 +486 -0
  1801. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/coord_transform_mod.f90 +488 -0
  1802. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/count_mod.f90 +203 -0
  1803. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/cross_product_mod.F90 +41 -0
  1804. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/cross_product_mod.f90 +43 -0
  1805. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_data_mod.F90 +53 -0
  1806. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_data_mod.f90 +55 -0
  1807. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_int_mod.F90 +60 -0
  1808. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_int_mod.f90 +62 -0
  1809. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_mod.F90 +464 -0
  1810. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/linked_list_mod.f90 +466 -0
  1811. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/log_mod.F90 +254 -0
  1812. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/log_mod.f90 +256 -0
  1813. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/matrix_invert_mod.F90 +156 -0
  1814. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/matrix_invert_mod.f90 +158 -0
  1815. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/mpi_mod.f90 +549 -0
  1816. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/timer_mod.F90 +280 -0
  1817. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/infrastructure/utilities/timer_mod.f90 +282 -0
  1818. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/int_real_literal_scalar.f90 +55 -0
  1819. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/int_reduction_builtins_mod.f90 +61 -0
  1820. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/invalid_builtins_mod.f90 +203 -0
  1821. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/invalid_script_name +0 -0
  1822. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/kernels/dead_end/no_really/testkern_qr_mod.F90 +87 -0
  1823. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/kernels/in_here/this_way/testkern_dir_mod.F90 +81 -0
  1824. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/longkern_mod.f90 +63 -0
  1825. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/loop_fuse_trans.py +60 -0
  1826. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/matrix_vector_kernel_mod.F90 +86 -0
  1827. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/mixed_kernel_mod.f90 +113 -0
  1828. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/multi_reduction_builtins_mod.f90 +62 -0
  1829. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/no_trans.py +16 -0
  1830. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/not_dofs_builtins_mod.f90 +63 -0
  1831. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/null_trans.py +3 -0
  1832. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/prolong_test_kernel_mod.f90 +88 -0
  1833. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/prolong_vec_kernel_mod.F90 +89 -0
  1834. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/restrict_kernel_mod.F90 +123 -0
  1835. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/restrict_test_kernel_mod.f90 +90 -0
  1836. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/restrict_w2_kernel_mod.F90 +418 -0
  1837. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/ru_kernel_mod.f90 +121 -0
  1838. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/runtime_error.py +4 -0
  1839. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/setop_random_kernel_mod.f90 +77 -0
  1840. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_2qr_int_field_mod.f90 +116 -0
  1841. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_2qr_mod.F90 +100 -0
  1842. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_discontinuous_space_op_1_mod.f90 +102 -0
  1843. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_discontinuous_space_op_2_mod.f90 +101 -0
  1844. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_space_1_mod.f90 +96 -0
  1845. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_space_2_mod.f90 +83 -0
  1846. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_space_3_mod.f90 +73 -0
  1847. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_any_space_4_mod.f90 +107 -0
  1848. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_anyd_any_space_mod.f90 +83 -0
  1849. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_anyw2_operator_mod.f90 +91 -0
  1850. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_anyw2_stencil_mod.f90 +76 -0
  1851. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_anyw2_vector_mod.f90 +86 -0
  1852. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_chi_read_mod.f90 +74 -0
  1853. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_coord_w0_2_mod.f90 +75 -0
  1854. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_coord_w0_mod.f90 +76 -0
  1855. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_different_any_dscnt_space_stencil_mod.f90 +92 -0
  1856. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_different_anyspace_stencil_mod.f90 +85 -0
  1857. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_dofs_mod.f90 +62 -0
  1858. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_domain_mod.F90 +69 -0
  1859. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_2fs_mod.F90 +77 -0
  1860. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_anydspace1_mod.f90 +86 -0
  1861. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_anydspace2_mod.f90 +86 -0
  1862. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_mod.F90 +77 -0
  1863. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_op_mod.F90 +78 -0
  1864. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_op_to_mod.F90 +83 -0
  1865. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_eval_op_to_w0_mod.F90 +89 -0
  1866. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_fs_int_field_mod.f90 +153 -0
  1867. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_fs_mod.f90 +142 -0
  1868. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_invalid_fortran_mod.f90 +64 -0
  1869. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_mesh_prop_face_qr_mod.F90 +83 -0
  1870. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_mesh_prop_mod.F90 +75 -0
  1871. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_mesh_ref_elem_props_mod.F90 +83 -0
  1872. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_mod.F90 +82 -0
  1873. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_multi_anyw2_basis_mod.f90 +81 -0
  1874. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_multi_anyw2_mod.f90 +77 -0
  1875. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_multi_field_same_stencil_mod.f90 +94 -0
  1876. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_no_datatype_mod.f90 +62 -0
  1877. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_one_int_scalar_mod.f90 +85 -0
  1878. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_2_mod.f90 +67 -0
  1879. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_mod.f90 +89 -0
  1880. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_nofield_mod.f90 +89 -0
  1881. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_nofield_scalar_mod.f90 +80 -0
  1882. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_read_mod.f90 +90 -0
  1883. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_operator_real_mod.f90 +93 -0
  1884. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_qr_edges_mod.F90 +101 -0
  1885. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_qr_eval_mod.F90 +98 -0
  1886. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_qr_faces_mod.F90 +92 -0
  1887. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_qr_mod.F90 +88 -0
  1888. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_ref_elem_all_faces_mod.F90 +91 -0
  1889. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_ref_elem_mod.F90 +90 -0
  1890. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_ref_elem_mp_mod.f90 +75 -0
  1891. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_ref_elem_out_mod.F90 +94 -0
  1892. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_same_any_dscnt_space_stencil_mod.f90 +86 -0
  1893. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_same_anyspace_stencil_mod.f90 +82 -0
  1894. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_short_name_mod.f90 +62 -0
  1895. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_simple_mod.f90 +57 -0
  1896. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_simple_with_reduction_mod.f90 +59 -0
  1897. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_cross2d_mod.f90 +87 -0
  1898. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_depth_2_mod.f90 +94 -0
  1899. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_depth_mod.f90 +91 -0
  1900. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_fs_mod.f90 +184 -0
  1901. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_mod.f90 +85 -0
  1902. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_multi_2_mod.f90 +96 -0
  1903. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_multi_int_field_mod.f90 +94 -0
  1904. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_multi_mod.f90 +92 -0
  1905. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_region_mod.f90 +85 -0
  1906. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_vector_mod.f90 +84 -0
  1907. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_vector_xory_mod.f90 +86 -0
  1908. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_w3_mod.f90 +77 -0
  1909. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_xory1d_mod.f90 +86 -0
  1910. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_stencil_xory1d_w3_mod.f90 +79 -0
  1911. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_three_scalars_mod.f90 +92 -0
  1912. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_two_int_scalars_mod.f90 +85 -0
  1913. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_two_real_scalars_mod.f90 +85 -0
  1914. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_vector_2_mod.f90 +70 -0
  1915. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w0_mod.f90 +69 -0
  1916. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w0_readinc_mod.f90 +68 -0
  1917. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w2_only_mod.f90 +71 -0
  1918. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w2v_mod.f90 +76 -0
  1919. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w3_mod.f90 +88 -0
  1920. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_w3_only_vector_mod.f90 +83 -0
  1921. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_with_call_mod.F90 +117 -0
  1922. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_any_anyd_mod.f90 +111 -0
  1923. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_any_mod.f90 +82 -0
  1924. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_any_w2trace_mod.f90 +112 -0
  1925. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_op_and_fld_mod.f90 +81 -0
  1926. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_w2_stencil_mod.f90 +89 -0
  1927. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_write_w2broken_w1_mod.f90 +136 -0
  1928. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_writers_mod.f90 +91 -0
  1929. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_wrong_file_name.F90 +87 -0
  1930. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_wrong_mod_name.F90 +85 -0
  1931. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_wrong_shape_qr_mod.F90 +102 -0
  1932. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_wtheta_mod.f90 +78 -0
  1933. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_wtheta_only_vector_mod.f90 +84 -0
  1934. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/testkern_xyz_mod.f90 +0 -0
  1935. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/tl_testkern_mod.F90 +124 -0
  1936. PSyclone-2.5.0/src/psyclone/tests/test_files/dynamo0p3/weighted_proj_theta2_kernel_mod.F90 +166 -0
  1937. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/.gitignore +3 -0
  1938. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/Makefile +114 -0
  1939. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/alg_script.py +67 -0
  1940. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/boundary_conditions_ne_offset_mod.f90 +321 -0
  1941. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/compute_cu_large_stencil_mod.f90 +96 -0
  1942. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/compute_cu_mod.f90 +114 -0
  1943. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/compute_cv_mod.f90 +116 -0
  1944. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/continuity_mod.f90 +80 -0
  1945. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/driver_test.f90 +89 -0
  1946. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/gocean_default.cfg +158 -0
  1947. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_any_offset_cu_mod.f90 +59 -0
  1948. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_driver_test.f90 +88 -0
  1949. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_field_copy_mod.f90 +44 -0
  1950. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_declaration.f90 +78 -0
  1951. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_fortran.f90 +45 -0
  1952. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_grid_property.f90 +50 -0
  1953. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_iterates_over.f90 +117 -0
  1954. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_meta_arg_type.f90 +61 -0
  1955. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_meta_args.f90 +62 -0
  1956. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_offset.f90 +107 -0
  1957. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_invalid_stencil.f90 +46 -0
  1958. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_missing_iterates_over.f90 +109 -0
  1959. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_missing_offset.f90 +107 -0
  1960. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_missing_stencil.f90 +46 -0
  1961. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_ne_offset_cf_mod.f90 +54 -0
  1962. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_ne_offset_ct_mod.f90 +53 -0
  1963. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_ne_offset_mod.f90 +116 -0
  1964. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_no_fld_args.f90 +59 -0
  1965. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_requires_grid_props.f90 +67 -0
  1966. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_scalar_float.f90 +124 -0
  1967. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_scalar_int.f90 +75 -0
  1968. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_stencil.f90 +85 -0
  1969. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_sw_offset_cf_mod.f90 +102 -0
  1970. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_sw_offset_ct_mod.f90 +91 -0
  1971. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_sw_offset_cu_mod.f90 +95 -0
  1972. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_sw_offset_cv_mod.f90 +120 -0
  1973. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_unsupported_offset_mod.f90 +102 -0
  1974. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_utf_char_mod.f90 +76 -0
  1975. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_with_global_mod.f90 +79 -0
  1976. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_with_unqualified_use_mod.f90 +92 -0
  1977. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_with_use2_mod.f90 +82 -0
  1978. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_with_use_mod.f90 +91 -0
  1979. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_wrong_access.f90 +52 -0
  1980. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_wrong_gridpt_type.f90 +52 -0
  1981. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/kernel_wrong_meta_arg_arg_count.f90 +77 -0
  1982. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/large_stencil.f90 +82 -0
  1983. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/model_mod.f90 +42 -0
  1984. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/momentum_mod.f90 +99 -0
  1985. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/multi_dependent_invoke.f90 +95 -0
  1986. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/nemolite2d_alg_mod.f90 +66 -0
  1987. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/new_iteration_space.f90 +80 -0
  1988. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/new_iteration_space.psyclone +87 -0
  1989. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/new_iteration_space_kernel.f90 +112 -0
  1990. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/script.py +52 -0
  1991. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke.f90 +52 -0
  1992. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_grid_props.f90 +54 -0
  1993. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_kern_with_global.f90 +58 -0
  1994. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_kern_with_unqualified_use.f90 +58 -0
  1995. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_kern_with_use.f90 +58 -0
  1996. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_scalar_float_arg.f90 +46 -0
  1997. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_scalar_int_arg.f90 +44 -0
  1998. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_three_kernels.f90 +62 -0
  1999. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_three_kernels_with_use.f90 +61 -0
  2000. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_two_identical_kernels.f90 +80 -0
  2001. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_two_kernels.f90 +56 -0
  2002. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_two_kernels_scalars.f90 +62 -0
  2003. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/single_invoke_write_to_read.f90 +52 -0
  2004. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test00.1_invoke_kernel_using_const_scalar.f90 +53 -0
  2005. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test00.1_invoke_kernel_wrong_meta_arg_count.f90 +45 -0
  2006. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test00.2_invoke_kernel_invalid_meta_args.f90 +43 -0
  2007. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test00.3_invoke_kernel_invalid_meta_arg_type.f90 +43 -0
  2008. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test01_different_grid_offsets_one_invoke.f90 +56 -0
  2009. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test02_different_grid_offsets_two_invokes.f90 +56 -0
  2010. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test03_invoke_kernel_missing_offset.f90 +52 -0
  2011. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test04_invoke_kernel_invalid_offset.f90 +52 -0
  2012. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test05.1_invoke_kernel_invalid_iterates_over.f90 +52 -0
  2013. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test05_invoke_kernel_missing_iterates_over.f90 +52 -0
  2014. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test06_invoke_kernel_wrong_access.f90 +52 -0
  2015. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test07_invoke_kernel_wrong_gridpt_type.f90 +52 -0
  2016. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test08.1_invoke_kernel_no_fld_args.f90 +39 -0
  2017. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test08_invoke_kernel_invalid_grid_property.f90 +52 -0
  2018. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test09_invoke_kernel_missing_stencil.f90 +52 -0
  2019. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test10_invoke_kernel_invalid_stencil.f90 +52 -0
  2020. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test11_different_iterates_over_one_invoke.f90 +53 -0
  2021. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test12_two_invokes_two_kernels.f90 +56 -0
  2022. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test13_invoke_kernel_invalid_fortran.f90 +52 -0
  2023. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test14_module_inline_same_kernel.f90 +46 -0
  2024. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test14_ne_offset_cf_updated_one_invoke.f90 +52 -0
  2025. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test15_ne_offset_ct_updated_one_invoke.f90 +51 -0
  2026. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test16_ne_offset_cu_updated_one_invoke.f90 +52 -0
  2027. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test17_ne_offset_cv_updated_one_invoke.f90 +51 -0
  2028. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test18_ne_offset_cf_updated_one_invoke.f90 +51 -0
  2029. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test19.1_sw_offset_cf_updated_one_invoke.f90 +51 -0
  2030. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test19.2_sw_offset_all_cf_updated_one_invoke.f90 +51 -0
  2031. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test20_sw_offset_ct_updated_one_invoke.f90 +51 -0
  2032. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test21_sw_offset_all_ct_updated_one_invoke.f90 +51 -0
  2033. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test22_sw_offset_all_cu_updated_one_invoke.f90 +47 -0
  2034. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test23_sw_offset_all_cv_updated_one_invoke.f90 +47 -0
  2035. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test24_any_offset_all_update_one_invoke.f90 +45 -0
  2036. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test25_any_offset_all_cu_update_one_invoke.f90 +45 -0
  2037. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test26_const_bounds_invalid_offset.f90 +46 -0
  2038. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test27_loop_swap.f90 +53 -0
  2039. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test28_invoke_kernel_stencil.f90 +76 -0
  2040. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test29_utf_chars.f90 +62 -0
  2041. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/test30_invalid_kernel_declaration.f90 +51 -0
  2042. PSyclone-2.5.0/src/psyclone/tests/test_files/gocean1p0/time_smooth_mod.f90 +95 -0
  2043. PSyclone-2.5.0/src/psyclone/tests/utilities.py +599 -0
  2044. PSyclone-2.5.0/src/psyclone/tests/utilities_test.py +362 -0
  2045. PSyclone-2.5.0/src/psyclone/tests/utils_test.py +76 -0
  2046. PSyclone-2.5.0/src/psyclone/transformations.py +3021 -0
  2047. PSyclone-2.5.0/src/psyclone/utils.py +69 -0
  2048. PSyclone-2.5.0/src/psyclone/version.py +46 -0
  2049. PSyclone-2.5.0/tutorial/common.mk +83 -0
  2050. PSyclone-2.5.0/tutorial/notebooks/.ipynb_checkpoints/introduction-checkpoint.ipynb +103 -0
  2051. PSyclone-2.5.0/tutorial/notebooks/Makefile +46 -0
  2052. PSyclone-2.5.0/tutorial/notebooks/README.md +46 -0
  2053. PSyclone-2.5.0/tutorial/notebooks/fparser2/.ipynb_checkpoints/parsing_fortran-checkpoint.ipynb +182 -0
  2054. PSyclone-2.5.0/tutorial/notebooks/fparser2/Makefile +36 -0
  2055. PSyclone-2.5.0/tutorial/notebooks/fparser2/parsing_fortran.ipynb +200 -0
  2056. PSyclone-2.5.0/tutorial/notebooks/introduction.ipynb +111 -0
  2057. PSyclone-2.5.0/tutorial/notebooks/nemo/.ipynb_checkpoints/nemo_example3-checkpoint.ipynb +185 -0
  2058. PSyclone-2.5.0/tutorial/notebooks/nemo/Makefile +36 -0
  2059. PSyclone-2.5.0/tutorial/notebooks/nemo/nemo_example3.ipynb +183 -0
  2060. PSyclone-2.5.0/tutorial/notebooks/psyir/.ipynb_checkpoints/psyir_example1-checkpoint.ipynb +241 -0
  2061. PSyclone-2.5.0/tutorial/notebooks/psyir/.ipynb_checkpoints/psyir_example2-checkpoint.ipynb +156 -0
  2062. PSyclone-2.5.0/tutorial/notebooks/psyir/Makefile +36 -0
  2063. PSyclone-2.5.0/tutorial/notebooks/psyir/psyir_example1.ipynb +241 -0
  2064. PSyclone-2.5.0/tutorial/notebooks/psyir/psyir_example2.ipynb +156 -0
  2065. PSyclone-2.5.0/tutorial/practicals/LFRic/Makefile +44 -0
  2066. PSyclone-2.5.0/tutorial/practicals/LFRic/README.md +11 -0
  2067. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/.gitignore +8 -0
  2068. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/LFRic_kernel_structure.md +246 -0
  2069. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/README.md +180 -0
  2070. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/Makefile +115 -0
  2071. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/README.md +282 -0
  2072. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/setval_field_w0_kernel_mod.f90 +77 -0
  2073. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/simple_kernels_alg_mod.x90 +111 -0
  2074. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/simple_kernels_driver.f90 +142 -0
  2075. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/solutions/Makefile +122 -0
  2076. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/solutions/setval_field_w0_kernel_mod.f90 +108 -0
  2077. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/solutions/setval_field_w3_kernel_mod.f90 +108 -0
  2078. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part1/solutions/simple_kernels_alg_mod.x90 +113 -0
  2079. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/Makefile +115 -0
  2080. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/README.md +268 -0
  2081. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/setval_field_any_kernel_mod.f90 +76 -0
  2082. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/simple_kernels_alg_mod.x90 +130 -0
  2083. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/simple_kernels_driver.f90 +142 -0
  2084. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/solutions/Makefile +122 -0
  2085. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/solutions/add_fields_any_kernel_mod.f90 +113 -0
  2086. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/solutions/setval_field_any_kernel_mod.f90 +107 -0
  2087. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/1_simple_kernels/part2/solutions/simple_kernels_alg_mod.x90 +138 -0
  2088. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/.gitignore +5 -0
  2089. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/Makefile +112 -0
  2090. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/README.md +380 -0
  2091. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/builtins_alg_mod.x90 +128 -0
  2092. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/builtins_driver.f90 +141 -0
  2093. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/solutions/Makefile +116 -0
  2094. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/2_built_ins/solutions/builtins_alg_mod.x90 +143 -0
  2095. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/.gitignore +9 -0
  2096. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/Makefile +133 -0
  2097. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/README.md +443 -0
  2098. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/configuration.nml +57 -0
  2099. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/init_perturbation_kernel_mod.f90 +133 -0
  2100. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/plot_xy_slices.py +137 -0
  2101. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/solutions/Makefile +136 -0
  2102. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/solutions/configuration.nml +57 -0
  2103. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/solutions/init_perturbation_kernel_mod.f90 +137 -0
  2104. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/solutions/prop_perturbation_kernel_mod.f90 +141 -0
  2105. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/solutions/time_evolution_alg_mod.x90 +137 -0
  2106. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/time_evolution_alg_mod.x90 +131 -0
  2107. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/3_time_evolution/time_evolution_driver.f90 +209 -0
  2108. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/.gitignore +9 -0
  2109. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile +66 -0
  2110. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile.extract_all +47 -0
  2111. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile.extract_one +47 -0
  2112. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile.inc +130 -0
  2113. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile.nan_all +46 -0
  2114. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/Makefile.readonly_all +46 -0
  2115. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/README.md +304 -0
  2116. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/configuration.nml +57 -0
  2117. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/extract_all_transform.py +80 -0
  2118. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/extract_one_transform.py +82 -0
  2119. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/init_perturbation_kernel_mod.f90 +137 -0
  2120. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/nan_all_transform.py +80 -0
  2121. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/prop_perturbation_kernel_mod.f90 +162 -0
  2122. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/readonly_all_transform.py +80 -0
  2123. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/Makefile.extract_all +47 -0
  2124. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/Makefile.extract_one +47 -0
  2125. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/Makefile.nan_all +46 -0
  2126. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/Makefile.readonly_all +46 -0
  2127. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/extract_all_transform.py +76 -0
  2128. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/extract_one_transform.py +68 -0
  2129. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/nan_all_transform.py +75 -0
  2130. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/solutions/readonly_all_transform.py +76 -0
  2131. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/time_evolution_alg_mod.x90 +136 -0
  2132. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/4_psydata/time_evolution_driver.f90 +208 -0
  2133. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/Makefile +52 -0
  2134. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/README.md +160 -0
  2135. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/background/LFRic_intro.md +92 -0
  2136. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/background/LFRic_structure.md +131 -0
  2137. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/background/separation_concerns.png +0 -0
  2138. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/data/mesh_planar100x100-1000x1000.nc +0 -0
  2139. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/.gitignore +5 -0
  2140. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/Makefile +99 -0
  2141. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/assign_coordinate_field_mod.F90 +240 -0
  2142. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/base_mesh_config_mod.f90 +401 -0
  2143. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/configuration_mod.f90 +393 -0
  2144. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/extrusion_uniform_config_mod.f90 +175 -0
  2145. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/finite_element_config_mod.f90 +300 -0
  2146. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/io_utility_mod.f90 +159 -0
  2147. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/partitioning_config_mod.f90 +282 -0
  2148. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/perturbation_bell_config_mod.f90 +209 -0
  2149. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/planet_config_mod.f90 +258 -0
  2150. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/timestepping_config_mod.f90 +180 -0
  2151. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/write_diagnostics_alg_mod.x90 +100 -0
  2152. PSyclone-2.5.0/tutorial/practicals/LFRic/building_code/gungho_lib/write_methods_mod.f90 +104 -0
  2153. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/1_distributed_memory/Makefile +51 -0
  2154. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/1_distributed_memory/README.md +223 -0
  2155. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/1_distributed_memory/schedule.py +60 -0
  2156. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/2_annexed_dofs/Makefile +52 -0
  2157. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/2_annexed_dofs/README.md +130 -0
  2158. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/2_annexed_dofs/psyclone.cfg +162 -0
  2159. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/2_annexed_dofs/schedule.py +60 -0
  2160. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/Makefile +54 -0
  2161. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/README.md +341 -0
  2162. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/psyclone.cfg +161 -0
  2163. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/schedule.py +22 -0
  2164. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/solutions/overlap_generic.py +102 -0
  2165. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/3_overlapping_comms/solutions/overlap_specific.py +87 -0
  2166. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/4_reductions/Makefile +50 -0
  2167. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/4_reductions/README.md +92 -0
  2168. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/4_reductions/helmholtz_solver_alg_mod.x90 +92 -0
  2169. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/4_reductions/schedule.py +60 -0
  2170. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/Makefile +44 -0
  2171. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/code/apply_variable_hx_kernel_mod.F90 +364 -0
  2172. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/code/enforce_bc_kernel_mod.F90 +120 -0
  2173. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/code/helmholtz_solver_alg_mod.x90 +92 -0
  2174. PSyclone-2.5.0/tutorial/practicals/LFRic/distributed_memory/code/scaled_matrix_vector_kernel_mod.F90 +140 -0
  2175. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/Makefile +54 -0
  2176. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/README.md +382 -0
  2177. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/helmholtz_solver_alg_mod.x90 +90 -0
  2178. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/omp_script.py +75 -0
  2179. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/psyclone.cfg +161 -0
  2180. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/1_openmp/solutions/omp_script.py +92 -0
  2181. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/2_openacc/.gitignore +3 -0
  2182. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/2_openacc/Makefile +54 -0
  2183. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/2_openacc/README.md +258 -0
  2184. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/2_openacc/acc_parallel.py +72 -0
  2185. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/2_openacc/solutions/acc_parallel.py +91 -0
  2186. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/.gitignore +4 -0
  2187. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/Makefile +55 -0
  2188. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/README.md +122 -0
  2189. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/example_alg.x90 +54 -0
  2190. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/kernel_constants.py +95 -0
  2191. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/loop_fuse.py +72 -0
  2192. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/3_sequential/matvec_opt.py +78 -0
  2193. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/Makefile +43 -0
  2194. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/code/apply_variable_hx_kernel_mod.F90 +364 -0
  2195. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/code/enforce_bc_kernel_mod.F90 +120 -0
  2196. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/code/helmholtz_solver_alg_mod.x90 +88 -0
  2197. PSyclone-2.5.0/tutorial/practicals/LFRic/single_node/code/scaled_matrix_vector_kernel_mod.F90 +140 -0
  2198. PSyclone-2.5.0/tutorial/practicals/Makefile +43 -0
  2199. PSyclone-2.5.0/tutorial/practicals/README.md +267 -0
  2200. PSyclone-2.5.0/tutorial/practicals/nemo/1_nemo_psyir/.gitignore +3 -0
  2201. PSyclone-2.5.0/tutorial/practicals/nemo/1_nemo_psyir/Makefile +54 -0
  2202. PSyclone-2.5.0/tutorial/practicals/nemo/1_nemo_psyir/README.md +283 -0
  2203. PSyclone-2.5.0/tutorial/practicals/nemo/1_nemo_psyir/schedule_view_trans.py +80 -0
  2204. PSyclone-2.5.0/tutorial/practicals/nemo/1_nemo_psyir/tra_adv.F90 +319 -0
  2205. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/.gitignore +4 -0
  2206. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/Makefile +100 -0
  2207. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/README.md +205 -0
  2208. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/profile_trans.py +80 -0
  2209. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/runner.f90 +43 -0
  2210. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/solutions/named_profile_trans.py +88 -0
  2211. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/solutions/runner.f90 +43 -0
  2212. PSyclone-2.5.0/tutorial/practicals/nemo/2_nemo_profiling/tra_adv_mod.F90 +327 -0
  2213. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/.gitignore +4 -0
  2214. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/Makefile +104 -0
  2215. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/README.md +348 -0
  2216. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/omp_trans.py +79 -0
  2217. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/runner.f90 +45 -0
  2218. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/solutions/all_levels_loops_omp_trans.py +86 -0
  2219. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/solutions/general_parallel_region_omp_trans.py +111 -0
  2220. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/solutions/omp_trans.py +81 -0
  2221. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/solutions/parallel_region_omp_trans.py +104 -0
  2222. PSyclone-2.5.0/tutorial/practicals/nemo/3_nemo_openmp/tra_adv_mod.F90 +294 -0
  2223. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/.gitignore +4 -0
  2224. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/Makefile +94 -0
  2225. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/README.md +421 -0
  2226. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/kernels_trans.py +84 -0
  2227. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/runner.f90 +40 -0
  2228. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/solutions/Makefile +47 -0
  2229. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/solutions/collapse_trans.py +101 -0
  2230. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/solutions/kernels_trans.py +92 -0
  2231. PSyclone-2.5.0/tutorial/practicals/nemo/4_nemo_openacc/tra_adv_mod.F90 +294 -0
  2232. PSyclone-2.5.0/tutorial/practicals/nemo/Makefile +40 -0
  2233. PSyclone-2.5.0/tutorial/practicals/nemo/README.md +16 -0
  2234. PSyclone-2.5.0/tutorial/practicals/nemo/domain_setup.csh +42 -0
  2235. PSyclone-2.5.0/tutorial/practicals/nemo/domain_setup.sh +42 -0
  2236. PSyclone-2.5.0/tutorial/practicals/nemo/top_level.mk +72 -0
  2237. PSyclone-2.5.0/utils/update_copyright.sh +80 -0
  2238. PSyclone-2.3.1/LICENSE +0 -33
  2239. PSyclone-2.3.1/PKG-INFO +0 -32
  2240. PSyclone-2.3.1/config/psyclone.cfg +0 -145
  2241. PSyclone-2.3.1/doc/_ext/apilinks.py +0 -90
  2242. PSyclone-2.3.1/doc/developer_guide/APIs.rst +0 -1202
  2243. PSyclone-2.3.1/doc/developer_guide/code_snippets/newnode.py +0 -86
  2244. PSyclone-2.3.1/doc/developer_guide/coding-style.rst +0 -266
  2245. PSyclone-2.3.1/doc/developer_guide/conf.py +0 -360
  2246. PSyclone-2.3.1/doc/developer_guide/dependency.rst +0 -638
  2247. PSyclone-2.3.1/doc/developer_guide/index.rst +0 -72
  2248. PSyclone-2.3.1/doc/developer_guide/modules.rst +0 -312
  2249. PSyclone-2.3.1/doc/developer_guide/parsing.rst +0 -314
  2250. PSyclone-2.3.1/doc/developer_guide/pip_requirements.txt +0 -39
  2251. PSyclone-2.3.1/doc/developer_guide/psy_data.rst +0 -1131
  2252. PSyclone-2.3.1/doc/developer_guide/psyir.rst +0 -963
  2253. PSyclone-2.3.1/doc/developer_guide/psyir_backends.rst +0 -403
  2254. PSyclone-2.3.1/doc/developer_guide/psyir_symbols.rst +0 -247
  2255. PSyclone-2.3.1/doc/developer_guide/sympy.rst +0 -194
  2256. PSyclone-2.3.1/doc/developer_guide/transformations.rst +0 -367
  2257. PSyclone-2.3.1/doc/developer_guide/working_practises.rst +0 -586
  2258. PSyclone-2.3.1/doc/psyad/user_guide/_build/latex/Makefile +0 -64
  2259. PSyclone-2.3.1/doc/psyad/user_guide/conf.py +0 -90
  2260. PSyclone-2.3.1/doc/psyad/user_guide/implementation.rst +0 -555
  2261. PSyclone-2.3.1/doc/psyad/user_guide/index.rst +0 -73
  2262. PSyclone-2.3.1/doc/psyad/user_guide/introduction.rst +0 -57
  2263. PSyclone-2.3.1/doc/psyad/user_guide/psyad_command.rst +0 -165
  2264. PSyclone-2.3.1/doc/reference_guide/pip_requirements.txt +0 -41
  2265. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.alg_gen.rst +0 -10
  2266. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.core.access_info.rst +0 -45
  2267. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.core.rst +0 -97
  2268. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.alg_invoke_2_psy_call_trans.rst +0 -25
  2269. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.raise_call_2_invoke_trans.rst +0 -25
  2270. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.rst +0 -20
  2271. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.gocean_constants.rst +0 -25
  2272. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.rst +0 -34
  2273. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.rst +0 -77
  2274. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.psyir.rst +0 -10
  2275. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.algorithm.rst +0 -53
  2276. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_builtins.rst +0 -695
  2277. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.psyir.rst +0 -10
  2278. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.rst +0 -114
  2279. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.lfric_raise_call_2_invoke_trans.rst +0 -25
  2280. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.rst +0 -22
  2281. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.create_nemo_kernel_trans.rst +0 -25
  2282. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_arrayrange2loop_trans.rst +0 -25
  2283. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_loop_fuse.rst +0 -10
  2284. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.rst +0 -132
  2285. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.dynamo0p3.rst +0 -375
  2286. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.gocean1p0.rst +0 -205
  2287. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.parse.rst +0 -20
  2288. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyGen.rst +0 -195
  2289. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyad.rst +0 -22
  2290. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyad.tl2ad.rst +0 -30
  2291. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.rst +0 -24
  2292. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.frontend.rst +0 -19
  2293. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.acc_directives.rst +0 -115
  2294. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.ifblock.rst +0 -10
  2295. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.omp_directives.rst +0 -155
  2296. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.operation.rst +0 -55
  2297. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.rst +0 -731
  2298. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.datatypes.rst +0 -75
  2299. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.rst +0 -346
  2300. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.symboltable.rst +0 -10
  2301. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.tools.rst +0 -43
  2302. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.operator2code_trans.rst +0 -10
  2303. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.rst +0 -25
  2304. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.rst +0 -274
  2305. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.rst +0 -41
  2306. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.core.access_info_test.rst +0 -10
  2307. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.core.rst +0 -22
  2308. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_haloex_test.rst +0 -10
  2309. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.dynkern_test.rst +0 -10
  2310. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.gocean1p0_build.rst +0 -10
  2311. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.parse.rst +0 -21
  2312. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_unknown_declns_test.rst +0 -10
  2313. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.rst +0 -29
  2314. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_call_test.rst +0 -10
  2315. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.rst +0 -40
  2316. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.tests.rst +0 -52
  2317. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.transformations.rst +0 -275
  2318. PSyclone-2.3.1/doc/reference_guide/source/autogenerated/psyclone.virtual_utils.rst +0 -10
  2319. PSyclone-2.3.1/doc/reference_guide/source/conf.py +0 -197
  2320. PSyclone-2.3.1/doc/reference_guide/source/index.rst +0 -40
  2321. PSyclone-2.3.1/doc/user_guide/_build/latex/Makefile +0 -64
  2322. PSyclone-2.3.1/doc/user_guide/algorithm_layer.rst +0 -145
  2323. PSyclone-2.3.1/doc/user_guide/built_ins.rst +0 -312
  2324. PSyclone-2.3.1/doc/user_guide/conf.py +0 -382
  2325. PSyclone-2.3.1/doc/user_guide/configuration.rst +0 -309
  2326. PSyclone-2.3.1/doc/user_guide/dynamo0p3.rst +0 -3754
  2327. PSyclone-2.3.1/doc/user_guide/examples.rst +0 -686
  2328. PSyclone-2.3.1/doc/user_guide/getting_going.rst +0 -527
  2329. PSyclone-2.3.1/doc/user_guide/gocean1p0.rst +0 -916
  2330. PSyclone-2.3.1/doc/user_guide/index.rst +0 -136
  2331. PSyclone-2.3.1/doc/user_guide/introduction.rst +0 -95
  2332. PSyclone-2.3.1/doc/user_guide/kernel_layer.rst +0 -168
  2333. PSyclone-2.3.1/doc/user_guide/libraries.rst +0 -211
  2334. PSyclone-2.3.1/doc/user_guide/nemo.rst +0 -217
  2335. PSyclone-2.3.1/doc/user_guide/pip_requirements.txt +0 -39
  2336. PSyclone-2.3.1/doc/user_guide/profiling.rst +0 -531
  2337. PSyclone-2.3.1/doc/user_guide/psy_data.rst +0 -256
  2338. PSyclone-2.3.1/doc/user_guide/psy_layer.rst +0 -219
  2339. PSyclone-2.3.1/doc/user_guide/psyclone_command.rst +0 -366
  2340. PSyclone-2.3.1/doc/user_guide/psyclone_kern.rst +0 -498
  2341. PSyclone-2.3.1/doc/user_guide/psyir.rst +0 -746
  2342. PSyclone-2.3.1/doc/user_guide/psyke.rst +0 -443
  2343. PSyclone-2.3.1/doc/user_guide/system_specific_setup.rst +0 -117
  2344. PSyclone-2.3.1/doc/user_guide/transformations.rst +0 -1030
  2345. PSyclone-2.3.1/doc/user_guide/tutorial.rst +0 -63
  2346. PSyclone-2.3.1/examples/Makefile +0 -47
  2347. PSyclone-2.3.1/examples/common.mk +0 -101
  2348. PSyclone-2.3.1/examples/gocean/Makefile +0 -39
  2349. PSyclone-2.3.1/examples/gocean/README.md +0 -94
  2350. PSyclone-2.3.1/examples/gocean/eg1/Makefile +0 -107
  2351. PSyclone-2.3.1/examples/gocean/eg1/README.md +0 -77
  2352. PSyclone-2.3.1/examples/gocean/eg1/ompt_alg.f90 +0 -114
  2353. PSyclone-2.3.1/examples/gocean/eg1/opencl_kernels_3.cl +0 -104
  2354. PSyclone-2.3.1/examples/gocean/eg1/opencl_kernels_4.cl +0 -210
  2355. PSyclone-2.3.1/examples/gocean/eg1/opencl_kernels_5.cl +0 -224
  2356. PSyclone-2.3.1/examples/gocean/eg1/opencl_transformation.py +0 -83
  2357. PSyclone-2.3.1/examples/gocean/eg1/openmp_taskloop_trans.py +0 -78
  2358. PSyclone-2.3.1/examples/gocean/eg1/runme.py +0 -83
  2359. PSyclone-2.3.1/examples/gocean/eg1/runme_dag.py +0 -90
  2360. PSyclone-2.3.1/examples/gocean/eg1/runme_loop_fuse.py +0 -101
  2361. PSyclone-2.3.1/examples/gocean/eg1/runme_openacc.py +0 -125
  2362. PSyclone-2.3.1/examples/gocean/eg1/runme_openmp.py +0 -108
  2363. PSyclone-2.3.1/examples/gocean/eg2/Makefile +0 -123
  2364. PSyclone-2.3.1/examples/gocean/eg2/README.md +0 -106
  2365. PSyclone-2.3.1/examples/gocean/eg2/acc_prof_transform.py +0 -69
  2366. PSyclone-2.3.1/examples/gocean/eg2/acc_transform.py +0 -80
  2367. PSyclone-2.3.1/examples/gocean/eg2/alg.f90 +0 -99
  2368. PSyclone-2.3.1/examples/gocean/eg2/alg_gen.f90 +0 -45
  2369. PSyclone-2.3.1/examples/gocean/eg2/inc_field_0_mod.f90 +0 -33
  2370. PSyclone-2.3.1/examples/gocean/eg2/inc_field_mod.f90 +0 -79
  2371. PSyclone-2.3.1/examples/gocean/eg3/Makefile +0 -105
  2372. PSyclone-2.3.1/examples/gocean/eg3/README.md +0 -130
  2373. PSyclone-2.3.1/examples/gocean/eg3/alg.f90 +0 -103
  2374. PSyclone-2.3.1/examples/gocean/eg3/alg_gen.f90 +0 -49
  2375. PSyclone-2.3.1/examples/gocean/eg3/compute_cu_mod.f90 +0 -89
  2376. PSyclone-2.3.1/examples/gocean/eg3/compute_cv_mod.f90 +0 -85
  2377. PSyclone-2.3.1/examples/gocean/eg3/compute_h_mod.f90 +0 -85
  2378. PSyclone-2.3.1/examples/gocean/eg3/compute_z_mod.f90 +0 -103
  2379. PSyclone-2.3.1/examples/gocean/eg3/ocl_trans.py +0 -81
  2380. PSyclone-2.3.1/examples/gocean/eg3/psy_gen.f90 +0 -494
  2381. PSyclone-2.3.1/examples/gocean/eg4/Makefile +0 -91
  2382. PSyclone-2.3.1/examples/gocean/eg4/README.md +0 -143
  2383. PSyclone-2.3.1/examples/gocean/eg4/acc_transform.py +0 -82
  2384. PSyclone-2.3.1/examples/gocean/eg4/alg_gen.f90 +0 -9
  2385. PSyclone-2.3.1/examples/gocean/eg4/alg_kern_use_var.f90 +0 -43
  2386. PSyclone-2.3.1/examples/gocean/eg4/alg_nested_use.f90 +0 -50
  2387. PSyclone-2.3.1/examples/gocean/eg4/another_mod.f90 +0 -47
  2388. PSyclone-2.3.1/examples/gocean/eg4/data_mod.f90 +0 -52
  2389. PSyclone-2.3.1/examples/gocean/eg4/kern_call_kern_mod.f90 +0 -62
  2390. PSyclone-2.3.1/examples/gocean/eg4/kern_nested_use_mod.f90 +0 -59
  2391. PSyclone-2.3.1/examples/gocean/eg4/kern_use_var_mod.f90 +0 -66
  2392. PSyclone-2.3.1/examples/gocean/eg4/ocl_transform.py +0 -80
  2393. PSyclone-2.3.1/examples/gocean/eg4/opencl_kernels_1.cl +0 -19
  2394. PSyclone-2.3.1/examples/gocean/eg4/psy_gen.f90 +0 -49
  2395. PSyclone-2.3.1/examples/gocean/eg5/Makefile +0 -38
  2396. PSyclone-2.3.1/examples/gocean/eg5/README.md +0 -49
  2397. PSyclone-2.3.1/examples/gocean/eg5/extract/Makefile +0 -141
  2398. PSyclone-2.3.1/examples/gocean/eg5/extract/README.md +0 -91
  2399. PSyclone-2.3.1/examples/gocean/eg5/extract/alg.f90 +0 -35
  2400. PSyclone-2.3.1/examples/gocean/eg5/extract/driver-main-init.f90 +0 -136
  2401. PSyclone-2.3.1/examples/gocean/eg5/extract/driver-main-update.f90 +0 -91
  2402. PSyclone-2.3.1/examples/gocean/eg5/extract/extract_transform.py +0 -76
  2403. PSyclone-2.3.1/examples/gocean/eg5/extract/init_field_mod.f90 +0 -72
  2404. PSyclone-2.3.1/examples/gocean/eg5/extract/main.f90 +0 -39
  2405. PSyclone-2.3.1/examples/gocean/eg5/extract/update_field_mod.f90 +0 -85
  2406. PSyclone-2.3.1/examples/gocean/eg5/nan/Makefile +0 -114
  2407. PSyclone-2.3.1/examples/gocean/eg5/nan/README.md +0 -77
  2408. PSyclone-2.3.1/examples/gocean/eg5/nan/alg.f90 +0 -27
  2409. PSyclone-2.3.1/examples/gocean/eg5/nan/init_field_mod.f90 +0 -76
  2410. PSyclone-2.3.1/examples/gocean/eg5/nan/test.x90 +0 -84
  2411. PSyclone-2.3.1/examples/gocean/eg5/nan/test_nan_transform.py +0 -78
  2412. PSyclone-2.3.1/examples/gocean/eg5/nan/update_field_mod.f90 +0 -81
  2413. PSyclone-2.3.1/examples/gocean/eg5/profile/Makefile +0 -156
  2414. PSyclone-2.3.1/examples/gocean/eg5/profile/README.md +0 -130
  2415. PSyclone-2.3.1/examples/gocean/eg5/profile/alg.f90 +0 -31
  2416. PSyclone-2.3.1/examples/gocean/eg5/profile/init_field_mod.f90 +0 -72
  2417. PSyclone-2.3.1/examples/gocean/eg5/profile/test.x90 +0 -83
  2418. PSyclone-2.3.1/examples/gocean/eg5/profile/update_field_mod.f90 +0 -76
  2419. PSyclone-2.3.1/examples/gocean/eg5/readonly/Makefile +0 -113
  2420. PSyclone-2.3.1/examples/gocean/eg5/readonly/README.md +0 -93
  2421. PSyclone-2.3.1/examples/gocean/eg5/readonly/alg.f90 +0 -36
  2422. PSyclone-2.3.1/examples/gocean/eg5/readonly/init_field_mod.f90 +0 -81
  2423. PSyclone-2.3.1/examples/gocean/eg5/readonly/psy.f90 +0 -186
  2424. PSyclone-2.3.1/examples/gocean/eg5/readonly/read_only_transform.py +0 -76
  2425. PSyclone-2.3.1/examples/gocean/eg5/readonly/test.x90 +0 -90
  2426. PSyclone-2.3.1/examples/gocean/eg5/readonly/update_field_mod.f90 +0 -105
  2427. PSyclone-2.3.1/examples/gocean/eg6/Makefile +0 -45
  2428. PSyclone-2.3.1/examples/gocean/eg6/alg.f90 +0 -96
  2429. PSyclone-2.3.1/examples/gocean/eg6/backends_transform.py +0 -73
  2430. PSyclone-2.3.1/examples/gocean/eg6/driver-main-init.f90 +0 -73
  2431. PSyclone-2.3.1/examples/gocean/eg6/driver-main-update.f90 +0 -60
  2432. PSyclone-2.3.1/examples/gocean/eg6/inc_field_mod.f90 +0 -83
  2433. PSyclone-2.3.1/examples/gocean/eg7/Makefile +0 -46
  2434. PSyclone-2.3.1/examples/gocean/eg7/alg.f90 +0 -96
  2435. PSyclone-2.3.1/examples/gocean/eg7/alg_transform.py +0 -53
  2436. PSyclone-2.3.1/examples/gocean/eg7/inc_field_mod.f90 +0 -83
  2437. PSyclone-2.3.1/examples/lfric/Makefile +0 -38
  2438. PSyclone-2.3.1/examples/lfric/README.md +0 -372
  2439. PSyclone-2.3.1/examples/lfric/code/dg_matrix_vector_kernel_mod.F90 +0 -136
  2440. PSyclone-2.3.1/examples/lfric/code/gw_mixed_schur_preconditioner_alg_mod.x90 +0 -246
  2441. PSyclone-2.3.1/examples/lfric/code/matrix_vector_kernel_mod.F90 +0 -132
  2442. PSyclone-2.3.1/examples/lfric/code/testkern_mod.F90 +0 -82
  2443. PSyclone-2.3.1/examples/lfric/code/testkern_write_any_mod.f90 +0 -82
  2444. PSyclone-2.3.1/examples/lfric/eg1/Makefile +0 -53
  2445. PSyclone-2.3.1/examples/lfric/eg1/single_invoke.x90 +0 -53
  2446. PSyclone-2.3.1/examples/lfric/eg10/Makefile +0 -65
  2447. PSyclone-2.3.1/examples/lfric/eg10/intergrid_3levels.x90 +0 -51
  2448. PSyclone-2.3.1/examples/lfric/eg11/Makefile +0 -90
  2449. PSyclone-2.3.1/examples/lfric/eg11/async_script.py +0 -82
  2450. PSyclone-2.3.1/examples/lfric/eg11/helmholtz_solver_alg_mod.f90 +0 -21
  2451. PSyclone-2.3.1/examples/lfric/eg11/helmholtz_solver_alg_mod.x90 +0 -75
  2452. PSyclone-2.3.1/examples/lfric/eg11/helmholtz_solver_alg_psy.f90 +0 -116
  2453. PSyclone-2.3.1/examples/lfric/eg12/Makefile +0 -57
  2454. PSyclone-2.3.1/examples/lfric/eg12/colouring_and_omp.py +0 -80
  2455. PSyclone-2.3.1/examples/lfric/eg12/extract_kernel_with_transformations.py +0 -111
  2456. PSyclone-2.3.1/examples/lfric/eg12/extract_nodes.py +0 -92
  2457. PSyclone-2.3.1/examples/lfric/eg12/find_kernel.py +0 -131
  2458. PSyclone-2.3.1/examples/lfric/eg13/Makefile +0 -51
  2459. PSyclone-2.3.1/examples/lfric/eg13/alg.f90 +0 -109
  2460. PSyclone-2.3.1/examples/lfric/eg13/kernel_constants.py +0 -95
  2461. PSyclone-2.3.1/examples/lfric/eg13/psy.f90 +0 -369
  2462. PSyclone-2.3.1/examples/lfric/eg14/Makefile +0 -111
  2463. PSyclone-2.3.1/examples/lfric/eg14/README.md +0 -41
  2464. PSyclone-2.3.1/examples/lfric/eg14/acc_parallel_dm.py +0 -76
  2465. PSyclone-2.3.1/examples/lfric/eg14/main.x90 +0 -99
  2466. PSyclone-2.3.1/examples/lfric/eg14/main_alg.f90 +0 -44
  2467. PSyclone-2.3.1/examples/lfric/eg14/main_psy.f90 +0 -134
  2468. PSyclone-2.3.1/examples/lfric/eg14/testkern_w0_kernel_mod.f90 +0 -82
  2469. PSyclone-2.3.1/examples/lfric/eg15/Makefile +0 -48
  2470. PSyclone-2.3.1/examples/lfric/eg15/matvec_opt.py +0 -108
  2471. PSyclone-2.3.1/examples/lfric/eg16/Makefile +0 -44
  2472. PSyclone-2.3.1/examples/lfric/eg16/README.md +0 -51
  2473. PSyclone-2.3.1/examples/lfric/eg16/create.py +0 -132
  2474. PSyclone-2.3.1/examples/lfric/eg17/Makefile +0 -41
  2475. PSyclone-2.3.1/examples/lfric/eg17/README.md +0 -76
  2476. PSyclone-2.3.1/examples/lfric/eg17/full_example/Makefile +0 -92
  2477. PSyclone-2.3.1/examples/lfric/eg17/full_example/main.x90 +0 -99
  2478. PSyclone-2.3.1/examples/lfric/eg17/full_example/main_alg.f90 +0 -44
  2479. PSyclone-2.3.1/examples/lfric/eg17/full_example/main_psy.f90 +0 -115
  2480. PSyclone-2.3.1/examples/lfric/eg17/full_example/testkern_w0_kernel_mod.f90 +0 -82
  2481. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/Makefile +0 -101
  2482. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/README.md +0 -69
  2483. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/extract_transform.py +0 -84
  2484. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/main.x90 +0 -99
  2485. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/main_alg.f90 +0 -44
  2486. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/main_psy.f90 +0 -118
  2487. PSyclone-2.3.1/examples/lfric/eg17/full_example_extract/testkern_w0_kernel_mod.f90 +0 -82
  2488. PSyclone-2.3.1/examples/lfric/eg17/full_example_netcdf/Makefile +0 -95
  2489. PSyclone-2.3.1/examples/lfric/eg17/full_example_netcdf/main.x90 +0 -100
  2490. PSyclone-2.3.1/examples/lfric/eg17/full_example_netcdf/main_alg.f90 +0 -45
  2491. PSyclone-2.3.1/examples/lfric/eg17/full_example_netcdf/main_psy.f90 +0 -115
  2492. PSyclone-2.3.1/examples/lfric/eg17/full_example_netcdf/testkern_w0_kernel_mod.f90 +0 -82
  2493. PSyclone-2.3.1/examples/lfric/eg18/Makefile +0 -49
  2494. PSyclone-2.3.1/examples/lfric/eg18/advection_alg_mod.x90 +0 -71
  2495. PSyclone-2.3.1/examples/lfric/eg19/Makefile +0 -54
  2496. PSyclone-2.3.1/examples/lfric/eg19/alg.f90 +0 -15
  2497. PSyclone-2.3.1/examples/lfric/eg19/algorithm.x90 +0 -58
  2498. PSyclone-2.3.1/examples/lfric/eg19/mixed_kernel_mod.f90 +0 -102
  2499. PSyclone-2.3.1/examples/lfric/eg19/psy.f90 +0 -109
  2500. PSyclone-2.3.1/examples/lfric/eg2/Makefile +0 -62
  2501. PSyclone-2.3.1/examples/lfric/eg2/loop_fuse_trans.py +0 -79
  2502. PSyclone-2.3.1/examples/lfric/eg2/module_inline_trans.py +0 -76
  2503. PSyclone-2.3.1/examples/lfric/eg2/multi_invoke_mod.x90 +0 -60
  2504. PSyclone-2.3.1/examples/lfric/eg2/print_psyir_trans.py +0 -63
  2505. PSyclone-2.3.1/examples/lfric/eg3/Makefile +0 -53
  2506. PSyclone-2.3.1/examples/lfric/eg3/colouring_and_omp.py +0 -80
  2507. PSyclone-2.3.1/examples/lfric/eg3/matrix_vector_mm_mod.F90 +0 -128
  2508. PSyclone-2.3.1/examples/lfric/eg3/solver_mod.x90 +0 -795
  2509. PSyclone-2.3.1/examples/lfric/eg3/w3_solver_kernel_mod.F90 +0 -206
  2510. PSyclone-2.3.1/examples/lfric/eg4/Makefile +0 -56
  2511. PSyclone-2.3.1/examples/lfric/eg4/backends_transform.py +0 -79
  2512. PSyclone-2.3.1/examples/lfric/eg4/enforce_bc_kernel_mod.f90 +0 -120
  2513. PSyclone-2.3.1/examples/lfric/eg4/matrix_vector_kernel_mod.F90 +0 -133
  2514. PSyclone-2.3.1/examples/lfric/eg4/mm_diagonal_kernel_mod.F90 +0 -120
  2515. PSyclone-2.3.1/examples/lfric/eg4/solver_mod.x90 +0 -152
  2516. PSyclone-2.3.1/examples/lfric/eg5/Makefile +0 -46
  2517. PSyclone-2.3.1/examples/lfric/eg5/alg.f90 +0 -104
  2518. PSyclone-2.3.1/examples/lfric/eg5/conservative_flux_kernel_mod.F90 +0 -261
  2519. PSyclone-2.3.1/examples/lfric/eg5/subgrid_coeffs_kernel_mod.F90 +0 -220
  2520. PSyclone-2.3.1/examples/lfric/eg6/Makefile +0 -64
  2521. PSyclone-2.3.1/examples/lfric/eg6/alg.x90 +0 -66
  2522. PSyclone-2.3.1/examples/lfric/eg6/omp_reprod_script.py +0 -81
  2523. PSyclone-2.3.1/examples/lfric/eg6/omp_script.py +0 -76
  2524. PSyclone-2.3.1/examples/lfric/eg7/Makefile +0 -46
  2525. PSyclone-2.3.1/examples/lfric/eg7/alg.x90 +0 -94
  2526. PSyclone-2.3.1/examples/lfric/eg7/columnwise_op_app_kernel_mod.F90 +0 -157
  2527. PSyclone-2.3.1/examples/lfric/eg7/columnwise_op_asm_kernel_mod.F90 +0 -161
  2528. PSyclone-2.3.1/examples/lfric/eg7/columnwise_op_mul_kernel_mod.F90 +0 -180
  2529. PSyclone-2.3.1/examples/lfric/eg7/matrix_vector_kernel_mod.F90 +0 -131
  2530. PSyclone-2.3.1/examples/lfric/eg8/Makefile +0 -53
  2531. PSyclone-2.3.1/examples/lfric/eg8/apply_variable_hx_kernel_mod.F90 +0 -364
  2532. PSyclone-2.3.1/examples/lfric/eg8/enforce_bc_kernel_mod.F90 +0 -120
  2533. PSyclone-2.3.1/examples/lfric/eg8/helmholtz_solver_alg_mod.x90 +0 -88
  2534. PSyclone-2.3.1/examples/lfric/eg8/redundant_script.py +0 -67
  2535. PSyclone-2.3.1/examples/lfric/eg8/scaled_matrix_vector_kernel_mod.F90 +0 -140
  2536. PSyclone-2.3.1/examples/lfric/eg9/Makefile +0 -53
  2537. PSyclone-2.3.1/examples/lfric/eg9/advective_inc_alg_mod.x90 +0 -133
  2538. PSyclone-2.3.1/examples/lfric/eg9/colouring_and_omp.py +0 -80
  2539. PSyclone-2.3.1/examples/lfric/eg9/matrix_vector_kernel_mod.F90 +0 -133
  2540. PSyclone-2.3.1/examples/lfric/eg9/rtheta_bd_kernel_mod.F90 +0 -297
  2541. PSyclone-2.3.1/examples/lfric/eg9/rtheta_kernel_mod.F90 +0 -179
  2542. PSyclone-2.3.1/examples/lfric/eg9/rtheta_wtheta_kernel_mod.F90 +0 -198
  2543. PSyclone-2.3.1/examples/lfric/eg9/sample_poly_adv_kernel_mod.F90 +0 -499
  2544. PSyclone-2.3.1/examples/lfric/scripts/Makefile +0 -52
  2545. PSyclone-2.3.1/examples/lfric/scripts/colouring_and_omp.py +0 -80
  2546. PSyclone-2.3.1/examples/lfric/scripts/kernel_print.py +0 -59
  2547. PSyclone-2.3.1/examples/lfric/scripts/loop_fuse.py +0 -82
  2548. PSyclone-2.3.1/examples/lfric/scripts/redundant_dofs.py +0 -75
  2549. PSyclone-2.3.1/examples/lfric/scripts/redundant_setval_c.py +0 -80
  2550. PSyclone-2.3.1/examples/line_length/Makefile +0 -46
  2551. PSyclone-2.3.1/examples/line_length/longlines.f90 +0 -50
  2552. PSyclone-2.3.1/examples/line_length/testkern_qr.F90 +0 -85
  2553. PSyclone-2.3.1/examples/nemo/Makefile +0 -38
  2554. PSyclone-2.3.1/examples/nemo/README.md +0 -129
  2555. PSyclone-2.3.1/examples/nemo/eg1/Makefile +0 -48
  2556. PSyclone-2.3.1/examples/nemo/eg1/README.md +0 -59
  2557. PSyclone-2.3.1/examples/nemo/eg1/openmp_gpu_trans.py +0 -97
  2558. PSyclone-2.3.1/examples/nemo/eg1/openmp_trans.py +0 -65
  2559. PSyclone-2.3.1/examples/nemo/eg2/Makefile +0 -51
  2560. PSyclone-2.3.1/examples/nemo/eg2/README.md +0 -57
  2561. PSyclone-2.3.1/examples/nemo/eg2/omp_levels_trans.py +0 -82
  2562. PSyclone-2.3.1/examples/nemo/eg3/Makefile +0 -92
  2563. PSyclone-2.3.1/examples/nemo/eg3/README.md +0 -106
  2564. PSyclone-2.3.1/examples/nemo/eg3/kernel_utils.py +0 -139
  2565. PSyclone-2.3.1/examples/nemo/eg3/kernels_trans.py +0 -116
  2566. PSyclone-2.3.1/examples/nemo/eg3/psy.f90 +0 -249
  2567. PSyclone-2.3.1/examples/nemo/eg4/Makefile +0 -62
  2568. PSyclone-2.3.1/examples/nemo/eg4/README.md +0 -132
  2569. PSyclone-2.3.1/examples/nemo/eg4/copy_stencil.f90 +0 -49
  2570. PSyclone-2.3.1/examples/nemo/eg4/dawn_script.py +0 -91
  2571. PSyclone-2.3.1/examples/nemo/eg4/hori_diff.f90 +0 -50
  2572. PSyclone-2.3.1/examples/nemo/eg4/if_example.f90 +0 -63
  2573. PSyclone-2.3.1/examples/nemo/eg4/intrinsic_example.f90 +0 -63
  2574. PSyclone-2.3.1/examples/nemo/eg4/sir_trans.py +0 -67
  2575. PSyclone-2.3.1/examples/nemo/eg4/sir_trans_all.py +0 -139
  2576. PSyclone-2.3.1/examples/nemo/eg4/tra_adv_compute.F90 +0 -187
  2577. PSyclone-2.3.1/examples/nemo/eg4/tridiagonal_solve.f90 +0 -67
  2578. PSyclone-2.3.1/examples/nemo/scripts/kernels_trans.py +0 -683
  2579. PSyclone-2.3.1/examples/nemo/scripts/process_nemo.py +0 -167
  2580. PSyclone-2.3.1/examples/psyad/Makefile +0 -39
  2581. PSyclone-2.3.1/examples/psyad/README.md +0 -59
  2582. PSyclone-2.3.1/examples/psyad/eg1/Makefile +0 -63
  2583. PSyclone-2.3.1/examples/psyad/eg1/README.md +0 -76
  2584. PSyclone-2.3.1/examples/psyad/eg1/test_harness.f90 +0 -54
  2585. PSyclone-2.3.1/examples/psyad/eg1/testkern_mod.f90 +0 -70
  2586. PSyclone-2.3.1/examples/psyad/eg1/testkernadj_mod.f90 +0 -38
  2587. PSyclone-2.3.1/examples/psyad/eg2/Makefile +0 -61
  2588. PSyclone-2.3.1/examples/psyad/eg2/README.md +0 -69
  2589. PSyclone-2.3.1/examples/psyad/eg2/alg.f90 +0 -206
  2590. PSyclone-2.3.1/examples/psyad/eg2/dg_matrix_vector_kernel_mod.F90 +0 -98
  2591. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/inc_x_plus_by.f90 +0 -19
  2592. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/matrix_vector_kernel_mod.F90 +0 -147
  2593. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/matrix_vector_kernel_mod_tweaked.F90 +0 -147
  2594. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/tl_kinetic_energy_gradient_kernel_mod_tweaked.F90 +0 -222
  2595. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/tl_vorticity_advection_kernel_mod_tweaked.F90 +0 -252
  2596. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/transpose_matrix_vector_kernel_mod.F90 +0 -103
  2597. PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked/transpose_matrix_vector_kernel_mod_tweaked.F90 +0 -109
  2598. PSyclone-2.3.1/examples/psyad/eg2/main_alg.x90 +0 -197
  2599. PSyclone-2.3.1/examples/psyad/eg2/matrix_vector_kernel_mod.F90 +0 -147
  2600. PSyclone-2.3.1/examples/psyad/eg2/mytest.f90 +0 -140
  2601. PSyclone-2.3.1/examples/psyad/eg2/psy.f90 +0 -2075
  2602. PSyclone-2.3.1/examples/psyad/eg2/tl_kinetic_energy_gradient_kernel_mod.F90 +0 -222
  2603. PSyclone-2.3.1/examples/psyad/eg2/tl_rhs_eos_kernel_mod.F90 +0 -270
  2604. PSyclone-2.3.1/examples/psyad/eg2/tl_rhs_eos_kernel_mod_adj.f90 +0 -160
  2605. PSyclone-2.3.1/examples/psyad/eg2/tl_rhs_eos_kernel_mod_adj.x90 +0 -160
  2606. PSyclone-2.3.1/examples/psyad/eg2/tl_vorticity_advection_kernel_mod.F90 +0 -252
  2607. PSyclone-2.3.1/examples/psyad/eg2/transpose_matrix_vector_kernel_mod.F90 +0 -109
  2608. PSyclone-2.3.1/examples/psyad/eg2/w2_to_w1_projection_kernel_mod.F90 +0 -120
  2609. PSyclone-2.3.1/examples/psyir/Makefile +0 -50
  2610. PSyclone-2.3.1/examples/psyir/README.md +0 -75
  2611. PSyclone-2.3.1/examples/psyir/create.py +0 -220
  2612. PSyclone-2.3.1/examples/psyir/create_structure_types.py +0 -170
  2613. PSyclone-2.3.1/examples/psyir/modify.py +0 -104
  2614. PSyclone-2.3.1/examples/stub_generation/Makefile +0 -45
  2615. PSyclone-2.3.1/examples/stub_generation/testkern_stencil_multi_mod.f90 +0 -62
  2616. PSyclone-2.3.1/lib/Makefile +0 -71
  2617. PSyclone-2.3.1/lib/README.md +0 -180
  2618. PSyclone-2.3.1/lib/extract/Makefile +0 -45
  2619. PSyclone-2.3.1/lib/extract/README.md +0 -54
  2620. PSyclone-2.3.1/lib/extract/netcdf/Makefile +0 -93
  2621. PSyclone-2.3.1/lib/extract/netcdf/README.md +0 -82
  2622. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/Makefile +0 -95
  2623. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/README.md +0 -143
  2624. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/doxyfile +0 -2303
  2625. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/extract_netcdf_base.f90 +0 -648
  2626. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/kernel_data_netcdf.f90 +0 -165
  2627. PSyclone-2.3.1/lib/extract/netcdf/dl_esm_inf/psy_data_base.f90 +0 -545
  2628. PSyclone-2.3.1/lib/extract/netcdf/extract_netcdf_base.f90 +0 -1366
  2629. PSyclone-2.3.1/lib/extract/netcdf/extract_netcdf_base.jinja +0 -551
  2630. PSyclone-2.3.1/lib/extract/netcdf/lfric/Makefile +0 -96
  2631. PSyclone-2.3.1/lib/extract/netcdf/lfric/README.md +0 -144
  2632. PSyclone-2.3.1/lib/extract/netcdf/lfric/extract_netcdf_base.f90 +0 -1383
  2633. PSyclone-2.3.1/lib/extract/netcdf/lfric/kernel_data_netcdf.f90 +0 -324
  2634. PSyclone-2.3.1/lib/extract/netcdf/lfric/psy_data_base.f90 +0 -959
  2635. PSyclone-2.3.1/lib/extract/netcdf/psy_data_base.f90 +0 -979
  2636. PSyclone-2.3.1/lib/extract/netcdf/read_kernel_data_mod.f90 +0 -942
  2637. PSyclone-2.3.1/lib/get_python.sh +0 -60
  2638. PSyclone-2.3.1/lib/nan_test/Makefile +0 -76
  2639. PSyclone-2.3.1/lib/nan_test/README.md +0 -82
  2640. PSyclone-2.3.1/lib/nan_test/dl_esm_inf/Makefile +0 -114
  2641. PSyclone-2.3.1/lib/nan_test/dl_esm_inf/README.md +0 -117
  2642. PSyclone-2.3.1/lib/nan_test/dl_esm_inf/nan_test.f90 +0 -119
  2643. PSyclone-2.3.1/lib/nan_test/dl_esm_inf/nan_test_base.f90 +0 -293
  2644. PSyclone-2.3.1/lib/nan_test/dl_esm_inf/psy_data_base.f90 +0 -556
  2645. PSyclone-2.3.1/lib/nan_test/lfric/Makefile +0 -115
  2646. PSyclone-2.3.1/lib/nan_test/lfric/README.md +0 -123
  2647. PSyclone-2.3.1/lib/nan_test/lfric/nan_test.f90 +0 -271
  2648. PSyclone-2.3.1/lib/nan_test/lfric/nan_test_base.f90 +0 -628
  2649. PSyclone-2.3.1/lib/nan_test/lfric/psy_data_base.f90 +0 -979
  2650. PSyclone-2.3.1/lib/nan_test/nan_test_base.f90 +0 -265
  2651. PSyclone-2.3.1/lib/nan_test/nan_test_base.jinja +0 -229
  2652. PSyclone-2.3.1/lib/nan_test/psy_data_base.f90 +0 -464
  2653. PSyclone-2.3.1/lib/process.py +0 -158
  2654. PSyclone-2.3.1/lib/profiling/Makefile +0 -66
  2655. PSyclone-2.3.1/lib/profiling/README.md +0 -243
  2656. PSyclone-2.3.1/lib/profiling/dl_timer/Makefile +0 -80
  2657. PSyclone-2.3.1/lib/profiling/dl_timer/README.md +0 -144
  2658. PSyclone-2.3.1/lib/profiling/dl_timer/dl_timer.f90 +0 -137
  2659. PSyclone-2.3.1/lib/profiling/drhook/Makefile +0 -70
  2660. PSyclone-2.3.1/lib/profiling/drhook/README.md +0 -156
  2661. PSyclone-2.3.1/lib/profiling/drhook/drhook_psy.f90 +0 -155
  2662. PSyclone-2.3.1/lib/profiling/lfric_timer/Makefile +0 -93
  2663. PSyclone-2.3.1/lib/profiling/lfric_timer/README.md +0 -147
  2664. PSyclone-2.3.1/lib/profiling/lfric_timer/profile_psy_data_mod.F90 +0 -139
  2665. PSyclone-2.3.1/lib/profiling/nvidia/Makefile +0 -60
  2666. PSyclone-2.3.1/lib/profiling/nvidia/README.md +0 -111
  2667. PSyclone-2.3.1/lib/profiling/nvidia/nvtx_prof.f90 +0 -223
  2668. PSyclone-2.3.1/lib/profiling/simple_timing/Makefile +0 -72
  2669. PSyclone-2.3.1/lib/profiling/simple_timing/README.md +0 -120
  2670. PSyclone-2.3.1/lib/profiling/simple_timing/simple_timing.f90 +0 -240
  2671. PSyclone-2.3.1/lib/profiling/template/Makefile +0 -72
  2672. PSyclone-2.3.1/lib/profiling/template/README.md +0 -111
  2673. PSyclone-2.3.1/lib/profiling/template/dummy_lib.f90 +0 -142
  2674. PSyclone-2.3.1/lib/profiling/template/psy_data_base.f90 +0 -269
  2675. PSyclone-2.3.1/lib/psy_data_base.jinja +0 -416
  2676. PSyclone-2.3.1/lib/read_only/Makefile +0 -83
  2677. PSyclone-2.3.1/lib/read_only/README.md +0 -81
  2678. PSyclone-2.3.1/lib/read_only/dl_esm_inf/Makefile +0 -116
  2679. PSyclone-2.3.1/lib/read_only/dl_esm_inf/README.md +0 -120
  2680. PSyclone-2.3.1/lib/read_only/dl_esm_inf/psy_data_base.f90 +0 -556
  2681. PSyclone-2.3.1/lib/read_only/dl_esm_inf/read_only.f90 +0 -161
  2682. PSyclone-2.3.1/lib/read_only/dl_esm_inf/read_only_base.f90 +0 -566
  2683. PSyclone-2.3.1/lib/read_only/lfric/Makefile +0 -119
  2684. PSyclone-2.3.1/lib/read_only/lfric/README.md +0 -123
  2685. PSyclone-2.3.1/lib/read_only/lfric/psy_data_base.f90 +0 -815
  2686. PSyclone-2.3.1/lib/read_only/lfric/read_only.f90 +0 -331
  2687. PSyclone-2.3.1/lib/read_only/lfric/read_only_base.f90 +0 -1044
  2688. PSyclone-2.3.1/lib/read_only/psy_data_base.f90 +0 -464
  2689. PSyclone-2.3.1/lib/read_only/read_only_base.f90 +0 -504
  2690. PSyclone-2.3.1/lib/read_only/read_only_base.jinja +0 -426
  2691. PSyclone-2.3.1/setup.cfg +0 -17
  2692. PSyclone-2.3.1/setup.py +0 -176
  2693. PSyclone-2.3.1/src/PSyclone.egg-info/PKG-INFO +0 -32
  2694. PSyclone-2.3.1/src/PSyclone.egg-info/SOURCES.txt +0 -947
  2695. PSyclone-2.3.1/src/PSyclone.egg-info/requires.txt +0 -27
  2696. PSyclone-2.3.1/src/psyclone/__init__.py +0 -33
  2697. PSyclone-2.3.1/src/psyclone/alg_gen.py +0 -260
  2698. PSyclone-2.3.1/src/psyclone/configuration.py +0 -1341
  2699. PSyclone-2.3.1/src/psyclone/core/__init__.py +0 -57
  2700. PSyclone-2.3.1/src/psyclone/core/access_info.py +0 -693
  2701. PSyclone-2.3.1/src/psyclone/core/access_type.py +0 -135
  2702. PSyclone-2.3.1/src/psyclone/core/component_indices.py +0 -194
  2703. PSyclone-2.3.1/src/psyclone/core/signature.py +0 -263
  2704. PSyclone-2.3.1/src/psyclone/core/symbolic_maths.py +0 -289
  2705. PSyclone-2.3.1/src/psyclone/domain/common/__init__.py +0 -40
  2706. PSyclone-2.3.1/src/psyclone/domain/common/algorithm/__init__.py +0 -49
  2707. PSyclone-2.3.1/src/psyclone/domain/common/algorithm/psyir.py +0 -307
  2708. PSyclone-2.3.1/src/psyclone/domain/common/extract_driver_creator.py +0 -710
  2709. PSyclone-2.3.1/src/psyclone/domain/common/psylayer/__init__.py +0 -40
  2710. PSyclone-2.3.1/src/psyclone/domain/common/psylayer/psyloop.py +0 -363
  2711. PSyclone-2.3.1/src/psyclone/domain/common/transformations/__init__.py +0 -38
  2712. PSyclone-2.3.1/src/psyclone/domain/common/transformations/alg_invoke_2_psy_call_trans.py +0 -154
  2713. PSyclone-2.3.1/src/psyclone/domain/common/transformations/alg_trans.py +0 -98
  2714. PSyclone-2.3.1/src/psyclone/domain/common/transformations/raise_call_2_invoke_trans.py +0 -256
  2715. PSyclone-2.3.1/src/psyclone/domain/gocean/__init__.py +0 -45
  2716. PSyclone-2.3.1/src/psyclone/domain/gocean/gocean_constants.py +0 -104
  2717. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/__init__.py +0 -61
  2718. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/gocean_const_loop_bounds_trans.py +0 -264
  2719. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/gocean_extract_trans.py +0 -185
  2720. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/gocean_loop_fuse_trans.py +0 -103
  2721. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/gocean_move_iteration_boundaries_inside_kernel_trans.py +0 -242
  2722. PSyclone-2.3.1/src/psyclone/domain/gocean/transformations/gocean_opencl_trans.py +0 -1542
  2723. PSyclone-2.3.1/src/psyclone/domain/lfric/__init__.py +0 -66
  2724. PSyclone-2.3.1/src/psyclone/domain/lfric/algorithm/__init__.py +0 -50
  2725. PSyclone-2.3.1/src/psyclone/domain/lfric/algorithm/psyir.py +0 -84
  2726. PSyclone-2.3.1/src/psyclone/domain/lfric/arg_ordering.py +0 -763
  2727. PSyclone-2.3.1/src/psyclone/domain/lfric/function_space.py +0 -398
  2728. PSyclone-2.3.1/src/psyclone/domain/lfric/kern_call_acc_arg_list.py +0 -231
  2729. PSyclone-2.3.1/src/psyclone/domain/lfric/kern_call_arg_list.py +0 -735
  2730. PSyclone-2.3.1/src/psyclone/domain/lfric/kern_stub_arg_list.py +0 -519
  2731. PSyclone-2.3.1/src/psyclone/domain/lfric/kernel_interface.py +0 -783
  2732. PSyclone-2.3.1/src/psyclone/domain/lfric/lfric_arg_descriptor.py +0 -783
  2733. PSyclone-2.3.1/src/psyclone/domain/lfric/lfric_builtins.py +0 -2254
  2734. PSyclone-2.3.1/src/psyclone/domain/lfric/lfric_constants.py +0 -408
  2735. PSyclone-2.3.1/src/psyclone/domain/lfric/psyir.py +0 -289
  2736. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/__init__.py +0 -50
  2737. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/lfric_alg_invoke_2_psy_call_trans.py +0 -119
  2738. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/lfric_alg_trans.py +0 -52
  2739. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/lfric_extract_trans.py +0 -98
  2740. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/lfric_loop_fuse_trans.py +0 -237
  2741. PSyclone-2.3.1/src/psyclone/domain/lfric/transformations/lfric_raise_call_2_invoke_trans.py +0 -110
  2742. PSyclone-2.3.1/src/psyclone/domain/nemo/__init__.py +0 -46
  2743. PSyclone-2.3.1/src/psyclone/domain/nemo/nemo_constants.py +0 -79
  2744. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/__init__.py +0 -74
  2745. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/create_nemo_invoke_schedule_trans.py +0 -159
  2746. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/create_nemo_kernel_trans.py +0 -178
  2747. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/create_nemo_loop_trans.py +0 -151
  2748. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/create_nemo_psy_trans.py +0 -177
  2749. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_allarrayaccess2loop_trans.py +0 -157
  2750. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_allarrayrange2loop_trans.py +0 -157
  2751. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_arrayaccess2loop_trans.py +0 -301
  2752. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_arrayrange2loop_trans.py +0 -453
  2753. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_loop_fuse.py +0 -219
  2754. PSyclone-2.3.1/src/psyclone/domain/nemo/transformations/nemo_outerarrayrange2loop_trans.py +0 -182
  2755. PSyclone-2.3.1/src/psyclone/dynamo0p3.py +0 -9989
  2756. PSyclone-2.3.1/src/psyclone/errors.py +0 -127
  2757. PSyclone-2.3.1/src/psyclone/expression.py +0 -351
  2758. PSyclone-2.3.1/src/psyclone/f2pygen.py +0 -1472
  2759. PSyclone-2.3.1/src/psyclone/gen_kernel_stub.py +0 -102
  2760. PSyclone-2.3.1/src/psyclone/generator.py +0 -485
  2761. PSyclone-2.3.1/src/psyclone/gocean1p0.py +0 -2357
  2762. PSyclone-2.3.1/src/psyclone/kernel_tools.py +0 -196
  2763. PSyclone-2.3.1/src/psyclone/line_length.py +0 -116
  2764. PSyclone-2.3.1/src/psyclone/nemo.py +0 -329
  2765. PSyclone-2.3.1/src/psyclone/parse/__init__.py +0 -33
  2766. PSyclone-2.3.1/src/psyclone/parse/algorithm.py +0 -1179
  2767. PSyclone-2.3.1/src/psyclone/parse/kernel.py +0 -1025
  2768. PSyclone-2.3.1/src/psyclone/parse/lfric_builtins_mod.f90 +0 -1222
  2769. PSyclone-2.3.1/src/psyclone/parse/utils.py +0 -133
  2770. PSyclone-2.3.1/src/psyclone/profiler.py +0 -171
  2771. PSyclone-2.3.1/src/psyclone/psyGen.py +0 -2882
  2772. PSyclone-2.3.1/src/psyclone/psyad/__init__.py +0 -41
  2773. PSyclone-2.3.1/src/psyclone/psyad/adjoint_visitor.py +0 -453
  2774. PSyclone-2.3.1/src/psyclone/psyad/main.py +0 -141
  2775. PSyclone-2.3.1/src/psyclone/psyad/tl2ad.py +0 -735
  2776. PSyclone-2.3.1/src/psyclone/psyad/transformations/__init__.py +0 -39
  2777. PSyclone-2.3.1/src/psyclone/psyad/transformations/adjoint_trans.py +0 -104
  2778. PSyclone-2.3.1/src/psyclone/psyad/transformations/assignment_trans.py +0 -413
  2779. PSyclone-2.3.1/src/psyclone/psyad/transformations/preprocess.py +0 -180
  2780. PSyclone-2.3.1/src/psyclone/psyad/transformations/tangent_linear_error.py +0 -60
  2781. PSyclone-2.3.1/src/psyclone/psyad/utils.py +0 -142
  2782. PSyclone-2.3.1/src/psyclone/psyir/__init__.py +0 -40
  2783. PSyclone-2.3.1/src/psyclone/psyir/backend/__init__.py +0 -33
  2784. PSyclone-2.3.1/src/psyclone/psyir/backend/c.py +0 -503
  2785. PSyclone-2.3.1/src/psyclone/psyir/backend/fortran.py +0 -1631
  2786. PSyclone-2.3.1/src/psyclone/psyir/backend/language_writer.py +0 -254
  2787. PSyclone-2.3.1/src/psyclone/psyir/backend/opencl.py +0 -265
  2788. PSyclone-2.3.1/src/psyclone/psyir/backend/sir.py +0 -522
  2789. PSyclone-2.3.1/src/psyclone/psyir/backend/sympy_writer.py +0 -342
  2790. PSyclone-2.3.1/src/psyclone/psyir/backend/visitor.py +0 -292
  2791. PSyclone-2.3.1/src/psyclone/psyir/frontend/__init__.py +0 -33
  2792. PSyclone-2.3.1/src/psyclone/psyir/frontend/fortran.py +0 -196
  2793. PSyclone-2.3.1/src/psyclone/psyir/frontend/fparser2.py +0 -4043
  2794. PSyclone-2.3.1/src/psyclone/psyir/nodes/__init__.py +0 -166
  2795. PSyclone-2.3.1/src/psyclone/psyir/nodes/acc_directives.py +0 -842
  2796. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_member.py +0 -92
  2797. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_mixin.py +0 -340
  2798. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_of_structures_member.py +0 -98
  2799. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_of_structures_mixin.py +0 -122
  2800. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_of_structures_reference.py +0 -133
  2801. PSyclone-2.3.1/src/psyclone/psyir/nodes/array_reference.py +0 -110
  2802. PSyclone-2.3.1/src/psyclone/psyir/nodes/assignment.py +0 -210
  2803. PSyclone-2.3.1/src/psyclone/psyir/nodes/call.py +0 -344
  2804. PSyclone-2.3.1/src/psyclone/psyir/nodes/clause.py +0 -59
  2805. PSyclone-2.3.1/src/psyclone/psyir/nodes/codeblock.py +0 -163
  2806. PSyclone-2.3.1/src/psyclone/psyir/nodes/commentable_mixin.py +0 -94
  2807. PSyclone-2.3.1/src/psyclone/psyir/nodes/container.py +0 -175
  2808. PSyclone-2.3.1/src/psyclone/psyir/nodes/datanode.py +0 -46
  2809. PSyclone-2.3.1/src/psyclone/psyir/nodes/directive.py +0 -217
  2810. PSyclone-2.3.1/src/psyclone/psyir/nodes/extract_node.py +0 -195
  2811. PSyclone-2.3.1/src/psyclone/psyir/nodes/file_container.py +0 -75
  2812. PSyclone-2.3.1/src/psyclone/psyir/nodes/ifblock.py +0 -224
  2813. PSyclone-2.3.1/src/psyclone/psyir/nodes/kernel_schedule.py +0 -53
  2814. PSyclone-2.3.1/src/psyclone/psyir/nodes/literal.py +0 -162
  2815. PSyclone-2.3.1/src/psyclone/psyir/nodes/loop.py +0 -421
  2816. PSyclone-2.3.1/src/psyclone/psyir/nodes/member.py +0 -143
  2817. PSyclone-2.3.1/src/psyclone/psyir/nodes/nan_test_node.py +0 -124
  2818. PSyclone-2.3.1/src/psyclone/psyir/nodes/node.py +0 -1424
  2819. PSyclone-2.3.1/src/psyclone/psyir/nodes/omp_clauses.py +0 -117
  2820. PSyclone-2.3.1/src/psyclone/psyir/nodes/omp_directives.py +0 -1262
  2821. PSyclone-2.3.1/src/psyclone/psyir/nodes/operation.py +0 -653
  2822. PSyclone-2.3.1/src/psyclone/psyir/nodes/profile_node.py +0 -64
  2823. PSyclone-2.3.1/src/psyclone/psyir/nodes/psy_data_node.py +0 -768
  2824. PSyclone-2.3.1/src/psyclone/psyir/nodes/ranges.py +0 -262
  2825. PSyclone-2.3.1/src/psyclone/psyir/nodes/read_only_verify_node.py +0 -126
  2826. PSyclone-2.3.1/src/psyclone/psyir/nodes/reference.py +0 -179
  2827. PSyclone-2.3.1/src/psyclone/psyir/nodes/return_stmt.py +0 -53
  2828. PSyclone-2.3.1/src/psyclone/psyir/nodes/routine.py +0 -290
  2829. PSyclone-2.3.1/src/psyclone/psyir/nodes/schedule.py +0 -100
  2830. PSyclone-2.3.1/src/psyclone/psyir/nodes/scoping_node.py +0 -134
  2831. PSyclone-2.3.1/src/psyclone/psyir/nodes/statement.py +0 -50
  2832. PSyclone-2.3.1/src/psyclone/psyir/nodes/structure_member.py +0 -135
  2833. PSyclone-2.3.1/src/psyclone/psyir/nodes/structure_reference.py +0 -245
  2834. PSyclone-2.3.1/src/psyclone/psyir/symbols/__init__.py +0 -89
  2835. PSyclone-2.3.1/src/psyclone/psyir/symbols/containersymbol.py +0 -229
  2836. PSyclone-2.3.1/src/psyclone/psyir/symbols/data_type_symbol.py +0 -129
  2837. PSyclone-2.3.1/src/psyclone/psyir/symbols/datasymbol.py +0 -235
  2838. PSyclone-2.3.1/src/psyclone/psyir/symbols/datatypes.py +0 -630
  2839. PSyclone-2.3.1/src/psyclone/psyir/symbols/routinesymbol.py +0 -88
  2840. PSyclone-2.3.1/src/psyclone/psyir/symbols/symbol.py +0 -632
  2841. PSyclone-2.3.1/src/psyclone/psyir/symbols/symboltable.py +0 -1391
  2842. PSyclone-2.3.1/src/psyclone/psyir/symbols/typed_symbol.py +0 -221
  2843. PSyclone-2.3.1/src/psyclone/psyir/tools/__init__.py +0 -45
  2844. PSyclone-2.3.1/src/psyclone/psyir/tools/dependency_tools.py +0 -883
  2845. PSyclone-2.3.1/src/psyclone/psyir/transformations/__init__.py +0 -105
  2846. PSyclone-2.3.1/src/psyclone/psyir/transformations/arrayrange2loop_trans.py +0 -343
  2847. PSyclone-2.3.1/src/psyclone/psyir/transformations/chunk_loop_trans.py +0 -297
  2848. PSyclone-2.3.1/src/psyclone/psyir/transformations/extract_trans.py +0 -192
  2849. PSyclone-2.3.1/src/psyclone/psyir/transformations/fold_conditional_return_expressions_trans.py +0 -149
  2850. PSyclone-2.3.1/src/psyclone/psyir/transformations/hoist_local_arrays_trans.py +0 -298
  2851. PSyclone-2.3.1/src/psyclone/psyir/transformations/hoist_trans.py +0 -265
  2852. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/__init__.py +0 -40
  2853. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/abs2code_trans.py +0 -160
  2854. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/dotproduct2code_trans.py +0 -332
  2855. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/matmul2code_trans.py +0 -464
  2856. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/max2code_trans.py +0 -77
  2857. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/min2code_trans.py +0 -78
  2858. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/minormax2code_trans.py +0 -175
  2859. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/operator2code_trans.py +0 -117
  2860. PSyclone-2.3.1/src/psyclone/psyir/transformations/intrinsics/sign2code_trans.py +0 -176
  2861. PSyclone-2.3.1/src/psyclone/psyir/transformations/loop_fuse_trans.py +0 -137
  2862. PSyclone-2.3.1/src/psyclone/psyir/transformations/loop_swap_trans.py +0 -197
  2863. PSyclone-2.3.1/src/psyclone/psyir/transformations/loop_tiling_2d_trans.py +0 -179
  2864. PSyclone-2.3.1/src/psyclone/psyir/transformations/loop_trans.py +0 -144
  2865. PSyclone-2.3.1/src/psyclone/psyir/transformations/nan_test_trans.py +0 -107
  2866. PSyclone-2.3.1/src/psyclone/psyir/transformations/omp_taskwait_trans.py +0 -492
  2867. PSyclone-2.3.1/src/psyclone/psyir/transformations/profile_trans.py +0 -77
  2868. PSyclone-2.3.1/src/psyclone/psyir/transformations/psy_data_trans.py +0 -318
  2869. PSyclone-2.3.1/src/psyclone/psyir/transformations/read_only_verify_trans.py +0 -125
  2870. PSyclone-2.3.1/src/psyclone/psyir/transformations/region_trans.py +0 -201
  2871. PSyclone-2.3.1/src/psyclone/psyir/transformations/transformation_error.py +0 -55
  2872. PSyclone-2.3.1/src/psyclone/transformations.py +0 -3381
  2873. PSyclone-2.3.1/src/psyclone/version.py +0 -45
  2874. PSyclone-2.3.1/src/psyclone/virtual_utils.py +0 -53
  2875. PSyclone-2.3.1/tutorial/notebooks/.ipynb_checkpoints/introduction-checkpoint.ipynb +0 -103
  2876. PSyclone-2.3.1/tutorial/notebooks/fparser2/.ipynb_checkpoints/parsing_fortran-checkpoint.ipynb +0 -182
  2877. PSyclone-2.3.1/tutorial/notebooks/fparser2/parsing_fortran.ipynb +0 -182
  2878. PSyclone-2.3.1/tutorial/notebooks/introduction.ipynb +0 -103
  2879. PSyclone-2.3.1/tutorial/notebooks/nemo/.ipynb_checkpoints/nemo_example1-checkpoint.ipynb +0 -226
  2880. PSyclone-2.3.1/tutorial/notebooks/nemo/.ipynb_checkpoints/nemo_example2-checkpoint.ipynb +0 -139
  2881. PSyclone-2.3.1/tutorial/notebooks/nemo/.ipynb_checkpoints/nemo_example3-checkpoint.ipynb +0 -192
  2882. PSyclone-2.3.1/tutorial/notebooks/nemo/.ipynb_checkpoints/nemo_example4-checkpoint.ipynb +0 -164
  2883. PSyclone-2.3.1/tutorial/notebooks/nemo/nemo_example3.ipynb +0 -185
  2884. PSyclone-2.3.1/tutorial/notebooks/psyir/.ipynb_checkpoints/psyir_example1-checkpoint.ipynb +0 -241
  2885. PSyclone-2.3.1/tutorial/notebooks/psyir/.ipynb_checkpoints/psyir_example2-checkpoint.ipynb +0 -154
  2886. PSyclone-2.3.1/tutorial/notebooks/psyir/psyir_example1.ipynb +0 -241
  2887. PSyclone-2.3.1/tutorial/notebooks/psyir/psyir_example2.ipynb +0 -154
  2888. {PSyclone-2.3.1 → PSyclone-2.5.0}/CONTRIBUTING.md +0 -0
  2889. {PSyclone-2.3.1 → PSyclone-2.5.0}/MANIFEST.in +0 -0
  2890. {PSyclone-2.3.1 → PSyclone-2.5.0}/README.gource +0 -0
  2891. {PSyclone-2.3.1 → PSyclone-2.5.0}/README.md +0 -0
  2892. {PSyclone-2.3.1 → PSyclone-2.5.0}/README.uml +0 -0
  2893. {PSyclone-2.3.1 → PSyclone-2.5.0}/bin/psyad +0 -0
  2894. {PSyclone-2.3.1 → PSyclone-2.5.0}/bin/psyclone +0 -0
  2895. {PSyclone-2.3.1 → PSyclone-2.5.0}/bin/psyclone-kern +0 -0
  2896. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/bibliography/zz_bibliography.rst +0 -0
  2897. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/developer_guide/Makefile +0 -0
  2898. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/developer_guide/developers_gocean1p0_stencils.rst +0 -0
  2899. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/developer_guide/interface_example.py +0 -0
  2900. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/developer_guide/system_specific_setup.rst +0 -0
  2901. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/developer_guide/zz_bibliography.rst +0 -0
  2902. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/psyad/user_guide/Makefile +0 -0
  2903. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/psyad/user_guide/pip_requirements.txt +0 -0
  2904. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/Makefile +0 -0
  2905. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.configuration.rst +0 -0
  2906. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.core.access_type.rst +0 -0
  2907. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.core.component_indices.rst +0 -0
  2908. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.core.signature.rst +0 -0
  2909. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.core.symbolic_maths.rst +0 -0
  2910. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.algorithm.psyir.rst +0 -0
  2911. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.algorithm.rst +0 -0
  2912. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.extract_driver_creator.rst +0 -0
  2913. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.psylayer.psyloop.rst +0 -0
  2914. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.psylayer.rst +0 -0
  2915. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.rst +0 -0
  2916. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.common.transformations.alg_trans.rst +0 -0
  2917. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_const_loop_bounds_trans.rst +0 -0
  2918. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_extract_trans.rst +0 -0
  2919. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_loop_fuse_trans.rst +0 -0
  2920. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_move_iteration_boundaries_inside_kernel_trans.rst +0 -0
  2921. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.gocean.transformations.gocean_opencl_trans.rst +0 -0
  2922. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.arg_ordering.rst +0 -0
  2923. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.function_space.rst +0 -0
  2924. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kern_call_acc_arg_list.rst +0 -0
  2925. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kern_call_arg_list.rst +0 -0
  2926. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kern_stub_arg_list.rst +0 -0
  2927. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.kernel_interface.rst +0 -0
  2928. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_arg_descriptor.rst +0 -0
  2929. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.lfric_constants.rst +0 -0
  2930. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.lfric_alg_invoke_2_psy_call_trans.rst +0 -0
  2931. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.lfric_alg_trans.rst +0 -0
  2932. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.lfric_extract_trans.rst +0 -0
  2933. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.lfric.transformations.lfric_loop_fuse_trans.rst +0 -0
  2934. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.nemo_constants.rst +0 -0
  2935. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.rst +0 -0
  2936. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.create_nemo_invoke_schedule_trans.rst +0 -0
  2937. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.create_nemo_loop_trans.rst +0 -0
  2938. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.create_nemo_psy_trans.rst +0 -0
  2939. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_allarrayaccess2loop_trans.rst +0 -0
  2940. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_allarrayrange2loop_trans.rst +0 -0
  2941. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_arrayaccess2loop_trans.rst +0 -0
  2942. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.nemo.transformations.nemo_outerarrayrange2loop_trans.rst +0 -0
  2943. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.domain.rst +0 -0
  2944. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.doxy_main_page.rst +0 -0
  2945. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.errors.rst +0 -0
  2946. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.expression.rst +0 -0
  2947. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.f2pygen.rst +0 -0
  2948. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.gen_kernel_stub.rst +0 -0
  2949. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.generator.rst +0 -0
  2950. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.kernel_tools.rst +0 -0
  2951. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.line_length.rst +0 -0
  2952. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.nemo.rst +0 -0
  2953. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.parse.algorithm.rst +0 -0
  2954. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.parse.kernel.rst +0 -0
  2955. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.parse.utils.rst +0 -0
  2956. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.profiler.rst +0 -0
  2957. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.adjoint_visitor.rst +0 -0
  2958. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.main.rst +0 -0
  2959. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.transformations.adjoint_trans.rst +0 -0
  2960. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.transformations.assignment_trans.rst +0 -0
  2961. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.transformations.preprocess.rst +0 -0
  2962. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.transformations.rst +0 -0
  2963. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.transformations.tangent_linear_error.rst +0 -0
  2964. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyad.utils.rst +0 -0
  2965. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.c.rst +0 -0
  2966. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.fortran.rst +0 -0
  2967. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.language_writer.rst +0 -0
  2968. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.opencl.rst +0 -0
  2969. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.sir.rst +0 -0
  2970. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.sympy_writer.rst +0 -0
  2971. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.backend.visitor.rst +0 -0
  2972. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.frontend.fortran.rst +0 -0
  2973. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.frontend.fparser2.rst +0 -0
  2974. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_member.rst +0 -0
  2975. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_mixin.rst +0 -0
  2976. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_of_structures_member.rst +0 -0
  2977. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_of_structures_mixin.rst +0 -0
  2978. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_of_structures_reference.rst +0 -0
  2979. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.array_reference.rst +0 -0
  2980. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.assignment.rst +0 -0
  2981. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.call.rst +0 -0
  2982. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.clause.rst +0 -0
  2983. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.codeblock.rst +0 -0
  2984. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.commentable_mixin.rst +0 -0
  2985. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.container.rst +0 -0
  2986. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.datanode.rst +0 -0
  2987. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.directive.rst +0 -0
  2988. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.extract_node.rst +0 -0
  2989. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.file_container.rst +0 -0
  2990. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.kernel_schedule.rst +0 -0
  2991. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.literal.rst +0 -0
  2992. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.loop.rst +0 -0
  2993. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.member.rst +0 -0
  2994. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.nan_test_node.rst +0 -0
  2995. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.node.rst +0 -0
  2996. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.omp_clauses.rst +0 -0
  2997. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.profile_node.rst +0 -0
  2998. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.psy_data_node.rst +0 -0
  2999. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.ranges.rst +0 -0
  3000. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.read_only_verify_node.rst +0 -0
  3001. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.reference.rst +0 -0
  3002. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.return_stmt.rst +0 -0
  3003. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.routine.rst +0 -0
  3004. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.schedule.rst +0 -0
  3005. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.scoping_node.rst +0 -0
  3006. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.statement.rst +0 -0
  3007. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.structure_member.rst +0 -0
  3008. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.nodes.structure_reference.rst +0 -0
  3009. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.rst +0 -0
  3010. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.containersymbol.rst +0 -0
  3011. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.data_type_symbol.rst +0 -0
  3012. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.datasymbol.rst +0 -0
  3013. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.routinesymbol.rst +0 -0
  3014. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.symbol.rst +0 -0
  3015. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.symbols.typed_symbol.rst +0 -0
  3016. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.tools.dependency_tools.rst +0 -0
  3017. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.arrayrange2loop_trans.rst +0 -0
  3018. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.chunk_loop_trans.rst +0 -0
  3019. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.extract_trans.rst +0 -0
  3020. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.fold_conditional_return_expressions_trans.rst +0 -0
  3021. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.hoist_local_arrays_trans.rst +0 -0
  3022. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.hoist_trans.rst +0 -0
  3023. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.abs2code_trans.rst +0 -0
  3024. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.dotproduct2code_trans.rst +0 -0
  3025. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.matmul2code_trans.rst +0 -0
  3026. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.max2code_trans.rst +0 -0
  3027. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.min2code_trans.rst +0 -0
  3028. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.minormax2code_trans.rst +0 -0
  3029. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.intrinsics.sign2code_trans.rst +0 -0
  3030. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.loop_fuse_trans.rst +0 -0
  3031. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.loop_swap_trans.rst +0 -0
  3032. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.loop_tiling_2d_trans.rst +0 -0
  3033. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.loop_trans.rst +0 -0
  3034. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.nan_test_trans.rst +0 -0
  3035. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.omp_taskwait_trans.rst +0 -0
  3036. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.profile_trans.rst +0 -0
  3037. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.psy_data_trans.rst +0 -0
  3038. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.read_only_verify_trans.rst +0 -0
  3039. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.region_trans.rst +0 -0
  3040. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.psyir.transformations.transformation_error.rst +0 -0
  3041. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.alggen_test.rst +0 -0
  3042. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.config_test.rst +0 -0
  3043. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.conftest.rst +0 -0
  3044. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.core.access_type_test.rst +0 -0
  3045. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.core.component_indices_test.rst +0 -0
  3046. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.core.signature_test.rst +0 -0
  3047. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.core.symbolic_maths_test.rst +0 -0
  3048. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dependency_test.rst +0 -0
  3049. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_basis_test.rst +0 -0
  3050. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_cma_test.rst +0 -0
  3051. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_lma_test.rst +0 -0
  3052. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_multigrid_test.rst +0 -0
  3053. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_quadrature_test.rst +0 -0
  3054. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_stubgen_test.rst +0 -0
  3055. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.dynamo0p3_test.rst +0 -0
  3056. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.errors_test.rst +0 -0
  3057. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.exceptions_test.rst +0 -0
  3058. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.expression_test.rst +0 -0
  3059. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.f2pygen_test.rst +0 -0
  3060. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.gen_kernel_stub_test.rst +0 -0
  3061. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.generator_test.rst +0 -0
  3062. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.gocean1p0_config_test.rst +0 -0
  3063. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.gocean1p0_stencil_test.rst +0 -0
  3064. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.gocean1p0_test.rst +0 -0
  3065. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.kernel_tools_test.rst +0 -0
  3066. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.lfric_build.rst +0 -0
  3067. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.lfric_ref_elem_test.rst +0 -0
  3068. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.line_length_test.rst +0 -0
  3069. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.nemo.nemo_config_test.rst +0 -0
  3070. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.nemo.nemo_psy_test.rst +0 -0
  3071. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.nemo.rst +0 -0
  3072. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.parse.algorithm_test.rst +0 -0
  3073. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.parse.kernel_test.rst +0 -0
  3074. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.parse.parse_test.rst +0 -0
  3075. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.parse.utils_test.rst +0 -0
  3076. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyGen_test.rst +0 -0
  3077. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.c_test.rst +0 -0
  3078. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_format_stmt_test.rst +0 -0
  3079. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_gen_decls_test.rst +0 -0
  3080. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.fortran_test.rst +0 -0
  3081. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.language_writer_test.rst +0 -0
  3082. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.opencl_test.rst +0 -0
  3083. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.psyir_openacc_test.rst +0 -0
  3084. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.psyir_openmp_test.rst +0 -0
  3085. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.sir_test.rst +0 -0
  3086. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.sympy_writer_test.rst +0 -0
  3087. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.backend.visitor_test.rst +0 -0
  3088. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.conftest.rst +0 -0
  3089. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.conftest.rst +0 -0
  3090. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fortran_test.rst +0 -0
  3091. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_bound_intrinsic_test.rst +0 -0
  3092. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_container_test.rst +0 -0
  3093. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_derived_type_test.rst +0 -0
  3094. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_do_handler_test.rst +0 -0
  3095. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_find_or_create_symbol_test.rst +0 -0
  3096. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_format_stmt_test.rst +0 -0
  3097. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_fortran_use_test.rst +0 -0
  3098. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_generate_psyir_test.rst +0 -0
  3099. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_interface_block_test.rst +0 -0
  3100. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_kind_params_test.rst +0 -0
  3101. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_literals_test.rst +0 -0
  3102. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_main_program_handler_test.rst +0 -0
  3103. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_module_handler_test.rst +0 -0
  3104. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_nint_intrinsic_test.rst +0 -0
  3105. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_program_handler_test.rst +0 -0
  3106. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_size_intrinsic_test.rst +0 -0
  3107. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_subroutine_handler_test.rst +0 -0
  3108. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_subscript_triplet_handler_test.rst +0 -0
  3109. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_test.rst +0 -0
  3110. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.frontend.fparser2_where_handler_test.rst +0 -0
  3111. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.psyir.rst +0 -0
  3112. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.test_files.dummy_transformations.rst +0 -0
  3113. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.test_files.rst +0 -0
  3114. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.utilities.rst +0 -0
  3115. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.tests.utilities_test.rst +0 -0
  3116. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/reference_guide/source/autogenerated/psyclone.version.rst +0 -0
  3117. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/Makefile +0 -0
  3118. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/api.rst +0 -0
  3119. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/distributed_memory.rst +0 -0
  3120. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/fortran_naming_conventions.rst +0 -0
  3121. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/line_length.rst +0 -0
  3122. {PSyclone-2.3.1 → PSyclone-2.5.0}/doc/user_guide/zz_bibliography.rst +0 -0
  3123. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/README.md +0 -0
  3124. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_cu_mod.f90 +0 -0
  3125. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_cv_mod.f90 +0 -0
  3126. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_h_mod.f90 +0 -0
  3127. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_pnew_mod.f90 +0 -0
  3128. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_unew_mod.f90 +0 -0
  3129. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_vnew_mod.f90 +0 -0
  3130. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/compute_z_mod.f90 +0 -0
  3131. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/infrastructure_mod.f90 +0 -0
  3132. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/ompt_psy.f90 +0 -0
  3133. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/opencl_kernels_0.cl +0 -0
  3134. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/opencl_kernels_1.cl +0 -0
  3135. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/opencl_kernels_2.cl +0 -0
  3136. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/shallow_alg.f90 +0 -0
  3137. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg1/time_smooth_mod.f90 +0 -0
  3138. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg2/psy.f90 +0 -0
  3139. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg3/opencl_kernels_0.cl +0 -0
  3140. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg4/alg_kern_call_kern.f90 +0 -0
  3141. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg4/opencl_kernels_0.cl +0 -0
  3142. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg5/extract/psy.f90 +0 -0
  3143. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg5/extract/test.x90 +0 -0
  3144. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg5/nan/psy.f90 +0 -0
  3145. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg5/profile/psy.f90 +0 -0
  3146. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg6/README.md +0 -0
  3147. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/gocean/eg7/README.md +0 -0
  3148. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg10/prolong_kernel_mod.F90 +0 -0
  3149. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg10/restrict_kernel_mod.F90 +0 -0
  3150. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg11/scaled_matrix_vector_kernel_mod.F90 +0 -0
  3151. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg13/dg_matrix_vector_kernel_0_mod.f90 +0 -0
  3152. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg13/dg_matrix_vector_kernel_1_mod.f90 +0 -0
  3153. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg13/matrix_vector_kernel_0_mod.f90 +0 -0
  3154. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg13/matrix_vector_kernel_1_mod.f90 +0 -0
  3155. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg14/testkern_w0_kernel_0_mod.f90 +0 -0
  3156. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg17/full_example/README.md +0 -0
  3157. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg17/full_example_netcdf/README.md +0 -0
  3158. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/eg18/impose_min_flux_kernel_mod.f90 +0 -0
  3159. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/lfric/scripts/README.md +0 -0
  3160. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/line_length/README.md +0 -0
  3161. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/line_length/runme.py +0 -0
  3162. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/nemo/code/tra_adv.F90 +0 -0
  3163. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/nemo/code/traldf_iso.F90 +0 -0
  3164. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/psyad/eg2/tl_hydrostatic_kernel_mod.F90 +0 -0
  3165. {PSyclone-2.3.1/examples/psyad/eg2 → PSyclone-2.5.0/examples/psyad/lfric/tangent_linear}/strong_curl_kernel_mod.F90 +0 -0
  3166. {PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked → PSyclone-2.5.0/examples/psyad/lfric/tangent_linear}/tl_kinetic_energy_gradient_kernel_mod.F90 +0 -0
  3167. {PSyclone-2.3.1/examples/psyad/eg2/lfric_adjoint_tweaked → PSyclone-2.5.0/examples/psyad/lfric/tangent_linear}/tl_vorticity_advection_kernel_mod.F90 +0 -0
  3168. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/stub_generation/README.md +0 -0
  3169. {PSyclone-2.3.1 → PSyclone-2.5.0}/examples/top_level.mk +0 -0
  3170. {PSyclone-2.3.1 → PSyclone-2.5.0}/src/PSyclone.egg-info/dependency_links.txt +0 -0
  3171. {PSyclone-2.3.1 → PSyclone-2.5.0}/src/PSyclone.egg-info/top_level.txt +0 -0
  3172. {PSyclone-2.3.1 → PSyclone-2.5.0}/src/psyclone/domain/__init__.py +0 -0
  3173. {PSyclone-2.3.1 → PSyclone-2.5.0}/src/psyclone/doxy_main_page.py +0 -0
  3174. {PSyclone-2.3.1 → PSyclone-2.5.0}/tutorial/notebooks/nemo/nemo_example1.ipynb +0 -0
  3175. {PSyclone-2.3.1 → PSyclone-2.5.0}/tutorial/notebooks/nemo/nemo_example2.ipynb +0 -0
  3176. {PSyclone-2.3.1 → PSyclone-2.5.0}/tutorial/notebooks/nemo/nemo_example4.ipynb +0 -0
@@ -0,0 +1,134 @@
1
+ # -----------------------------------------------------------------------------
2
+ # BSD 3-Clause License
3
+ #
4
+ # Copyright (c) 2020-2024, Science and Technology Facilities Council.
5
+ # All rights reserved.
6
+ #
7
+ # Redistribution and use in source and binary forms, with or without
8
+ # modification, are permitted provided that the following conditions are met:
9
+ #
10
+ # * Redistributions of source code must retain the above copyright notice, this
11
+ # list of conditions and the following disclaimer.
12
+ #
13
+ # * Redistributions in binary form must reproduce the above copyright notice,
14
+ # this list of conditions and the following disclaimer in the documentation
15
+ # and/or other materials provided with the distribution.
16
+ #
17
+ # * Neither the name of the copyright holder nor the names of its
18
+ # contributors may be used to endorse or promote products derived from
19
+ # this software without specific prior written permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
+ # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
+ # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
+ # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
+ # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
+ # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
+ # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
+ # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
+ # POSSIBILITY OF SUCH DAMAGE.
33
+ # -----------------------------------------------------------------------------
34
+ # Author A. R. Porter, STFC Daresbury Lab
35
+ # Modified by R. W. Ford, STFC Daresbury Lab
36
+ # Modified by A. J. Voysey, Met Office
37
+ # Modified by J. Henrichs, Bureau of Meteorology
38
+ # Modified by N. Nobre, STFC Daresbury Lab
39
+
40
+ # This workflow will use a self-hosted runner to perform the more expensive
41
+ # compilation tests that are not run on GHA systems. At the moment it:
42
+ #
43
+ # * Runs the test suite with compilation with gfortran and nvfortran;
44
+ # * Builds the examples with gfortran and nvfortran (the latter with
45
+ # OpenACC enabled).
46
+ # * Builds the tutorials with gfortran and nvfortran.
47
+
48
+ name: Compilation tests
49
+
50
+ on:
51
+ push
52
+
53
+ env:
54
+ CUDA_VERSION: 12.3.1
55
+ GFORTRAN_VERSION: 13.2.0
56
+ HDF5_VERSION: 1.14.3
57
+ NETCDF_C_VERSION: 4.9.2
58
+ NETCDF_FORTRAN_VERSION: 4.6.1
59
+ NVFORTRAN_VERSION: 23.11
60
+ OPENMPI_VERSION: 5.0.0
61
+ PYTHON_VERSION: 3.12.1
62
+
63
+ jobs:
64
+ run_if_on_mirror:
65
+ # Only PSyclone-mirror has the necessary self-hosted runner.
66
+ if: ${{ github.repository == 'stfc/PSyclone-mirror' }}
67
+ runs-on: self-hosted
68
+ steps:
69
+ - uses: actions/checkout@v3
70
+ with:
71
+ submodules: recursive
72
+ # This is required to get the commit history for merge commits for
73
+ # the ci-skip check below.
74
+ fetch-depth: '0'
75
+ - name: Check for [skip ci] in commit message
76
+ uses: mstachniuk/ci-skip@v1
77
+ with:
78
+ # This setting causes the tests to 'fail' if [skip ci] is specified
79
+ fail-fast: true
80
+ commit-filter: '[skip ci]'
81
+ - name: Install dependencies
82
+ run: |
83
+ module load python/${PYTHON_VERSION}
84
+ python -m venv .runner_venv
85
+ . .runner_venv/bin/activate
86
+ python -m pip install --upgrade pip
87
+ # Uncomment the below to use the submodule version of fparser rather
88
+ # than the latest release from pypi.
89
+ # pip install external/fparser
90
+ pip install .[test,psydata]
91
+ - name: Unit tests with compilation - gfortran
92
+ run: |
93
+ . .runner_venv/bin/activate
94
+ module load gcc/${GFORTRAN_VERSION} openmpi/${OPENMPI_VERSION}
95
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
96
+ pytest -n 4 --f90=gfortran --f90flags="-ffree-line-length-none" --compile --compileopencl src/psyclone/tests
97
+ - name: Unit tests with compilation - nvfortran
98
+ run: |
99
+ . .runner_venv/bin/activate
100
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
101
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
102
+ pytest -n 4 --f90=nvfortran --compile --compileopencl src/psyclone/tests
103
+ - name: Examples with compilation - gfortran
104
+ run: |
105
+ . .runner_venv/bin/activate
106
+ make -C examples allclean
107
+ # Although we're using gfortran, we link with CUDA's OpenCL library
108
+ module load gcc/${GFORTRAN_VERSION} openmpi/${OPENMPI_VERSION}
109
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
110
+ module load cuda/${CUDA_VERSION}
111
+ F90=gfortran make -C examples compile
112
+ - name: Tutorials with compilation - gfortran
113
+ run: |
114
+ . .runner_venv/bin/activate
115
+ make -C tutorial/practicals allclean
116
+ module load gcc/${GFORTRAN_VERSION} openmpi/${OPENMPI_VERSION}
117
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
118
+ make -C tutorial/practicals compile
119
+ - name: Examples with compilation - nvfortran
120
+ run: |
121
+ . .runner_venv/bin/activate
122
+ make -C examples allclean
123
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
124
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
125
+ F90=nvfortran F90FLAGS="-acc -Minfo=all" make -C examples compile
126
+ - name: Tutorials with compilation - nvfortran
127
+ run: |
128
+ . .runner_venv/bin/activate
129
+ make -C tutorial/practicals allclean
130
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
131
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
132
+ # TODO #2251. Cannot build the LFRic practicals with nvfortran 23.5-23.9
133
+ # because the compilation of nan_test.f90 gives an ICE.
134
+ F90=nvfortran F90FLAGS="-acc -Minfo=all" make -C tutorial/practicals/nemo compile
@@ -0,0 +1,160 @@
1
+ # -----------------------------------------------------------------------------
2
+ # BSD 3-Clause License
3
+ #
4
+ # Copyright (c) 2023-2024, Science and Technology Facilities Council.
5
+ # All rights reserved.
6
+ #
7
+ # Redistribution and use in source and binary forms, with or without
8
+ # modification, are permitted provided that the following conditions are met:
9
+ #
10
+ # * Redistributions of source code must retain the above copyright notice, this
11
+ # list of conditions and the following disclaimer.
12
+ #
13
+ # * Redistributions in binary form must reproduce the above copyright notice,
14
+ # this list of conditions and the following disclaimer in the documentation
15
+ # and/or other materials provided with the distribution.
16
+ #
17
+ # * Neither the name of the copyright holder nor the names of its
18
+ # contributors may be used to endorse or promote products derived from
19
+ # this software without specific prior written permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
+ # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
+ # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
+ # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
+ # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
+ # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
+ # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
+ # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
+ # POSSIBILITY OF SUCH DAMAGE.
33
+ # -----------------------------------------------------------------------------
34
+ # Author S. Siso, STFC Daresbury Lab
35
+
36
+ # This workflow will use a self-hosted runner to perform the more expensive
37
+ # integrations tests that are not run on GHA systems.
38
+
39
+ name: LFRic Integration Tests
40
+
41
+ on:
42
+ push
43
+
44
+ jobs:
45
+ run_if_on_mirror:
46
+ if: ${{ github.repository == 'stfc/PSyclone-mirror' }}
47
+ runs-on: self-hosted
48
+ env:
49
+ LFRIC_REV: 45376
50
+ PYTHON_VERSION: 3.12.1
51
+
52
+ steps:
53
+ - uses: actions/checkout@v3
54
+ with:
55
+ submodules: recursive
56
+ # This is required to get the commit history for merge commits for
57
+ # the ci-skip check below.
58
+ fetch-depth: '0'
59
+ - name: Check for [skip ci] in commit message
60
+ uses: mstachniuk/ci-skip@v1
61
+ with:
62
+ # This setting causes the tests to 'fail' if [skip ci] is specified
63
+ fail-fast: true
64
+ commit-filter: '[skip ci]'
65
+ - name: Install dependencies
66
+ run: |
67
+ # Use a specific version of Python (rather than the system-wide one).
68
+ module load python/${PYTHON_VERSION}
69
+ python -m venv .runner_venv
70
+ . .runner_venv/bin/activate
71
+ python -m pip install --upgrade pip
72
+ # Uncomment the below to use the submodule version of fparser rather
73
+ # than the latest release from pypi.
74
+ # pip install external/fparser
75
+ pip install .[test]
76
+ pip install jinja2
77
+
78
+ # PSyclone, compile and run MetOffice LFRic with 6 MPI ranks
79
+ - name: LFRic passthrough (with DistributedMemory)
80
+ run: |
81
+ # Set up environment
82
+ source /apps/spack/spack-repo/share/spack/setup-env.sh
83
+ spack env activate lfric-gnu
84
+ export FC="gfortran"
85
+ export CC="gcc"
86
+ export CXX="g++"
87
+ export FPP="cpp -traditional-cpp"
88
+ export LDMPI="mpif90"
89
+ export FFLAGS="-Wall -Werror=conversion -Werror=unused-variable -Werror=character-truncation -Werror=unused-value -Werror=tabs -I$(spack location -e lfric-gnu)/.spack-env/view/include"
90
+ export LDFLAGS="-L$(spack location -e lfric-gnu)/.spack-env/view/lib"
91
+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(spack location -e lfric-gnu)/.spack-env/view/lib"
92
+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(spack location -e lfric-gnu)/.spack-env/view/lib64"
93
+ source .runner_venv/bin/activate
94
+ export PSYCLONE_LFRIC_DIR=${GITHUB_WORKSPACE}/examples/lfric/scripts
95
+ export MINIAPP_DIR=${HOME}/LFRic_${LFRIC_REV}/miniapps/gungho_model
96
+ export PSYCLONE_CONFIG=${HOME}/lfric_psyclone_config.cfg
97
+ cd ${MINIAPP_DIR}
98
+ # Compile
99
+ make clean
100
+ make -j 6 build
101
+ # Run
102
+ cd example
103
+ cp ${HOME}/lfric_gunho_configuration_4its.nml configuration.nml
104
+ mpirun -n 1 ../bin/gungho_model configuration.nml |& tee output.txt
105
+ python ${PSYCLONE_LFRIC_DIR}/compare_ouput.py ${HOME}/lfric_gunho_configuration_4its_output.txt output.txt
106
+ cat timer.txt
107
+ export VAR_TIME=$(grep "gungho_model" timer.txt | cut -d'|' -f5)
108
+ export VAR_HALOS=$(grep "gungho_model" halo_calls_counter.txt | cut -d'|' -f5)
109
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME $VAR_HALOS >> ${HOME}/store_results/lfric_passthrough_performance_history
110
+
111
+ - name: Upload LFRic passthrough results
112
+ uses: exuanbo/actions-deploy-gist@v1
113
+ with:
114
+ token: ${{ secrets.GIST_TOKEN }}
115
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
116
+ file_path: ../../../../store_results/lfric_passthrough_performance_history
117
+
118
+ # PSyclone, compile and run MetOffice LFRic with all optimisations and 6 OpenMP threads
119
+ - name: LFRic with all transformations
120
+ run: |
121
+ # Set up environment
122
+ source /apps/spack/spack-repo/share/spack/setup-env.sh
123
+ spack env activate lfric-gnu
124
+ export FC="gfortran"
125
+ export CC="gcc"
126
+ export CXX="g++"
127
+ export FPP="cpp -traditional-cpp"
128
+ export LDMPI="mpif90"
129
+ export FFLAGS="-I$(spack location -e lfric-gnu)/.spack-env/view/include"
130
+ export LDFLAGS="-L$(spack location -e lfric-gnu)/.spack-env/view/lib"
131
+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(spack location -e lfric-gnu)/.spack-env/view/lib"
132
+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH::$(spack location -e lfric-gnu)/.spack-env/view/lib64"
133
+ source .runner_venv/bin/activate
134
+ export PSYCLONE_LFRIC_DIR=${GITHUB_WORKSPACE}/examples/lfric/scripts
135
+ export MINIAPP_DIR=${HOME}/LFRic_${LFRIC_REV}/miniapps/gungho_model
136
+ export PSYCLONE_CONFIG=${HOME}/lfric_psyclone_config.cfg
137
+ cd ${MINIAPP_DIR}
138
+ # Prepare script (LFRics expects a folder with a global.py)
139
+ mkdir -p psyclone-test
140
+ cp ${PSYCLONE_LFRIC_DIR}/everything_everywhere_all_at_once.py psyclone-test/global.py
141
+ # Compile
142
+ make clean
143
+ make OPTIMISATION_PATH=${MINIAPP_DIR}/psyclone-test -j 6 build |& tee compiler_output.txt
144
+ # Run
145
+ cd example
146
+ cp ${HOME}/lfric_gunho_configuration_4its.nml configuration.nml
147
+ export OMP_NUM_THREADS=6
148
+ mpirun -n 1 ../bin/gungho_model configuration.nml |& tee output.txt
149
+ python ${PSYCLONE_LFRIC_DIR}/compare_ouput.py ${HOME}/lfric_gunho_configuration_4its_output.txt output.txt
150
+ cat timer.txt
151
+ export VAR_TIME=$(grep "gungho_model" timer.txt | cut -d'|' -f5)
152
+ export VAR_HALOS=$(grep "gungho_model" halo_calls_counter.txt | cut -d'|' -f5)
153
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME $VAR_HALOS >> ${HOME}/store_results/lfric_optimised_performance_history
154
+
155
+ - name: Upload LFRic optimised results
156
+ uses: exuanbo/actions-deploy-gist@v1
157
+ with:
158
+ token: ${{ secrets.GIST_TOKEN }}
159
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
160
+ file_path: ../../../../store_results/lfric_optimised_performance_history
@@ -0,0 +1,14 @@
1
+ {
2
+ "ignorePatterns": [
3
+ {
4
+ "pattern": "^https://mybinder.org/v2/gh/stfc/psyclone"
5
+ }
6
+ ],
7
+ "replacementPatterns": [
8
+ {
9
+ "pattern": "^https://psyclone.readthedocs.io/en/stable",
10
+ "replacement": "https://psyclone.readthedocs.io/en/latest"
11
+ }
12
+ ],
13
+ "aliveStatusCodes": [200, 401, 502, 503]
14
+ }
@@ -0,0 +1,226 @@
1
+ # -----------------------------------------------------------------------------
2
+ # BSD 3-Clause License
3
+ #
4
+ # Copyright (c) 2024, Science and Technology Facilities Council.
5
+ # All rights reserved.
6
+ #
7
+ # Redistribution and use in source and binary forms, with or without
8
+ # modification, are permitted provided that the following conditions are met:
9
+ #
10
+ # * Redistributions of source code must retain the above copyright notice, this
11
+ # list of conditions and the following disclaimer.
12
+ #
13
+ # * Redistributions in binary form must reproduce the above copyright notice,
14
+ # this list of conditions and the following disclaimer in the documentation
15
+ # and/or other materials provided with the distribution.
16
+ #
17
+ # * Neither the name of the copyright holder nor the names of its
18
+ # contributors may be used to endorse or promote products derived from
19
+ # this software without specific prior written permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
+ # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
+ # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
+ # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
+ # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
+ # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
+ # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
+ # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
+ # POSSIBILITY OF SUCH DAMAGE.
33
+ # -----------------------------------------------------------------------------
34
+ # Author S. Siso, STFC Daresbury Lab
35
+
36
+ # This workflow will use a self-hosted runner to perform the more expensive
37
+ # integrations tests that are not run on GHA systems.
38
+
39
+ name: NEMO Integration Tests
40
+
41
+ on:
42
+ push
43
+
44
+ jobs:
45
+ run_if_on_mirror:
46
+ if: ${{ github.repository == 'stfc/PSyclone-mirror' }}
47
+ runs-on: self-hosted
48
+ env:
49
+ HDF5_VERSION: 1.14.3
50
+ NETCDF_C_VERSION: 4.9.2
51
+ NETCDF_FORTRAN_VERSION: 4.6.1
52
+ NVFORTRAN_VERSION: 23.7
53
+ ONEAPI_VERSION: 2024.0.0
54
+ PERL_VERSION: 5.38.2
55
+ PYTHON_VERSION: 3.12.1
56
+
57
+ steps:
58
+ - uses: actions/checkout@v3
59
+ with:
60
+ submodules: recursive
61
+ # This is required to get the commit history for merge commits for
62
+ # the ci-skip check below.
63
+ fetch-depth: '0'
64
+ - name: Check for [skip ci] in commit message
65
+ uses: mstachniuk/ci-skip@v1
66
+ with:
67
+ # This setting causes the tests to 'fail' if [skip ci] is specified
68
+ fail-fast: true
69
+ commit-filter: '[skip ci]'
70
+ - name: Install dependencies
71
+ run: |
72
+ module load python/${PYTHON_VERSION}
73
+ python -m venv .runner_venv
74
+ . .runner_venv/bin/activate
75
+ python -m pip install --upgrade pip
76
+ # Uncomment the below to use the submodule version of fparser rather
77
+ # than the latest release from pypi.
78
+ # pip install external/fparser
79
+ pip install .[test]
80
+ # Compile nvidia profiling tools
81
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
82
+ cd lib/profiling/nvidia/
83
+ F90=nvfortran make
84
+
85
+ # PSyclone passthrough for MetOffice NEMO
86
+ - name: NEMO MetOffice Passthrough
87
+ run: |
88
+ . .runner_venv/bin/activate
89
+ export PSYCLONE_NEMO_DIR=${GITHUB_WORKSPACE}/examples/nemo/scripts
90
+ export NEMO_DIR=${HOME}/NEMO
91
+ cd $PSYCLONE_NEMO_DIR
92
+ make -j 4 passthrough
93
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
94
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
95
+ module load perl/${PERL_VERSION}
96
+ make -j 4 compile-passthrough
97
+
98
+ # PSyclone, compile and run MetOffice NEMO with OpenMP for GPUs
99
+ - name: NEMO MetOffice OpenMP for GPU
100
+ run: |
101
+ . .runner_venv/bin/activate
102
+ export PSYCLONE_NEMO_DIR=${GITHUB_WORKSPACE}/examples/nemo/scripts
103
+ export NEMO_DIR=${HOME}/NEMO
104
+ cd $PSYCLONE_NEMO_DIR
105
+ make -j 4 openmp_gpu
106
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
107
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
108
+ module load perl/${PERL_VERSION}
109
+ make -j 4 compile-openmp_gpu
110
+ export NV_ACC_POOL_THRESHOLD=75
111
+ make run-openmp_gpu |& tee output.txt
112
+ # Check the output is as expected for the first 6 digits
113
+ tail -n 1 output.txt | grep -q " it : 10"
114
+ tail -n 1 output.txt | grep -q "|ssh|_max: 0.259483"
115
+ tail -n 1 output.txt | grep -q "|U|_max: 0.458515"
116
+ tail -n 1 output.txt | grep -q "S_min: 0.482686"
117
+ tail -n 1 output.txt | grep -q "S_max: 0.407622"
118
+ export VAR_TIME=$(grep -A 1 "Elapsed Time" output.txt | head -n 2 | tail -n 1)
119
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME >> ${HOME}/store_results/performance_history_openmp_gpu
120
+
121
+ - name: Upload NEMO OpenMP GPU results
122
+ uses: exuanbo/actions-deploy-gist@v1
123
+ with:
124
+ token: ${{ secrets.GIST_TOKEN }}
125
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
126
+ file_path: ../../../../store_results/performance_history_openmp_gpu
127
+
128
+ # PSyclone, compile and run MetOffice NEMO with OpenACC kernels for GPUs
129
+ - name: NEMO MetOffice OpenACC kernels for GPU
130
+ run: |
131
+ . .runner_venv/bin/activate
132
+ export PSYCLONE_NEMO_DIR=${GITHUB_WORKSPACE}/examples/nemo/scripts
133
+ export NEMO_DIR=${HOME}/NEMO
134
+ cd $PSYCLONE_NEMO_DIR
135
+ make -j 4 openacc_kernels
136
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
137
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
138
+ module load perl/${PERL_VERSION}
139
+ COMPILER_ARCH=linux_nvidia_acc_gpu make -j 4 compile-openacc_kernels
140
+ export NV_ACC_POOL_THRESHOLD=75
141
+ make run-openacc_kernels |& tee output.txt
142
+ # Check the output is as expected for the first 6 digits
143
+ tail -n 1 output.txt | grep -q " it : 10"
144
+ tail -n 1 output.txt | grep -q "|ssh|_max: 0.259483"
145
+ tail -n 1 output.txt | grep -q "|U|_max: 0.458515"
146
+ tail -n 1 output.txt | grep -q "S_min: 0.482686"
147
+ tail -n 1 output.txt | grep -q "S_max: 0.407622"
148
+ export VAR_TIME=$(grep -A 1 "Elapsed Time" output.txt | head -n 2 | tail -n 1)
149
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME >> ${HOME}/store_results/performance_history_openacc_kernels_gpu
150
+ # Upload the results into a Github Gist
151
+
152
+ - name: Upload NEMO OpenACC kernels GPU results
153
+ uses: exuanbo/actions-deploy-gist@v1
154
+ with:
155
+ token: ${{ secrets.GIST_TOKEN }}
156
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
157
+ file_path: ../../../../store_results/performance_history_openacc_kernels_gpu
158
+
159
+ # PSyclone, compile and run MetOffice NEMO with OpenACC loops for GPUs
160
+ - name: NEMO MetOffice OpenACC loops for GPU
161
+ run: |
162
+ . .runner_venv/bin/activate
163
+ export PSYCLONE_NEMO_DIR=${GITHUB_WORKSPACE}/examples/nemo/scripts
164
+ export NEMO_DIR=${HOME}/NEMO
165
+ cd $PSYCLONE_NEMO_DIR
166
+ make -j 4 openacc_loops
167
+ module load nvidia-hpcsdk/${NVFORTRAN_VERSION}
168
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
169
+ module load perl/${PERL_VERSION}
170
+ COMPILER_ARCH=linux_nvidia_acc_gpu make -j 4 compile-openacc_loops
171
+ export NV_ACC_POOL_THRESHOLD=75
172
+ make run-openacc_loops |& tee output.txt
173
+ # Check the output is as expected for the first 6 digits
174
+ tail -n 1 output.txt | grep -q " it : 10"
175
+ tail -n 1 output.txt | grep -q "|ssh|_max: 0.259483"
176
+ tail -n 1 output.txt | grep -q "|U|_max: 0.458515"
177
+ tail -n 1 output.txt | grep -q "S_min: 0.482686"
178
+ tail -n 1 output.txt | grep -q "S_max: 0.407622"
179
+ export VAR_TIME=$(grep -A 1 "Elapsed Time" output.txt | head -n 2 | tail -n 1)
180
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME >> ${HOME}/store_results/performance_history_openacc_loops_gpu
181
+ # Upload the results into a Github Gist
182
+
183
+ - name: Upload NEMO OpenACC loops GPU results
184
+ uses: exuanbo/actions-deploy-gist@v1
185
+ with:
186
+ token: ${{ secrets.GIST_TOKEN }}
187
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
188
+ file_path: ../../../../store_results/performance_history_openacc_loops_gpu
189
+
190
+ # PSyclone, compile and run ECMWF NEMO with OpenMP for CPUs. This uses
191
+ # the Intel compiler and does not disable MPI. Therefore we have to ensure
192
+ # that we provide the path to the header files for Intel MPI.
193
+ - name: NEMO ECMWF OpenMP for CPU
194
+ run: |
195
+ . .runner_venv/bin/activate
196
+ module load oneapi/${ONEAPI_VERSION}
197
+ module load hdf5/${HDF5_VERSION} netcdf_c/${NETCDF_C_VERSION} netcdf_fortran/${NETCDF_FORTRAN_VERSION}
198
+ module load perl/${PERL_VERSION}
199
+ export PSYCLONE_NEMO_DIR=${GITHUB_WORKSPACE}/examples/nemo/scripts
200
+ export NEMO_DIR=${HOME}/NEMOGCM_V40
201
+ export COMPILER_ARCH=linux_intel
202
+ export ADD_KEYS="IEEE_IS_NAN=ieee_is_nan key_nosignedzero"
203
+ export DEL_KEYS="key_iomput"
204
+ export MODEL_DIR=/archive/ssiso/ecmwf_eORCA1_GO8/
205
+ export NAMELISTS_DIR=${NEMO_DIR}/testscripts_V40/output/openmp_outer_V40_eORCA1_GO8_Z75_20170906_cray_dp_1x1/
206
+ export MPI_INC_DIR=${I_MPI_ROOT}/include
207
+ cd $PSYCLONE_NEMO_DIR
208
+ make -j 4 openmp_cpu
209
+ make -j 4 compile-openmp_cpu
210
+ export OMP_NUM_THREADS=4
211
+ make run-openmp_cpu |& tee output.txt
212
+ # Check the output is as expected for the first 6 digits
213
+ tail -n 1 output.txt | grep -q " it : 10"
214
+ tail -n 1 output.txt | grep -q "|ssh|_max: 0.199714"
215
+ tail -n 1 output.txt | grep -q "|U|_max: 0.148409"
216
+ tail -n 1 output.txt | grep -q "S_min: 0.108530"
217
+ tail -n 1 output.txt | grep -q "S_max: 0.404045"
218
+ export VAR_TIME=$(grep -A 1 "Elapsed Time" output.txt | head -n 2 | tail -n 1)
219
+ echo $GITHUB_REF_NAME $GITHUB_SHA $VAR_TIME >> ${HOME}/store_results/performance_history_openmp_cpu
220
+
221
+ - name: Upload NEMO OpenMP CPU results
222
+ uses: exuanbo/actions-deploy-gist@v1
223
+ with:
224
+ token: ${{ secrets.GIST_TOKEN }}
225
+ gist_id: a4049a0fc0a0a11651a5ce6a04d76160
226
+ file_path: ../../../../store_results/performance_history_openmp_cpu