mct_mod.F90 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. module mct_mod
  2. ! !USES:
  3. use m_MCTWorld ,only: mct_world_init => init
  4. use m_AttrVect ,only: mct_aVect => AttrVect
  5. use m_AttrVect ,only: mct_aVect_init => init
  6. use m_AttrVect ,only: mct_aVect_clean => clean
  7. use m_AttrVect ,only: mct_aVect_zero => zero
  8. use m_AttrVect ,only: mct_aVect_lsize => lsize
  9. use m_AttrVect ,only: mct_aVect_indexIA => indexIA
  10. use m_AttrVect ,only: mct_aVect_indexRA => indexRA
  11. use m_AttrVect ,only: mct_aVect_importRattr => importRattr
  12. use m_AttrVect ,only: mct_aVect_exportRattr => exportRattr
  13. use m_AttrVect ,only: mct_aVect_getIList => getIList
  14. use m_AttrVect ,only: mct_aVect_getRList => getRList
  15. use m_AttrVect ,only: mct_aVect_exportIList2c=> exportIListToChar
  16. use m_AttrVect ,only: mct_aVect_exportRList2c=> exportRListToChar
  17. use m_AttrVect ,only: mct_aVect_nIAttr => nIAttr
  18. use m_AttrVect ,only: mct_aVect_nRAttr => nRAttr
  19. use m_AttrVect ,only: mct_aVect_copy => Copy
  20. use m_AttrVect ,only: mct_aVect_permute => Permute
  21. use m_AttrVect ,only: mct_aVect_unpermute => Unpermute
  22. use m_AttrVectComms ,only: mct_aVect_scatter => scatter
  23. use m_AttrVectComms ,only: mct_aVect_gather => gather
  24. use m_AttrVectComms ,only: mct_aVect_bcast => bcast
  25. use m_Accumulator ,only: mct_accum => Accumulator
  26. use m_Accumulator ,only: mct_accum_init => init
  27. use m_Accumulator ,only: mct_accum_zero => zero
  28. use m_Accumulator ,only: mct_accum_accumulate => accumulate
  29. ! use m_Accumulator ,only: mct_accum_average => average
  30. use m_GeneralGrid ,only: mct_gGrid => GeneralGrid
  31. use m_GeneralGrid ,only: mct_gGrid_init => init
  32. use m_GeneralGrid ,only: mct_gGrid_clean => clean
  33. use m_GeneralGrid ,only: mct_gGrid_dims => dims
  34. use m_GeneralGrid ,only: mct_gGrid_lsize => lsize
  35. use m_GeneralGrid ,only: mct_ggrid_indexIA => indexIA
  36. use m_GeneralGrid ,only: mct_gGrid_indexRA => indexRA
  37. use m_GeneralGrid ,only: mct_gGrid_exportRattr => exportRattr
  38. use m_GeneralGrid ,only: mct_gGrid_importRattr => importRattr
  39. use m_GeneralGrid ,only: mct_gGrid_exportIattr => exportIattr
  40. use m_GeneralGrid ,only: mct_gGrid_importIattr => importIattr
  41. use m_GeneralGrid ,only: mct_gGrid_permute => permute
  42. use m_GeneralGridComms ,only: mct_gGrid_scatter => scatter
  43. use m_GeneralGridComms ,only: mct_gGrid_gather => gather
  44. use m_GeneralGridComms ,only: mct_gGrid_bcast => bcast
  45. use m_Transfer ,only: mct_send => Send
  46. use m_Transfer ,only: mct_isend => iSend
  47. use m_Transfer ,only: mct_waitsend => WaitSend
  48. use m_Transfer ,only: mct_recv => Recv
  49. use m_Transfer ,only: mct_irecv => iRecv
  50. use m_Transfer ,only: mct_waitrecv => WaitRecv
  51. use m_GlobalSegMap ,only: mct_gsMap => GlobalSegMap
  52. use m_GlobalSegMap ,only: mct_gsMap_init => init
  53. use m_GlobalSegMap ,only: mct_gsMap_clean => clean
  54. use m_GlobalSegMap ,only: mct_gsMap_lsize => lsize
  55. use m_GlobalSegMap ,only: mct_gsMap_gsize => gsize
  56. use m_GlobalSegMap ,only: mct_gsMap_gstorage => GlobalStorage
  57. use m_GlobalSegMap ,only: mct_gsMap_ngseg => ngseg
  58. use m_GlobalSegMap ,only: mct_gsMap_nlseg => nlseg
  59. use m_GlobalSegMap ,only: mct_gsMap_maxnlseg => max_nlseg
  60. use m_GlobalSegMap ,only: mct_gsMap_activepes => active_pes
  61. use m_GlobalSegMap ,only: mct_gsMap_copy => copy
  62. use m_GlobalSegMap ,only: mct_gsMap_increasing => increasing
  63. use m_GlobalSegMap ,only: mct_gsMap_orderedPoints=> OrderedPoints
  64. use m_GlobalSegMapComms ,only: mct_gsMap_bcast => bcast
  65. use m_Rearranger ,only: mct_rearr => Rearranger
  66. use m_Rearranger ,only: mct_rearr_init => init
  67. use m_Rearranger ,only: mct_rearr_clean => clean
  68. use m_Rearranger ,only: mct_rearr_print => print
  69. use m_Rearranger ,only: mct_rearr_rearrange => rearrange
  70. use m_Router ,only: mct_router => Router
  71. use m_Router ,only: mct_router_init => init
  72. use m_SparseMatrixToMaps ,only: mct_sMat_2XgsMap => SparseMatrixToXGlobalSegMap
  73. use m_SparseMatrixToMaps ,only: mct_sMat_2YgsMap => SparseMatrixToYGlobalSegMap
  74. use m_SparseMatrix ,only: mct_sMat => SparseMatrix
  75. use m_SparseMatrix ,only: mct_sMat_Init => init
  76. use m_SparseMatrix ,only: mct_sMat_Vecinit => vecinit
  77. use m_SparseMatrix ,only: mct_sMat_Clean => clean
  78. use m_SparseMatrix ,only: mct_sMat_indexIA => indexIA
  79. use m_SparseMatrix ,only: mct_sMat_indexRA => indexRA
  80. use m_SparseMatrix ,only: mct_sMat_lsize => lsize
  81. use m_SparseMatrix ,only: mct_sMat_nrows => nRows
  82. use m_SparseMatrix ,only: mct_sMat_ncols => nCols
  83. use m_SparseMatrix ,only: mct_sMat_SortPermute => SortPermute
  84. use m_SparseMatrix ,only: mct_sMat_GNumEl => GlobalNumElements
  85. use m_SparseMatrix ,only: mct_sMat_ImpGRowI => ImportGlobalRowIndices
  86. use m_SparseMatrix ,only: mct_sMat_ImpGColI => ImportGlobalColumnIndices
  87. use m_SparseMatrix ,only: mct_sMat_ImpLRowI => ImportLocalRowIndices
  88. use m_SparseMatrix ,only: mct_sMat_ImpLColI => ImportLocalColumnIndices
  89. use m_SparseMatrix ,only: mct_sMat_ImpMatrix => ImportMatrixElements
  90. use m_SparseMatrix ,only: mct_sMat_ExpGRowI => ExportGlobalRowIndices
  91. use m_SparseMatrix ,only: mct_sMat_ExpGColI => ExportGlobalColumnIndices
  92. use m_SparseMatrix ,only: mct_sMat_ExpLRowI => ExportLocalRowIndices
  93. use m_SparseMatrix ,only: mct_sMat_ExpLColI => ExportLocalColumnIndices
  94. use m_SparseMatrix ,only: mct_sMat_ExpMatrix => ExportMatrixElements
  95. use m_SparseMatrixComms ,only: mct_sMat_ScatterByRow => ScatterByRow
  96. use m_SparseMatrixComms ,only: mct_sMat_ScatterByCol => ScatterByColumn
  97. use m_SparseMatrixPlus ,only: mct_sMatP => SparseMatrixPlus
  98. use m_SparseMatrixPlus ,only: mct_sMatP_Init => init
  99. use m_SparseMatrixPlus ,only: mct_sMatP_Vecinit => vecinit
  100. use m_SparseMatrixPlus ,only: mct_sMatP_clean => clean
  101. use m_MatAttrVectMul ,only: mct_sMat_avMult => sMatAvMult
  102. use m_GlobalToLocal ,only: mct_sMat_g2lMat => GlobalToLocalMatrix
  103. use m_List ,only: mct_list => list
  104. use m_List ,only: mct_list_init => init
  105. use m_List ,only: mct_list_get => get
  106. use m_List ,only: mct_list_nitem => nitem
  107. use m_List ,only: mct_list_clean => clean
  108. use m_string ,only: mct_string => string
  109. use m_string ,only: mct_string_clean => clean
  110. use m_string ,only: mct_string_toChar => toChar
  111. use m_die ,only: mct_perr_die => mp_perr_die
  112. use m_die ,only: mct_die => die
  113. use m_inpak90
  114. use m_Permuter ,only: mct_permute => Permute
  115. use m_MergeSorts ,only: mct_indexset => IndexSet
  116. use m_MergeSorts ,only: mct_indexsort => IndexSort
  117. implicit none
  118. !===============================================================================
  119. end module mct_mod