Permalink
Browse files

Initial commit for OpenSource release

  • Loading branch information...
Stefan Sicklinger
Stefan Sicklinger committed Sep 9, 2013
1 parent 627c656 commit 4d1c6c108fecd03d12af393005d5206a92c5f81c
Showing with 44,957 additions and 0 deletions.
  1. +100 −0 CMakeLists.txt
  2. 0 EMPIRE-Core
  3. +2 −0 EMPIRE_API/CMakeLists.txt
  4. +5 −0 EMPIRE_API/doc/Makefile
  5. +1,719 −0 EMPIRE_API/doc/doxygenFile
  6. +80 −0 EMPIRE_API/src/ApiWrapperFromCppToC.cpp
  7. +40 −0 EMPIRE_API/src/CMakeLists.txt
  8. +112 −0 EMPIRE_API/src/ClientCommunication.cpp
  9. +182 −0 EMPIRE_API/src/ClientCommunication.h
  10. +95 −0 EMPIRE_API/src/ClientMetaDatabase.cpp
  11. +122 −0 EMPIRE_API/src/ClientMetaDatabase.h
  12. +118 −0 EMPIRE_API/src/Empire.cpp
  13. +135 −0 EMPIRE_API/src/Empire.h
  14. +5 −0 EMPIRE_API/src/include/CMakeLists.txt
  15. +138 −0 EMPIRE_API/src/include/EMPIRE_API.h
  16. +41 −0 EMPIRE_API/src/include/EMPIRE_API_Enum.h
  17. +26 −0 Emperor/CMakeLists.txt
  18. +24 −0 Emperor/doc/Makefile
  19. +1,814 −0 Emperor/doc/doxygenFile
  20. +60 −0 Emperor/src/AbstractMesh.cpp
  21. +100 −0 Emperor/src/AbstractMesh.h
  22. +33 −0 Emperor/src/CMakeLists.txt
  23. +209 −0 Emperor/src/ClientCode.cpp
  24. +153 −0 Emperor/src/ClientCode.h
  25. +89 −0 Emperor/src/ConnectionIO.cpp
  26. +64 −0 Emperor/src/ConnectionIO.h
  27. +50 −0 Emperor/src/DataField.cpp
  28. +76 −0 Emperor/src/DataField.h
  29. +600 −0 Emperor/src/Emperor.cpp
  30. +163 −0 Emperor/src/Emperor.h
  31. +227 −0 Emperor/src/FEMesh.cpp
  32. +123 −0 Emperor/src/FEMesh.h
  33. +103 −0 Emperor/src/IGAKernel/AbstractBSplineBasis1D.h
  34. +112 −0 Emperor/src/IGAKernel/AbstractBSplineBasis2D.h
  35. +100 −0 Emperor/src/IGAKernel/AbstractIGABasis.h
  36. +91 −0 Emperor/src/IGAKernel/AbstractIGAPatch.h
  37. +125 −0 Emperor/src/IGAKernel/AbstractPoint.h
  38. +457 −0 Emperor/src/IGAKernel/BSplineBasis1D.cpp
  39. +200 −0 Emperor/src/IGAKernel/BSplineBasis1D.h
  40. +544 −0 Emperor/src/IGAKernel/BSplineBasis2D.cpp
  41. +196 −0 Emperor/src/IGAKernel/BSplineBasis2D.h
  42. +6 −0 Emperor/src/IGAKernel/CMakeLists.txt
  43. +133 −0 Emperor/src/IGAKernel/IGAControlPoint.h
  44. +267 −0 Emperor/src/IGAKernel/IGAMath.cpp
  45. +87 −0 Emperor/src/IGAKernel/IGAMath.h
  46. +374 −0 Emperor/src/IGAKernel/IGAPatch1D.cpp
  47. +179 −0 Emperor/src/IGAKernel/IGAPatch1D.h
  48. +820 −0 Emperor/src/IGAKernel/IGAPatch2D.cpp
  49. +225 −0 Emperor/src/IGAKernel/IGAPatch2D.h
  50. +507 −0 Emperor/src/IGAKernel/NurbsBasis1D.cpp
  51. +175 −0 Emperor/src/IGAKernel/NurbsBasis1D.h
  52. +1,022 −0 Emperor/src/IGAKernel/NurbsBasis2D.cpp
  53. +188 −0 Emperor/src/IGAKernel/NurbsBasis2D.h
  54. +73 −0 Emperor/src/MPIErrorHandling.cpp
  55. +44 −0 Emperor/src/MPIErrorHandling.h
  56. +195 −0 Emperor/src/MetaDataStructures.h
  57. +775 −0 Emperor/src/MetaDatabase.cpp
  58. +172 −0 Emperor/src/MetaDatabase.h
  59. +161 −0 Emperor/src/ServerCommunication.cpp
  60. +185 −0 Emperor/src/ServerCommunication.h
  61. +80 −0 Emperor/src/Signal.cpp
  62. +84 −0 Emperor/src/Signal.h
  63. +111 −0 Emperor/src/couplingAlgorithm/AbstractCouplingAlgorithm.cpp
  64. +159 −0 Emperor/src/couplingAlgorithm/AbstractCouplingAlgorithm.h
  65. +199 −0 Emperor/src/couplingAlgorithm/Aitken.cpp
  66. +92 −0 Emperor/src/couplingAlgorithm/Aitken.h
  67. +6 −0 Emperor/src/couplingAlgorithm/CMakeLists.txt
  68. +137 −0 Emperor/src/couplingAlgorithm/ConstantRelaxation.cpp
  69. +44 −0 Emperor/src/couplingAlgorithm/ConstantRelaxation.h
  70. +44 −0 Emperor/src/couplingLogic/AbstractCouplingLogic.cpp
  71. +74 −0 Emperor/src/couplingLogic/AbstractCouplingLogic.h
  72. +6 −0 Emperor/src/couplingLogic/CMakeLists.txt
  73. +74 −0 Emperor/src/couplingLogic/Connection.cpp
  74. +92 −0 Emperor/src/couplingLogic/Connection.h
  75. +204 −0 Emperor/src/couplingLogic/ConvergenceChecker.cpp
  76. +136 −0 Emperor/src/couplingLogic/ConvergenceChecker.h
  77. +62 −0 Emperor/src/couplingLogic/CouplingLogicSequence.h
  78. +112 −0 Emperor/src/couplingLogic/IterativeCouplingLoop.cpp
  79. +110 −0 Emperor/src/couplingLogic/IterativeCouplingLoop.h
  80. +77 −0 Emperor/src/couplingLogic/TimeStepLoop.cpp
  81. +87 −0 Emperor/src/couplingLogic/TimeStepLoop.h
  82. +66 −0 Emperor/src/extrapolating/AbstractExtrapolator.cpp
  83. +97 −0 Emperor/src/extrapolating/AbstractExtrapolator.h
  84. +6 −0 Emperor/src/extrapolating/CMakeLists.txt
  85. +374 −0 Emperor/src/extrapolating/GenMSExtrapolator.cpp
  86. +107 −0 Emperor/src/extrapolating/GenMSExtrapolator.h
  87. +42 −0 Emperor/src/extrapolating/SimpleExtrapolator.cpp
  88. +56 −0 Emperor/src/extrapolating/SimpleExtrapolator.h
  89. +6 −0 Emperor/src/fileIO/CMakeLists.txt
  90. +894 −0 Emperor/src/fileIO/GiDFileIO.cpp
  91. +132 −0 Emperor/src/fileIO/GiDFileIO.h
  92. +322 −0 Emperor/src/fileIO/GmshFileIO.cpp
  93. +69 −0 Emperor/src/fileIO/GmshFileIO.h
  94. +53 −0 Emperor/src/fileIO/meshIO.cpp
  95. +116 −0 Emperor/src/fileIO/meshIO.h
  96. +48 −0 Emperor/src/filtering/AbstractFilter.cpp
  97. +78 −0 Emperor/src/filtering/AbstractFilter.h
  98. +6 −0 Emperor/src/filtering/CMakeLists.txt
  99. +85 −0 Emperor/src/filtering/CopyFilter.cpp
  100. +62 −0 Emperor/src/filtering/CopyFilter.h
  101. +50 −0 Emperor/src/filtering/CouplingAlgorithmFilter.cpp
  102. +66 −0 Emperor/src/filtering/CouplingAlgorithmFilter.h
  103. +140 −0 Emperor/src/filtering/DataFieldIntegrationFilter.cpp
  104. +81 −0 Emperor/src/filtering/DataFieldIntegrationFilter.h
  105. +64 −0 Emperor/src/filtering/ExtrapolatingFilter.cpp
  106. +66 −0 Emperor/src/filtering/ExtrapolatingFilter.h
  107. +137 −0 Emperor/src/filtering/LocationFilter.cpp
  108. +85 −0 Emperor/src/filtering/LocationFilter.h
  109. +158 −0 Emperor/src/filtering/MappingFilter.cpp
  110. +82 −0 Emperor/src/filtering/MappingFilter.h
  111. +66 −0 Emperor/src/filtering/ScalingFilter.cpp
  112. +41 −0 Emperor/src/filtering/ScalingFilter.h
  113. +6 −0 Emperor/src/include/CMakeLists.txt
  114. +101 −0 Emperor/src/include/EMPEROR_Enum.h
  115. +117 −0 Emperor/src/main.cpp
  116. +71 −0 Emperor/src/mapping/AbstractMapper.h
  117. +216 −0 Emperor/src/mapping/BarycentricInterpolationMapper.cpp
  118. +101 −0 Emperor/src/mapping/BarycentricInterpolationMapper.h
  119. +6 −0 Emperor/src/mapping/CMakeLists.txt
  120. +240 −0 Emperor/src/mapping/DataFieldIntegration.cpp
  121. +126 −0 Emperor/src/mapping/DataFieldIntegration.h
  122. +171 −0 Emperor/src/mapping/MapperAdapter.cpp
  123. +125 −0 Emperor/src/mapping/MapperAdapter.h
  124. +1,204 −0 Emperor/src/mapping/MortarMapper.cpp
  125. +407 −0 Emperor/src/mapping/MortarMapper.h
  126. +1,167 −0 Emperor/src/mapping/MortarMath.cpp
  127. +521 −0 Emperor/src/mapping/MortarMath.h
  128. +350 −0 Emperor/src/mapping/NearestElementMapper.cpp
  129. +140 −0 Emperor/src/mapping/NearestElementMapper.h
  130. +108 −0 Emperor/src/mapping/NearestNeighborMapper.cpp
  131. +80 −0 Emperor/src/mapping/NearestNeighborMapper.h
  132. +6 −0 Emperor/src/output/CMakeLists.txt
  133. +205 −0 Emperor/src/output/DataOutput.cpp
  134. +106 −0 Emperor/src/output/DataOutput.h
  135. +183 −0 Emperor/src/output/Message.cpp
  136. +209 −0 Emperor/src/output/Message.h
  137. +371 −0 Emperor/src/output/PseudoCodeOutput.cpp
  138. +186 −0 Emperor/src/output/PseudoCodeOutput.h
  139. +48 −0 Emperor/src/tools/AuxiliaryFunctions.cpp
  140. +54 −0 Emperor/src/tools/AuxiliaryFunctions.h
  141. +30 −0 Emperor/src/tools/AuxiliaryParameters.cpp
  142. +31 −0 Emperor/src/tools/AuxiliaryParameters.cpp.in
  143. +50 −0 Emperor/src/tools/AuxiliaryParameters.h
  144. +6 −0 Emperor/src/tools/CMakeLists.txt
  145. +44 −0 Emperor/src/tools/MathLibrary.cpp
  146. +369 −0 Emperor/src/tools/MathLibrary.h
  147. +32 −0 Emperor/src/tools/MklRedefine.c
  148. +148 −0 Emperor/src/tools/TriangulatorAdaptor.cpp
  149. +41 −0 Emperor/src/tools/TriangulatorAdaptor.h
  150. +1,561 −0 Emperor/src/tools/polypartition.cpp
  151. +342 −0 Emperor/src/tools/polypartition.h
  152. +44 −0 Emperor/testMapper/CMakeLists.txt
  153. +809 −0 Emperor/testMapper/TestMapper.cpp
  154. +119 −0 Emperor/testMapper/TestMapper.h
  155. +35 −0 Emperor/testMapper/main.cpp
  156. +33 −0 Emperor/testUnit/CMakeLists.txt
  157. +140 −0 Emperor/testUnit/ConnectionIOSetup.h
  158. +6 −0 Emperor/testUnit/IGAKernel/CMakeLists.txt
  159. +370 −0 Emperor/testUnit/IGAKernel/TestBSplineBasis1D.cpp
  160. +834 −0 Emperor/testUnit/IGAKernel/TestBSplineBasis2D.cpp
  161. +531 −0 Emperor/testUnit/IGAKernel/TestIGAMortarTypeProjectionTube.cpp
  162. +653 −0 Emperor/testUnit/IGAKernel/TestIGAPatch1D.cpp
  163. +1,333 −0 Emperor/testUnit/IGAKernel/TestIGAPatch2D.cpp
  164. +495 −0 Emperor/testUnit/IGAKernel/TestNurbsBasis1D.cpp
  165. +989 −0 Emperor/testUnit/IGAKernel/TestNurbsBasis2D.cpp
  166. +81 −0 Emperor/testUnit/ProgressOutputter.h
  167. +100 −0 Emperor/testUnit/TestClientCode.cpp
  168. +86 −0 Emperor/testUnit/TestConnection.cpp
  169. +75 −0 Emperor/testUnit/TestDataField.cpp
  170. +197 −0 Emperor/testUnit/TestEmperor.cpp
  171. +379 −0 Emperor/testUnit/TestFEMesh.cpp
  172. +409 −0 Emperor/testUnit/TestMetaDatabase.cpp
  173. +128 −0 Emperor/testUnit/TestSignal.cpp
  174. +6 −0 Emperor/testUnit/couplingAlgorithm/CMakeLists.txt
  175. +196 −0 Emperor/testUnit/couplingAlgorithm/ComaAitken.h
  176. +178 −0 Emperor/testUnit/couplingAlgorithm/TestAitken.cpp
  177. +135 −0 Emperor/testUnit/couplingAlgorithm/TestConstantRelaxation.cpp
  178. +142 −0 Emperor/testUnit/couplingAlgorithm/TestRelaxationMethods.cpp
  179. +6 −0 Emperor/testUnit/couplingLogic/CMakeLists.txt
  180. +212 −0 Emperor/testUnit/couplingLogic/TestConvergenceChecker.cpp
  181. +87 −0 Emperor/testUnit/couplingLogic/TestLoops.cpp
  182. +6 −0 Emperor/testUnit/extrapolating/CMakeLists.txt
  183. +512 −0 Emperor/testUnit/extrapolating/TestExtrapolator.cpp
  184. +1 −0 Emperor/testUnit/files/CMakeLists.txt
  185. +25 −0 Emperor/testUnit/files/hybrid.msh
  186. +31 −0 Emperor/testUnit/files/hybrid.res
  187. +222 −0 Emperor/testUnit/files/inputFileOfTestMetaDatabase.xml
  188. +6 −0 Emperor/testUnit/filtering/CMakeLists.txt
  189. +162 −0 Emperor/testUnit/filtering/TestCopyFilter.cpp
  190. +165 −0 Emperor/testUnit/filtering/TestLocationFilter.cpp
  191. +210 −0 Emperor/testUnit/filtering/TestMappingFilter.cpp
  192. +71 −0 Emperor/testUnit/main.cpp
  193. +6 −0 Emperor/testUnit/mapping/CMakeLists.txt
  194. +497 −0 Emperor/testUnit/mapping/TestMappers.cpp
  195. +598 −0 Emperor/testUnit/mapping/TestMapping.cpp
  196. +667 −0 Emperor/testUnit/mapping/TestMappingMultiplePartitions.cpp
  197. +567 −0 Emperor/testUnit/mapping/TestMappingUnSymmetric.cpp
  198. +249 −0 Emperor/testUnit/mapping/TestMortarMapper.cpp
  199. +623 −0 Emperor/testUnit/mapping/TestMortarMath.cpp
  200. +6 −0 Emperor/testUnit/output/CMakeLists.txt
  201. +221 −0 Emperor/testUnit/output/TestGiDFileIO.cpp
  202. +152 −0 Emperor/testUnit/output/TestGmshFileIO.cpp
  203. +101 −0 Emperor/testUnit/output/TestMessage.cpp
  204. +6 −0 Emperor/testUnit/tools/CMakeLists.txt
  205. +182 −0 Emperor/testUnit/tools/TestMathLibrary.cpp
  206. +4 −0 build/.gitignore
  207. +66 −0 configure/bashrc_config
  208. +30 −0 eclipseSettings/codeTemplates.xml
  209. +166 −0 eclipseSettings/export.xml
  210. +201 −0 interface/fortran90/m_empire_api.f90
  211. +170 −0 interface/matlab/Makefile
  212. +32 −0 interface/matlab/include_GCC.mk
  213. +32 −0 interface/matlab/include_ICC.mk
  214. +10 −0 interface/matlab/mexFunction.map
  215. +16 −0 interface/matlab/src/EMPIRE_API_Connect.cpp
  216. +14 −0 interface/matlab/src/EMPIRE_API_Disconnect.cpp
  217. +20 −0 interface/matlab/src/EMPIRE_API_getUserDefinedText.cpp
  218. +15 −0 interface/matlab/src/EMPIRE_API_recvConvergenceSignal.cpp
  219. +21 −0 interface/matlab/src/EMPIRE_API_recvDataField.cpp
  220. +28 −0 interface/matlab/src/EMPIRE_API_recvSignal_double.cpp
  221. +21 −0 interface/matlab/src/EMPIRE_API_sendDataField.cpp
  222. +48 −0 interface/matlab/src/EMPIRE_API_sendMesh.cpp
  223. +28 −0 interface/matlab/src/EMPIRE_API_sendSignal_double.cpp
  224. +13 −0 interface/matlab/src/HelperFunctions.h
  225. +4 −0 lib/.gitignore
  226. +525 −0 xmlSchema/emperorInput.xsd
  227. +254 −0 xmlSchema/emperorInputExample.xml
@@ -0,0 +1,100 @@
#------------------------------------------------------------------------------------#
project (EMPIRE)
#------------------------------------------------------------------------------------#
cmake_minimum_required (VERSION 2.8.10)
#------------------------------------------------------------------------------------#
IF(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Linux" AND ${CMAKE_HOST_SYSTEM_PROCESSOR} STREQUAL "x86_64"))
MESSAGE(FATAL_ERROR "EMPIRE is supported on Linux x86_64 only")
ENDIF()
#------------------------------------------------------------------------------------#
# 1. Options
# 2. Macros
# 3. Compiler
# 4. Subdirectories
# 5. Configure
# 6. MPI
#------------------------------------------------------------------------------------#
######################################################################################
# THESE GLOBAL VARIABLES ARE SET DURING THE CONFIGURATION
######################################################################################
#EMPIRE_thirdparty_SOURCES
#EMPIRE_thirdparty_INCLUDES
#Emperor_SOURCES
#Emperor_INCLUDES
#Emperor_API_SOURCES
#Emperor_API_INCLUDES
######################################################################################
#1. Option
######################################################################################
option(USE_INTEL_COMPILERS_AND_MKL "Use Intel Compilers C/C++ and MKL" ON )
######################################################################################
#2. Macros
######################################################################################
# Add EMPIRE cmake modules
set(CMAKE_MODULE_PATH ${EMPIRE_SOURCE_DIR}/cmake/modules)
include(MacroOutOfSourceBuild)
include(MacroAppendGlobalVariable)
include(ExternalProject)
include(GetGitRevisionDescription)
include(CheckCCompilerFlag)
include(CheckCXXCompilerFlag)
######################################################################################
#3. Compiler
######################################################################################

#------------------------------------------------------------------------------------#
# Avoid in source builds
macro_ensure_out_of_source_build("In source build is not allowed for ${PROJECT_NAME}. Please run CMake from your build directory. You may want to remove CMakeCache.txt.")
#------------------------------------------------------------------------------------#
# Set Intel Compiler & MKL
IF (${USE_INTEL_COMPILERS_AND_MKL})
SET (CMAKE_C_COMPILER "mpiicc")
SET (CMAKE_CXX_COMPILER "mpiicpc")
find_package(MKL REQUIRED)
#Let the source code know
add_definitions(-DUSE_INTEL_MKL)
#MESSAGE("MKL is set ${MKL_INCLUDE_DIRS} ${LIBS}")
ENDIF()
#------------------------------------------------------------------------------------#
# Check compilers and their versions
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND "${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
# using GNU
MESSAGE("compiler is GNU")
ELSEIF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel" AND "${CMAKE_C_COMPILER_ID}" STREQUAL "Intel")
# using Intel C/C++
MESSAGE("C compiler is ${CMAKE_C_COMPILER_ID} and has version ${CMAKE_C_COMPILER_VERSION} \nC++ compiler is ${CMAKE_CXX_COMPILER_ID} and has version ${CMAKE_CXX_COMPILER_VERSION} " )
ELSE()
MESSAGE(FATAL_ERROR "Your compiler is not supported by the build system")
ENDIF()
#------------------------------------------------------------------------------------#
# Global valid defines
add_definitions(-DFLANN) # TEMP
add_definitions(-DMPICH_IGNORE_CXX_SEEK)
#------------------------------------------------------------------------------------#
# Set Compiler flags and Linker flags (CMAKE_BUILD_TYPE is not used!)
## This is for all compilers
SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -std=c99")
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 ")
## Here INTEL specific flags are taken care for
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel" AND "${CMAKE_C_COMPILER_ID}" STREQUAL "Intel")
check_c_compiler_flag(-xHost CHECKXHOST)
check_cxx_compiler_flag(-xHost CHECKXHOST)
SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -xHost")
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xHost")
ENDIF()
## Here GNU specific flags are taken care for
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND "${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-result")
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-result")
ENDIF()
######################################################################################
#4. Configure
######################################################################################
configure_file("${PROJECT_SOURCE_DIR}/configure/bashrc_config" "${PROJECT_SOURCE_DIR}/etc/bashrc.sh")
######################################################################################
#5. Subdirectories THE ORDER IS IMPORTANT
######################################################################################
add_subdirectory(thirdparty)
add_subdirectory(Emperor)
add_subdirectory(EMPIRE_API)

No changes.
@@ -0,0 +1,2 @@
#------------------------------------------------------------------------------------#
add_subdirectory(src)
@@ -0,0 +1,5 @@
.PHONY: doc

doc:
@doxygen doxygenFile

Oops, something went wrong.

0 comments on commit 4d1c6c1

Please sign in to comment.