simcoon 1.10.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 (1009) hide show
  1. simcoon-1.10.0/.github/workflows/build-doc.yml +139 -0
  2. simcoon-1.10.0/.github/workflows/build.yml +74 -0
  3. simcoon-1.10.0/.github/workflows/ci.yml +91 -0
  4. simcoon-1.10.0/.github/workflows/conda-packaging.yml +192 -0
  5. simcoon-1.10.0/.github/workflows/release.yml +22 -0
  6. simcoon-1.10.0/.github/workflows/wheels.yml +144 -0
  7. simcoon-1.10.0/.gitignore +14 -0
  8. simcoon-1.10.0/.readthedocs.yaml +29 -0
  9. simcoon-1.10.0/CMakeLists.txt +536 -0
  10. simcoon-1.10.0/Install.bat +64 -0
  11. simcoon-1.10.0/Install.sh +86 -0
  12. simcoon-1.10.0/LICENSE +674 -0
  13. simcoon-1.10.0/Notebooks/Continuum_Mechanics/constitutive_relations.ipynb +521 -0
  14. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/ELISO.ipynb +168 -0
  15. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/ELITR.ipynb +180 -0
  16. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/ELORT.ipynb +220 -0
  17. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/data/path.txt +59 -0
  18. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/data/path_1.txt +46 -0
  19. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/data/path_2.txt +45 -0
  20. simcoon-1.10.0/Notebooks/Umats/Mechanical/Elasticity/data/path_3.txt +45 -0
  21. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/EPKCP.ipynb +340 -0
  22. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/output.dat +16 -0
  23. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/path.txt +85 -0
  24. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/path_1.txt +29 -0
  25. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/path_10.txt +29 -0
  26. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/path_100.txt +29 -0
  27. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loop_kin/data/path_1000.txt +29 -0
  28. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/EPICP.ipynb +348 -0
  29. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/output.dat +16 -0
  30. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/path.txt +85 -0
  31. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/path_1.txt +29 -0
  32. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/path_10.txt +29 -0
  33. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/path_100.txt +29 -0
  34. simcoon-1.10.0/Notebooks/Umats/Mechanical/Plasticity/Loops_iso/data/path_1000.txt +29 -0
  35. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/Prony_N.ipynb +314 -0
  36. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/Prony_raw.dat +1 -0
  37. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path.txt +99 -0
  38. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path_1.txt +99 -0
  39. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path_10.txt +99 -0
  40. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path_100.txt +99 -0
  41. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path_1000.txt +99 -0
  42. simcoon-1.10.0/Notebooks/Umats/Mechanical/Prony_N/data/path_10000.txt +99 -0
  43. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/SMA_TR.ipynb +376 -0
  44. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/data/path.txt +105 -0
  45. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/data/path_1.txt +43 -0
  46. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/data/path_100.txt +43 -0
  47. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/data/path_1000.txt +43 -0
  48. simcoon-1.10.0/Notebooks/Umats/Mechanical/SMA_TR/data/path_20.txt +43 -0
  49. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/Zener.ipynb +313 -0
  50. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/data/path.txt +99 -0
  51. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/data/path_1.txt +99 -0
  52. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/data/path_10.txt +99 -0
  53. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/data/path_100.txt +99 -0
  54. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener/data/path_1000.txt +99 -0
  55. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/Zener_N.ipynb +322 -0
  56. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/Zener_raw.dat +5 -0
  57. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path.txt +99 -0
  58. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path_1.txt +99 -0
  59. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path_10.txt +99 -0
  60. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path_100.txt +99 -0
  61. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path_1000.txt +99 -0
  62. simcoon-1.10.0/Notebooks/Umats/Mechanical/Zener_N/data/path_10000.txt +99 -0
  63. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/ELISO.ipynb +207 -0
  64. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/ELITR.ipynb +278 -0
  65. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/ELORT.ipynb +368 -0
  66. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/data/path.txt +43 -0
  67. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/data/path_1.txt +43 -0
  68. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/data/path_2.txt +45 -0
  69. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Elasticity/data/path_3.txt +43 -0
  70. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/EPKCP.ipynb +375 -0
  71. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/data/path.txt +83 -0
  72. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/data/path_1.txt +27 -0
  73. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/data/path_10.txt +27 -0
  74. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/data/path_100.txt +27 -0
  75. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loop_kin/data/path_1000.txt +27 -0
  76. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/EPICP.ipynb +374 -0
  77. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/data/path.txt +83 -0
  78. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/data/path_1.txt +27 -0
  79. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/data/path_10.txt +27 -0
  80. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/data/path_100.txt +27 -0
  81. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Plasticity/Loops_iso/data/path_1000.txt +27 -0
  82. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/SMA_T.ipynb +403 -0
  83. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/data/path.txt +101 -0
  84. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/data/path_1.txt +27 -0
  85. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/data/path_10.txt +41 -0
  86. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/data/path_100.txt +41 -0
  87. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/SMA_T/data/path_1000.txt +41 -0
  88. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/Zener.ipynb +362 -0
  89. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/data/path.txt +97 -0
  90. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/data/path_1.txt +27 -0
  91. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/data/path_10.txt +27 -0
  92. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/data/path_100.txt +27 -0
  93. simcoon-1.10.0/Notebooks/Umats/Thermomechanical/Viscoelasticity/Zener/data/path_1000.txt +27 -0
  94. simcoon-1.10.0/PKG-INFO +211 -0
  95. simcoon-1.10.0/README.md +178 -0
  96. simcoon-1.10.0/cmake/simcoonConfig.cmake.in +16 -0
  97. simcoon-1.10.0/conda.recipe/bld.bat +31 -0
  98. simcoon-1.10.0/conda.recipe/build.sh +31 -0
  99. simcoon-1.10.0/conda.recipe/conda_build_config.yaml +6 -0
  100. simcoon-1.10.0/conda.recipe/meta.yaml +54 -0
  101. simcoon-1.10.0/docs/Doxyfile +224 -0
  102. simcoon-1.10.0/docs/Makefile +101 -0
  103. simcoon-1.10.0/docs/README.rst +4 -0
  104. simcoon-1.10.0/docs/_static/Armadillo_logo.png +0 -0
  105. simcoon-1.10.0/docs/_static/CMake.png +0 -0
  106. simcoon-1.10.0/docs/_static/CNRS_logo_med.png +0 -0
  107. simcoon-1.10.0/docs/_static/ENSAM_logo_med.png +0 -0
  108. simcoon-1.10.0/docs/_static/TU_Bergakademie_Freiberg_logo_med.png +0 -0
  109. simcoon-1.10.0/docs/_static/UB.png +0 -0
  110. simcoon-1.10.0/docs/_static/UGA.png +0 -0
  111. simcoon-1.10.0/docs/_static/boost_logo.png +0 -0
  112. simcoon-1.10.0/docs/_static/simcoonLogos_ss_fond.png +0 -0
  113. simcoon-1.10.0/docs/_static/simcoon_logo_small.png +0 -0
  114. simcoon-1.10.0/docs/_static/simcoon_logo_text_original.png +0 -0
  115. simcoon-1.10.0/docs/_static/simcoon_overview.pdf +0 -0
  116. simcoon-1.10.0/docs/_static/thumbnails/sphx_glr_constitutive_relations_thumb.png.png +0 -0
  117. simcoon-1.10.0/docs/_templates/custom-class-template.rst +47 -0
  118. simcoon-1.10.0/docs/about.rst +43 -0
  119. simcoon-1.10.0/docs/conf.py +161 -0
  120. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_constitutive.rst +20 -0
  121. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_contimech.rst +27 -0
  122. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_criteria.rst +18 -0
  123. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_damage.rst +7 -0
  124. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_hyperelastic.hpp +85 -0
  125. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_hyperelastic.rst +7 -0
  126. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_kinematics.rst +21 -0
  127. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_recovery_props.rst +13 -0
  128. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_stress.rst +4 -0
  129. simcoon-1.10.0/docs/continuum_mechanics/functions/doc_transfer.rst +7 -0
  130. simcoon-1.10.0/docs/continuum_mechanics/functions/index.rst +16 -0
  131. simcoon-1.10.0/docs/continuum_mechanics/index.rst +8 -0
  132. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/constitutive.rst +21 -0
  133. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/contimech.rst +20 -0
  134. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/criteria.rst +21 -0
  135. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/damage.rst +20 -0
  136. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/hyperelastic.rst +22 -0
  137. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/index.rst +20 -0
  138. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/kinematics.rst +21 -0
  139. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/objective_rates.rst +21 -0
  140. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/recovery_props.rst +21 -0
  141. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/stress.rst +21 -0
  142. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/functions/transfer.rst +21 -0
  143. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/index.rst +23 -0
  144. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/material.rst +10 -0
  145. simcoon-1.10.0/docs/cpp_api/continuum_mechanics/micromechanics.rst +10 -0
  146. simcoon-1.10.0/docs/cpp_api/continuum_mechanics_overview.md +273 -0
  147. simcoon-1.10.0/docs/cpp_api/homogenization/index.rst +27 -0
  148. simcoon-1.10.0/docs/cpp_api/index.rst +43 -0
  149. simcoon-1.10.0/docs/cpp_api/simulation/identification.rst +10 -0
  150. simcoon-1.10.0/docs/cpp_api/simulation/index.rst +25 -0
  151. simcoon-1.10.0/docs/cpp_api/simulation/maths.rst +10 -0
  152. simcoon-1.10.0/docs/cpp_api/simulation/phase.rst +13 -0
  153. simcoon-1.10.0/docs/cpp_api/simulation/solver.rst +9 -0
  154. simcoon-1.10.0/docs/cpp_api/simulation_overview.md +467 -0
  155. simcoon-1.10.0/docs/cpp_api/umat/finite.rst +10 -0
  156. simcoon-1.10.0/docs/cpp_api/umat/index.rst +24 -0
  157. simcoon-1.10.0/docs/cpp_api/umat/mechanical.rst +10 -0
  158. simcoon-1.10.0/docs/cpp_api/umat/thermomechanical.rst +10 -0
  159. simcoon-1.10.0/docs/external.rst +421 -0
  160. simcoon-1.10.0/docs/homogenization/doc_eshelby.rst +10 -0
  161. simcoon-1.10.0/docs/homogenization/index.rst +8 -0
  162. simcoon-1.10.0/docs/index.rst +79 -0
  163. simcoon-1.10.0/docs/installation.rst +128 -0
  164. simcoon-1.10.0/docs/requirements.txt +9 -0
  165. simcoon-1.10.0/docs/simulation/abaqus.rst +481 -0
  166. simcoon-1.10.0/docs/simulation/ansys.rst +330 -0
  167. simcoon-1.10.0/docs/simulation/fea_integration.rst +96 -0
  168. simcoon-1.10.0/docs/simulation/index.rst +10 -0
  169. simcoon-1.10.0/docs/simulation/output.rst +316 -0
  170. simcoon-1.10.0/docs/simulation/solver.rst +595 -0
  171. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/constitutive.rst +358 -0
  172. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/contimech.rst +171 -0
  173. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/criteria.rst +194 -0
  174. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/damage.rst +58 -0
  175. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/derivatives.rst +78 -0
  176. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/func_N.rst +40 -0
  177. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/index.rst +14 -0
  178. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/kinematics.rst +258 -0
  179. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/natural_basis.rst +83 -0
  180. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/recovery_props.rst +164 -0
  181. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/stress.rst +162 -0
  182. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Functions/transfer.rst +162 -0
  183. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Homogenization/eshelby.rst +150 -0
  184. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Homogenization/index.rst +6 -0
  185. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Material/index.rst +4 -0
  186. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Micromechanics/index.rst +6 -0
  187. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Micromechanics/schemes.rst +240 -0
  188. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Umat/index.rst +2 -0
  189. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/Unit_cell/index.rst +2 -0
  190. simcoon-1.10.0/docs_old/Cpp/Continuum_Mechanics/index.rst +11 -0
  191. simcoon-1.10.0/docs_old/Cpp/Simulation/Geometry/index.rst +4 -0
  192. simcoon-1.10.0/docs_old/Cpp/Simulation/Identification/identification.rst +7 -0
  193. simcoon-1.10.0/docs_old/Cpp/Simulation/Identification/index.rst +6 -0
  194. simcoon-1.10.0/docs_old/Cpp/Simulation/Maths/index.rst +7 -0
  195. simcoon-1.10.0/docs_old/Cpp/Simulation/Maths/rotation.rst +2 -0
  196. simcoon-1.10.0/docs_old/Cpp/Simulation/Maths/stats.rst +2 -0
  197. simcoon-1.10.0/docs_old/Cpp/Simulation/Phase/index.rst +4 -0
  198. simcoon-1.10.0/docs_old/Cpp/Simulation/Solver/index.rst +7 -0
  199. simcoon-1.10.0/docs_old/Cpp/Simulation/Solver/solver.rst +21 -0
  200. simcoon-1.10.0/docs_old/Cpp/Simulation/Solver/step.rst +10 -0
  201. simcoon-1.10.0/docs_old/Cpp/Simulation/index.rst +10 -0
  202. simcoon-1.10.0/docs_old/Cpp/index.rst +11 -0
  203. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/constitutive.rst +297 -0
  204. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/contimech.rst +165 -0
  205. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/criteria.rst +195 -0
  206. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/damage.rst +58 -0
  207. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/func_N.rst +40 -0
  208. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/index.rst +12 -0
  209. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/kinematics.rst +7 -0
  210. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/recovery_props.rst +27 -0
  211. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Functions/transfer.rst +40 -0
  212. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Homogenization/eshelby.rst +150 -0
  213. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Homogenization/index.rst +6 -0
  214. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Material/index.rst +4 -0
  215. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Micromechanics/index.rst +6 -0
  216. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Micromechanics/schemes.rst +240 -0
  217. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Umat/index.rst +2 -0
  218. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/Unit_cell/index.rst +2 -0
  219. simcoon-1.10.0/docs_old/Python/Continuum_Mechanics/index.rst +11 -0
  220. simcoon-1.10.0/docs_old/Python/index.rst +10 -0
  221. simcoon-1.10.0/environment.yml +23 -0
  222. simcoon-1.10.0/environment_arm64.yml +22 -0
  223. simcoon-1.10.0/environment_doc.yml +40 -0
  224. simcoon-1.10.0/environment_win.yml +22 -0
  225. simcoon-1.10.0/examples/GALLERY_HEADER.rst +7 -0
  226. simcoon-1.10.0/examples/analysis/README.rst +5 -0
  227. simcoon-1.10.0/examples/analysis/data/output.dat +16 -0
  228. simcoon-1.10.0/examples/analysis/data/path.txt +32 -0
  229. simcoon-1.10.0/examples/analysis/directional_stiffness.py +81 -0
  230. simcoon-1.10.0/examples/analysis/eshelby_numerical_vs_analytical.py +416 -0
  231. simcoon-1.10.0/examples/analysis/objective_rates.py +125 -0
  232. simcoon-1.10.0/examples/continuum_mechanics/README.rst +14 -0
  233. simcoon-1.10.0/examples/continuum_mechanics/constitutive_relations.py +157 -0
  234. simcoon-1.10.0/examples/continuum_mechanics/images/thumb/sphx_glr_constitutive_relations_thumb.png +0 -0
  235. simcoon-1.10.0/examples/continuum_mechanics/rotation.py +197 -0
  236. simcoon-1.10.0/examples/continuum_mechanics/stress_measures.py +195 -0
  237. simcoon-1.10.0/examples/continuum_mechanics/stress_transfer_helpers.py +175 -0
  238. simcoon-1.10.0/examples/continuum_mechanics/yield_criteria.py +662 -0
  239. simcoon-1.10.0/examples/heterogeneous/README.rst +9 -0
  240. simcoon-1.10.0/examples/heterogeneous/data/E_exp.txt +6 -0
  241. simcoon-1.10.0/examples/heterogeneous/data/Nellipsoids0.dat +3 -0
  242. simcoon-1.10.0/examples/heterogeneous/data/Nellipsoids1.dat +3 -0
  243. simcoon-1.10.0/examples/heterogeneous/data/material.dat +16 -0
  244. simcoon-1.10.0/examples/heterogeneous/data/output.dat +16 -0
  245. simcoon-1.10.0/examples/heterogeneous/data/parameters.inp +5 -0
  246. simcoon-1.10.0/examples/heterogeneous/data/path.txt +59 -0
  247. simcoon-1.10.0/examples/heterogeneous/effective_props.py +208 -0
  248. simcoon-1.10.0/examples/heterogeneous/eshelby_tensors.py +138 -0
  249. simcoon-1.10.0/examples/heterogeneous/homogenization.py +103 -0
  250. simcoon-1.10.0/examples/heterogeneous/keys/Nellipsoids0.dat +3 -0
  251. simcoon-1.10.0/examples/hyperelasticity/HYPER_numerical.py +708 -0
  252. simcoon-1.10.0/examples/hyperelasticity/HYPER_umat.py +624 -0
  253. simcoon-1.10.0/examples/hyperelasticity/README.rst +4 -0
  254. simcoon-1.10.0/examples/hyperelasticity/comparison/Treloar.txt +26 -0
  255. simcoon-1.10.0/examples/hyperelasticity/data/output.dat +16 -0
  256. simcoon-1.10.0/examples/hyperelasticity/data/path.txt +59 -0
  257. simcoon-1.10.0/examples/hyperelasticity/data/path_ET.txt +33 -0
  258. simcoon-1.10.0/examples/hyperelasticity/data/path_PS.txt +33 -0
  259. simcoon-1.10.0/examples/hyperelasticity/data/path_UT.txt +34 -0
  260. simcoon-1.10.0/examples/hyperelasticity/data/solver_control.inp +21 -0
  261. simcoon-1.10.0/examples/hyperelasticity/data/solver_essentials.inp +4 -0
  262. simcoon-1.10.0/examples/umats/ELISO.py +145 -0
  263. simcoon-1.10.0/examples/umats/ELIST.py +114 -0
  264. simcoon-1.10.0/examples/umats/ELORT.py +121 -0
  265. simcoon-1.10.0/examples/umats/EPCHA.py +129 -0
  266. simcoon-1.10.0/examples/umats/EPICP.py +258 -0
  267. simcoon-1.10.0/examples/umats/EPKCP.py +121 -0
  268. simcoon-1.10.0/examples/umats/README.rst +18 -0
  269. simcoon-1.10.0/examples/umats/data/ELISO_path.txt +59 -0
  270. simcoon-1.10.0/examples/umats/data/ELISO_path_1.txt +46 -0
  271. simcoon-1.10.0/examples/umats/data/ELISO_path_2.txt +45 -0
  272. simcoon-1.10.0/examples/umats/data/ELISO_path_3.txt +45 -0
  273. simcoon-1.10.0/examples/umats/data/ELIST_path.txt +43 -0
  274. simcoon-1.10.0/examples/umats/data/ELORT_path.txt +43 -0
  275. simcoon-1.10.0/examples/umats/data/EPCHA_path.txt +121 -0
  276. simcoon-1.10.0/examples/umats/data/EPICP_path.txt +85 -0
  277. simcoon-1.10.0/examples/umats/data/EPICP_path_1.txt +29 -0
  278. simcoon-1.10.0/examples/umats/data/EPICP_path_10.txt +29 -0
  279. simcoon-1.10.0/examples/umats/data/EPICP_path_100.txt +29 -0
  280. simcoon-1.10.0/examples/umats/data/EPICP_path_1000.txt +29 -0
  281. simcoon-1.10.0/examples/umats/data/EPKCP_path.txt +57 -0
  282. simcoon-1.10.0/external/UMAT_ABAQUS_ELASTIC.f +308 -0
  283. simcoon-1.10.0/external/USERMAT_ANSYS_ELASTIC.for +138 -0
  284. simcoon-1.10.0/external/readme.txt +23 -0
  285. simcoon-1.10.0/external/umat_plugin_aba.cpp +140 -0
  286. simcoon-1.10.0/external/umat_plugin_ans.cpp +302 -0
  287. simcoon-1.10.0/external/umat_plugin_ext.cpp +97 -0
  288. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/constitutive.hpp +420 -0
  289. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/contimech.hpp +630 -0
  290. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/criteria.hpp +466 -0
  291. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/damage.hpp +118 -0
  292. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/derivatives.hpp +249 -0
  293. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/func_N.hpp +96 -0
  294. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/hyperelastic.hpp +726 -0
  295. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/kinematics.hpp +429 -0
  296. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/natural_basis.hpp +189 -0
  297. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/objective_rates.hpp +696 -0
  298. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/recovery_props.hpp +298 -0
  299. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/stress.hpp +350 -0
  300. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Functions/transfer.hpp +329 -0
  301. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Homogenization/cylinder_multi.hpp +163 -0
  302. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Homogenization/ellipsoid_multi.hpp +256 -0
  303. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Homogenization/eshelby.hpp +341 -0
  304. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Homogenization/layer_multi.hpp +177 -0
  305. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Homogenization/phase_multi.hpp +189 -0
  306. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/ODF.hpp +82 -0
  307. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/ODF2Nphases.hpp +57 -0
  308. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/PDF.hpp +80 -0
  309. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/PDF2Nphases.hpp +57 -0
  310. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/crystallo.hpp +54 -0
  311. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/peak.hpp +78 -0
  312. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/read.hpp +48 -0
  313. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Material/variant.hpp +69 -0
  314. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Micromechanics/multiphase.hpp +80 -0
  315. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Micromechanics/schemes.hpp +141 -0
  316. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/generic_hyper_invariants.hpp +50 -0
  317. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/generic_hyper_pstretch.hpp +50 -0
  318. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/hypoelastic_orthotropic.hpp +50 -0
  319. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/mooney_rivlin.hpp +50 -0
  320. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/neo_hookean_comp.hpp +176 -0
  321. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/neo_hookean_incomp.hpp +50 -0
  322. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Finite/saint_venant.hpp +50 -0
  323. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Damage/damage_LLD_0.hpp +280 -0
  324. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Damage/damage_weibull.hpp +44 -0
  325. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_isotropic.hpp +192 -0
  326. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_orthotropic.hpp +136 -0
  327. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_transverse_isotropic.hpp +140 -0
  328. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/External/external_umat.hpp +26 -0
  329. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/Ani_chaboche_ccp.hpp +150 -0
  330. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/DFA_chaboche_ccp.hpp +137 -0
  331. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/Generic_chaboche_ccp.hpp +143 -0
  332. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_chaboche_ccp.hpp +162 -0
  333. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_isoh.hpp +264 -0
  334. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_isoh_Nfast.hpp +154 -0
  335. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_chaboche_ccp.hpp +270 -0
  336. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_isotropic_ccp.hpp +162 -0
  337. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_kin_iso_ccp.hpp +177 -0
  338. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/SMA/SMA_mono.hpp +186 -0
  339. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/SMA/SMA_mono_cubic.hpp +79 -0
  340. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/SMA/aniso_T.hpp +91 -0
  341. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/SMA/unified_T.hpp +82 -0
  342. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Prony_Nfast.hpp +174 -0
  343. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Zener_Nfast.hpp +178 -0
  344. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Zener_fast.hpp +154 -0
  345. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_isotropic.hpp +50 -0
  346. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_orthotropic.hpp +50 -0
  347. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_transverse_isotropic.hpp +50 -0
  348. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/External/external_umat.hpp +26 -0
  349. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Plasticity/plastic_isotropic_ccp.hpp +65 -0
  350. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Plasticity/plastic_kin_iso_ccp.hpp +72 -0
  351. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/SMA/unified_T.hpp +81 -0
  352. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Prony_Nfast.hpp +32 -0
  353. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Zener_Nfast.hpp +32 -0
  354. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Zener_fast.hpp +33 -0
  355. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/fea_transfer.hpp +330 -0
  356. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/umat_L_elastic.hpp +43 -0
  357. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/umat_plugin_api.hpp +231 -0
  358. simcoon-1.10.0/include/simcoon/Continuum_mechanics/Umat/umat_smart.hpp +745 -0
  359. simcoon-1.10.0/include/simcoon/FTensor/Christof/Christof_number.hpp +16 -0
  360. simcoon-1.10.0/include/simcoon/FTensor/Christof/Christof_numeral.hpp +31 -0
  361. simcoon-1.10.0/include/simcoon/FTensor/Christof/Christof_pointer.hpp +245 -0
  362. simcoon-1.10.0/include/simcoon/FTensor/Christof/Christof_value.hpp +327 -0
  363. simcoon-1.10.0/include/simcoon/FTensor/Christof.hpp +8 -0
  364. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_Expr.hpp +66 -0
  365. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_Expr_equals.hpp +106 -0
  366. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_and_Ddg.hpp +74 -0
  367. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_and_Tensor2_symmetric.hpp +207 -0
  368. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_carat_Ddg.hpp +67 -0
  369. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_carat_Tensor2_symmetric.hpp +83 -0
  370. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_minus_Ddg.hpp +40 -0
  371. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_mod_Ddg.hpp +40 -0
  372. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_mod_Tensor2_symmetric.hpp +101 -0
  373. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_number.hpp +42 -0
  374. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_numeral.hpp +92 -0
  375. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_or_Ddg.hpp +40 -0
  376. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_or_Tensor2_symmetric.hpp +83 -0
  377. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_plus_Ddg.hpp +77 -0
  378. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_pointer.hpp +254 -0
  379. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_times_Ddg.hpp +94 -0
  380. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_times_Tensor1.hpp +70 -0
  381. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_times_Tensor2.hpp +156 -0
  382. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_times_Tensor2_symmetric.hpp +231 -0
  383. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_times_generic.hpp +33 -0
  384. simcoon-1.10.0/include/simcoon/FTensor/Ddg/Ddg_value.hpp +249 -0
  385. simcoon-1.10.0/include/simcoon/FTensor/Ddg/minus_Ddg.hpp +31 -0
  386. simcoon-1.10.0/include/simcoon/FTensor/Ddg.hpp +13 -0
  387. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_Expr.hpp +160 -0
  388. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_Expr_equals.hpp +353 -0
  389. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_and_Dg.hpp +74 -0
  390. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_and_Tensor1.hpp +55 -0
  391. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_and_Tensor2_symmetric.hpp +57 -0
  392. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_divide_generic.hpp +39 -0
  393. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_function_operator.hpp +353 -0
  394. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_minus_Dg.hpp +73 -0
  395. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_number.hpp +64 -0
  396. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_numeral.hpp +60 -0
  397. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_or_Dg.hpp +71 -0
  398. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_plus_Dg.hpp +106 -0
  399. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_pointer.hpp +428 -0
  400. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_times_Dg.hpp +195 -0
  401. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_times_Tensor1.hpp +185 -0
  402. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_times_Tensor2.hpp +658 -0
  403. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_times_Tensor2_symmetric.hpp +664 -0
  404. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_times_generic.hpp +51 -0
  405. simcoon-1.10.0/include/simcoon/FTensor/Dg/Dg_value.hpp +414 -0
  406. simcoon-1.10.0/include/simcoon/FTensor/Dg/minus_Dg.hpp +28 -0
  407. simcoon-1.10.0/include/simcoon/FTensor/Dg.hpp +10 -0
  408. simcoon-1.10.0/include/simcoon/FTensor/Index.hpp +25 -0
  409. simcoon-1.10.0/include/simcoon/FTensor/Levi_Civita.hpp +800 -0
  410. simcoon-1.10.0/include/simcoon/FTensor/Number.hpp +17 -0
  411. simcoon-1.10.0/include/simcoon/FTensor/Permutation2.hpp +33 -0
  412. simcoon-1.10.0/include/simcoon/FTensor/Permutation3.hpp +64 -0
  413. simcoon-1.10.0/include/simcoon/FTensor/Permutation4.hpp +196 -0
  414. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_Expr.hpp +90 -0
  415. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_minus_Riemann.hpp +39 -0
  416. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_plus_Riemann.hpp +39 -0
  417. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_times_Ddg.hpp +84 -0
  418. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_times_Tensor1.hpp +207 -0
  419. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_times_Tensor2_symmetric.hpp +67 -0
  420. simcoon-1.10.0/include/simcoon/FTensor/Riemann/Riemann_times_Tensor4.hpp +97 -0
  421. simcoon-1.10.0/include/simcoon/FTensor/Riemann.hpp +200 -0
  422. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/dTensor0.hpp +34 -0
  423. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/d_boundary_Tensor0.hpp +43 -0
  424. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/d_one_sided_Tensor0.hpp +34 -0
  425. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/ddTensor0.hpp +41 -0
  426. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/dd_boundary_Tensor0.hpp +91 -0
  427. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/diffusion_Tensor0.hpp +25 -0
  428. simcoon-1.10.0/include/simcoon/FTensor/Tensor0/interpolate_Tensor0.hpp +34 -0
  429. simcoon-1.10.0/include/simcoon/FTensor/Tensor0.hpp +79 -0
  430. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_Expr.hpp +257 -0
  431. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_Expr_equals.hpp +798 -0
  432. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_and_Tensor1.hpp +36 -0
  433. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_carat_Tensor1.hpp +35 -0
  434. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_divide_generic.hpp +37 -0
  435. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_minus_Tensor1.hpp +35 -0
  436. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_minus_generic.hpp +38 -0
  437. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_or_Tensor1.hpp +35 -0
  438. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_plus_Tensor1.hpp +35 -0
  439. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_plus_generic.hpp +50 -0
  440. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_pointer.hpp +98 -0
  441. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_times_Tensor1.hpp +66 -0
  442. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_times_generic.hpp +50 -0
  443. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/Tensor1_value.hpp +128 -0
  444. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/dTensor1.hpp +68 -0
  445. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/d_one_sided_Tensor1.hpp +40 -0
  446. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/ddTensor1.hpp +51 -0
  447. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/diffusion_Tensor1.hpp +48 -0
  448. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/generic_minus_Tensor1.hpp +33 -0
  449. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/interpolate_Tensor1.hpp +58 -0
  450. simcoon-1.10.0/include/simcoon/FTensor/Tensor1/minus_Tensor1.hpp +24 -0
  451. simcoon-1.10.0/include/simcoon/FTensor/Tensor1.hpp +6 -0
  452. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_Expr.hpp +183 -0
  453. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_and_Tensor1.hpp +90 -0
  454. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_carat_Tensor2.hpp +205 -0
  455. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_divide_generic.hpp +34 -0
  456. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_minus_Tensor2.hpp +71 -0
  457. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_number.hpp +31 -0
  458. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_numeral.hpp +27 -0
  459. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_or_Tensor2.hpp +72 -0
  460. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_plus_Tensor2.hpp +71 -0
  461. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_pointer.hpp +172 -0
  462. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_times_Tensor1.hpp +127 -0
  463. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_times_Tensor2.hpp +328 -0
  464. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_times_generic.hpp +44 -0
  465. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_transform.hpp +33 -0
  466. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/Tensor2_value.hpp +293 -0
  467. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/conj_Tensor2.hpp +28 -0
  468. simcoon-1.10.0/include/simcoon/FTensor/Tensor2/minus_Tensor2.hpp +25 -0
  469. simcoon-1.10.0/include/simcoon/FTensor/Tensor2.hpp +9 -0
  470. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_antisymmetric/Tensor2_antisymmetric_Expr.hpp +93 -0
  471. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_antisymmetric/Tensor2_antisymmetric_value.hpp +314 -0
  472. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_antisymmetric.hpp +8 -0
  473. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_Expr.hpp +180 -0
  474. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_Expr_equals.hpp +547 -0
  475. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_and_Tensor2_symmetric.hpp +75 -0
  476. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_carat_Tensor2.hpp +191 -0
  477. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_divide_generic.hpp +35 -0
  478. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_minus_Tensor2.hpp +141 -0
  479. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_minus_Tensor2_symmetric.hpp +75 -0
  480. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_minus_generic.hpp +35 -0
  481. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_mod_Tensor2_symmetric.hpp +74 -0
  482. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_plus_Tensor2.hpp +95 -0
  483. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_plus_Tensor2_symmetric.hpp +75 -0
  484. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_plus_generic.hpp +29 -0
  485. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_pointer.hpp +222 -0
  486. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_times_Tensor1.hpp +174 -0
  487. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_times_Tensor2.hpp +386 -0
  488. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_times_Tensor2_symmetric.hpp +326 -0
  489. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_times_generic.hpp +29 -0
  490. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/Tensor2_symmetric_value.hpp +305 -0
  491. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/dTensor2_symmetric.hpp +39 -0
  492. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/d_boundary_Tensor2_symmetric.hpp +50 -0
  493. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/d_one_sided_Tensor2_symmetric.hpp +45 -0
  494. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/ddTensor2_symmetric.hpp +47 -0
  495. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/dd_boundary_Tensor2_symmetric.hpp +112 -0
  496. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/diffusion_Tensor2_symmetric.hpp +50 -0
  497. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/generic_minus_Tensor2_symmetric.hpp +34 -0
  498. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/interpolate_Tensor2_symmetric.hpp +65 -0
  499. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric/minus_Tensor2_symmetric.hpp +27 -0
  500. simcoon-1.10.0/include/simcoon/FTensor/Tensor2_symmetric.hpp +8 -0
  501. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_Expr.hpp +101 -0
  502. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_contracted.hpp +64 -0
  503. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_minus_Tensor3.hpp +176 -0
  504. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_number.hpp +92 -0
  505. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_numeral.hpp +60 -0
  506. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_or_Tensor3.hpp +82 -0
  507. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_plus_Tensor3.hpp +176 -0
  508. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_Dg.hpp +506 -0
  509. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_Tensor1.hpp +192 -0
  510. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_Tensor2.hpp +561 -0
  511. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_Tensor2_symmetric.hpp +224 -0
  512. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_Tensor3.hpp +447 -0
  513. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_times_generic.hpp +34 -0
  514. simcoon-1.10.0/include/simcoon/FTensor/Tensor3/Tensor3_value.hpp +582 -0
  515. simcoon-1.10.0/include/simcoon/FTensor/Tensor3.hpp +10 -0
  516. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_Expr.hpp +71 -0
  517. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_Expr_equals.hpp +156 -0
  518. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_mod_Tensor1.hpp +58 -0
  519. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_or_Tensor3_antisymmetric.hpp +42 -0
  520. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_plus_Tensor3_antisymmetric.hpp +84 -0
  521. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_pointer.hpp +127 -0
  522. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_times_Tensor3.hpp +536 -0
  523. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_times_generic.hpp +60 -0
  524. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric/Tensor3_antisymmetric_value.hpp +101 -0
  525. simcoon-1.10.0/include/simcoon/FTensor/Tensor3_antisymmetric.hpp +10 -0
  526. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_Expr.hpp +112 -0
  527. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_contracted.hpp +109 -0
  528. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_minus_Tensor4.hpp +46 -0
  529. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_plus_Tensor4.hpp +46 -0
  530. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_times_Tensor2_double.hpp +336 -0
  531. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_times_Tensor2_single.hpp +238 -0
  532. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_times_Tensor2_symmetric.hpp +398 -0
  533. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_times_Tensor3_triple.hpp +639 -0
  534. simcoon-1.10.0/include/simcoon/FTensor/Tensor4/Tensor4_value.hpp +283 -0
  535. simcoon-1.10.0/include/simcoon/FTensor/Tensor4.hpp +5 -0
  536. simcoon-1.10.0/include/simcoon/FTensor/cross.hpp +15 -0
  537. simcoon-1.10.0/include/simcoon/FTensor/derivative_delta.hpp +16 -0
  538. simcoon-1.10.0/include/simcoon/FTensor/error_when_instantiated.hpp +11 -0
  539. simcoon-1.10.0/include/simcoon/FTensor/permute.hpp +42 -0
  540. simcoon-1.10.0/include/simcoon/FTensor/promote.hpp +35 -0
  541. simcoon-1.10.0/include/simcoon/FTensor.hpp +102 -0
  542. simcoon-1.10.0/include/simcoon/Simulation/Geometry/cylinder.hpp +75 -0
  543. simcoon-1.10.0/include/simcoon/Simulation/Geometry/ellipsoid.hpp +120 -0
  544. simcoon-1.10.0/include/simcoon/Simulation/Geometry/geometry.hpp +97 -0
  545. simcoon-1.10.0/include/simcoon/Simulation/Geometry/layer.hpp +106 -0
  546. simcoon-1.10.0/include/simcoon/Simulation/Identification/constants.hpp +78 -0
  547. simcoon-1.10.0/include/simcoon/Simulation/Identification/doe.hpp +54 -0
  548. simcoon-1.10.0/include/simcoon/Simulation/Identification/generation.hpp +126 -0
  549. simcoon-1.10.0/include/simcoon/Simulation/Identification/identification.hpp +47 -0
  550. simcoon-1.10.0/include/simcoon/Simulation/Identification/individual.hpp +112 -0
  551. simcoon-1.10.0/include/simcoon/Simulation/Identification/methods.hpp +56 -0
  552. simcoon-1.10.0/include/simcoon/Simulation/Identification/opti_data.hpp +79 -0
  553. simcoon-1.10.0/include/simcoon/Simulation/Identification/optimize.hpp +93 -0
  554. simcoon-1.10.0/include/simcoon/Simulation/Identification/parameters.hpp +79 -0
  555. simcoon-1.10.0/include/simcoon/Simulation/Identification/read.hpp +65 -0
  556. simcoon-1.10.0/include/simcoon/Simulation/Identification/script.hpp +75 -0
  557. simcoon-1.10.0/include/simcoon/Simulation/Maths/lagrange.hpp +61 -0
  558. simcoon-1.10.0/include/simcoon/Simulation/Maths/num_solve.hpp +46 -0
  559. simcoon-1.10.0/include/simcoon/Simulation/Maths/random.hpp +73 -0
  560. simcoon-1.10.0/include/simcoon/Simulation/Maths/rotation.hpp +398 -0
  561. simcoon-1.10.0/include/simcoon/Simulation/Maths/solve.hpp +46 -0
  562. simcoon-1.10.0/include/simcoon/Simulation/Maths/stats.hpp +181 -0
  563. simcoon-1.10.0/include/simcoon/Simulation/Phase/isv.hpp +69 -0
  564. simcoon-1.10.0/include/simcoon/Simulation/Phase/material_characteristics.hpp +160 -0
  565. simcoon-1.10.0/include/simcoon/Simulation/Phase/output.hpp +43 -0
  566. simcoon-1.10.0/include/simcoon/Simulation/Phase/phase_characteristics.hpp +196 -0
  567. simcoon-1.10.0/include/simcoon/Simulation/Phase/read.hpp +57 -0
  568. simcoon-1.10.0/include/simcoon/Simulation/Phase/state_variables.hpp +244 -0
  569. simcoon-1.10.0/include/simcoon/Simulation/Phase/state_variables_M.hpp +87 -0
  570. simcoon-1.10.0/include/simcoon/Simulation/Phase/state_variables_T.hpp +93 -0
  571. simcoon-1.10.0/include/simcoon/Simulation/Phase/write.hpp +54 -0
  572. simcoon-1.10.0/include/simcoon/Simulation/Solver/block.hpp +126 -0
  573. simcoon-1.10.0/include/simcoon/Simulation/Solver/output.hpp +84 -0
  574. simcoon-1.10.0/include/simcoon/Simulation/Solver/read.hpp +69 -0
  575. simcoon-1.10.0/include/simcoon/Simulation/Solver/solver.hpp +74 -0
  576. simcoon-1.10.0/include/simcoon/Simulation/Solver/step.hpp +136 -0
  577. simcoon-1.10.0/include/simcoon/Simulation/Solver/step_meca.hpp +82 -0
  578. simcoon-1.10.0/include/simcoon/Simulation/Solver/step_thermomeca.hpp +81 -0
  579. simcoon-1.10.0/include/simcoon/exception.hpp +77 -0
  580. simcoon-1.10.0/include/simcoon/parameter.hpp +66 -0
  581. simcoon-1.10.0/include/simcoon/simcoon_doxygen_groups.hpp +215 -0
  582. simcoon-1.10.0/install_conda.md +72 -0
  583. simcoon-1.10.0/pyproject.toml +192 -0
  584. simcoon-1.10.0/python-setup/simcoon/__init__.py +5 -0
  585. simcoon-1.10.0/python-setup/simcoon/__version__.py +1 -0
  586. simcoon-1.10.0/python-setup/simcoon/ashby.py +141 -0
  587. simcoon-1.10.0/python-setup/simcoon/base.py +334 -0
  588. simcoon-1.10.0/python-setup/simcoon/block.py +88 -0
  589. simcoon-1.10.0/python-setup/simcoon/clean_data.py +122 -0
  590. simcoon-1.10.0/python-setup/simcoon/constant.py +123 -0
  591. simcoon-1.10.0/python-setup/simcoon/data.py +90 -0
  592. simcoon-1.10.0/python-setup/simcoon/parameter.py +134 -0
  593. simcoon-1.10.0/python-setup/simcoon/solver.py +33 -0
  594. simcoon-1.10.0/simcoon-python-builder/CMakeLists.txt +159 -0
  595. simcoon-1.10.0/simcoon-python-builder/cmake/FindNumPy.cmake +90 -0
  596. simcoon-1.10.0/simcoon-python-builder/cmake/FindPackageHandleStandardArgs.cmake +386 -0
  597. simcoon-1.10.0/simcoon-python-builder/cmake/FindPackageMessage.cmake +47 -0
  598. simcoon-1.10.0/simcoon-python-builder/cmake/Findarma2numpy.cmake +58 -0
  599. simcoon-1.10.0/simcoon-python-builder/cmake/Findsimcoon.cmake +58 -0
  600. simcoon-1.10.0/simcoon-python-builder/cmake/LibFindMacros.cmake +269 -0
  601. simcoon-1.10.0/simcoon-python-builder/cmake/README.txt +6 -0
  602. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_constitutive.hpp +637 -0
  603. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_contimech.hpp +827 -0
  604. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_criteria.hpp +669 -0
  605. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_damage.hpp +191 -0
  606. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_hyperelastic.hpp +271 -0
  607. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_kinematics.hpp +491 -0
  608. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_recovery_props.hpp +206 -0
  609. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_stress.hpp +116 -0
  610. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Continuum_mechanics/doc_transfer.hpp +140 -0
  611. simcoon-1.10.0/simcoon-python-builder/include/simcoon/docs/Libraries/Homogenization/doc_eshelby.hpp +366 -0
  612. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/Leff.hpp +10 -0
  613. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/constitutive.hpp +71 -0
  614. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/contimech.hpp +94 -0
  615. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/criteria.hpp +53 -0
  616. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/damage.hpp +19 -0
  617. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/hyperelastic.hpp +35 -0
  618. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/kinematics.hpp +62 -0
  619. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/objective_rates.hpp +14 -0
  620. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/recovery_props.hpp +37 -0
  621. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/stress.hpp +39 -0
  622. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/transfer.hpp +19 -0
  623. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Continuum_mechanics/umat.hpp +10 -0
  624. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Homogenization/eshelby.hpp +28 -0
  625. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Identification/constants.hpp +19 -0
  626. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Identification/identification.hpp +24 -0
  627. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Identification/optimize.hpp +10 -0
  628. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Identification/parameters.hpp +14 -0
  629. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Material/ODF.hpp +12 -0
  630. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Maths/lagrange.hpp +28 -0
  631. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Maths/rotation.hpp +73 -0
  632. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Solver/read.hpp +12 -0
  633. simcoon-1.10.0/simcoon-python-builder/include/simcoon/python_wrappers/Libraries/Solver/solver.hpp +9 -0
  634. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/Leff.cpp +43 -0
  635. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/constitutive.cpp +144 -0
  636. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/contimech.cpp +245 -0
  637. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/criteria.cpp +143 -0
  638. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/damage.cpp +41 -0
  639. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/hyperelastic.cpp +232 -0
  640. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/kinematics.cpp +186 -0
  641. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/objective_rates.cpp +403 -0
  642. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/recovery_props.cpp +103 -0
  643. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/stress.cpp +240 -0
  644. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/transfer.cpp +67 -0
  645. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Continuum_mechanics/umat.cpp +588 -0
  646. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Homogenization/eshelby.cpp +61 -0
  647. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Identification/constants.cpp +60 -0
  648. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Identification/identification.cpp +121 -0
  649. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Identification/optimize.cpp +176 -0
  650. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Identification/parameters.cpp +48 -0
  651. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Material/ODF.cpp +94 -0
  652. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Maths/lagrange.cpp +53 -0
  653. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Maths/rotation.cpp +316 -0
  654. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Solver/read.cpp +91 -0
  655. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/Libraries/Solver/solver.cpp +33 -0
  656. simcoon-1.10.0/simcoon-python-builder/src/python_wrappers/python_module.cpp +274 -0
  657. simcoon-1.10.0/simcoon-python-builder/test/Carma/Tarr_to_mat.cpp +427 -0
  658. simcoon-1.10.0/simcoon-python-builder/test/Carma/Tarr_to_mat.hpp +42 -0
  659. simcoon-1.10.0/simcoon-python-builder/test/Carma/Troundtrip.cpp +56 -0
  660. simcoon-1.10.0/simcoon-python-builder/test/Carma/Troundtrip.hpp +37 -0
  661. simcoon-1.10.0/simcoon-python-builder/test/Carma/bindings.cpp +36 -0
  662. simcoon-1.10.0/simcoon-python-builder/test/Carma/run_test_arr_to_mat.py +338 -0
  663. simcoon-1.10.0/simcoon-python-builder/test/Carma/run_test_roundtrip.py +153 -0
  664. simcoon-1.10.0/simcoon-python-builder/test/exception_test/Teig_sym.cpp +88 -0
  665. simcoon-1.10.0/simcoon-python-builder/test/exception_test/Teig_sym.hpp +38 -0
  666. simcoon-1.10.0/simcoon-python-builder/test/exception_test/bindings.cpp +25 -0
  667. simcoon-1.10.0/simcoon-python-builder/test/exception_test/run_test_exception.py +48 -0
  668. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/data/E_exp.txt +6 -0
  669. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/data/Nellipsoids0.dat +3 -0
  670. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/data/Nellipsoids1.dat +6 -0
  671. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/data/parameters.inp +5 -0
  672. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/keys/Nellipsoids0.dat +3 -0
  673. simcoon-1.10.0/simcoon-python-builder/test/parameter_test/test.py +60 -0
  674. simcoon-1.10.0/simcoon-python-builder/test/test_core/data/material.dat +14 -0
  675. simcoon-1.10.0/simcoon-python-builder/test/test_core/data/path.txt +44 -0
  676. simcoon-1.10.0/simcoon-python-builder/test/test_core/run_test.py +36 -0
  677. simcoon-1.10.0/software/Elastic_props.cpp +105 -0
  678. simcoon-1.10.0/software/L_eff.cpp +74 -0
  679. simcoon-1.10.0/software/ODF.cpp +136 -0
  680. simcoon-1.10.0/software/PDF.cpp +132 -0
  681. simcoon-1.10.0/software/identification.cpp +86 -0
  682. simcoon-1.10.0/software/solver.cpp +82 -0
  683. simcoon-1.10.0/software/umat_externalM.cpp +138 -0
  684. simcoon-1.10.0/software/umat_externalT.cpp +147 -0
  685. simcoon-1.10.0/software/umat_singleM.cpp +131 -0
  686. simcoon-1.10.0/software/umat_singleM_multi.cpp +148 -0
  687. simcoon-1.10.0/software/umat_singleT.cpp +135 -0
  688. simcoon-1.10.0/software/usermat_singleM.cpp +511 -0
  689. simcoon-1.10.0/src/CMakeLists.txt +151 -0
  690. simcoon-1.10.0/src/Continuum_mechanics/Functions/constitutive.cpp +624 -0
  691. simcoon-1.10.0/src/Continuum_mechanics/Functions/contimech.cpp +565 -0
  692. simcoon-1.10.0/src/Continuum_mechanics/Functions/criteria.cpp +406 -0
  693. simcoon-1.10.0/src/Continuum_mechanics/Functions/damage.cpp +89 -0
  694. simcoon-1.10.0/src/Continuum_mechanics/Functions/derivatives.cpp +113 -0
  695. simcoon-1.10.0/src/Continuum_mechanics/Functions/func_N.cpp +108 -0
  696. simcoon-1.10.0/src/Continuum_mechanics/Functions/hyperelastic.cpp +591 -0
  697. simcoon-1.10.0/src/Continuum_mechanics/Functions/kinematics.cpp +257 -0
  698. simcoon-1.10.0/src/Continuum_mechanics/Functions/natural_basis.cpp +205 -0
  699. simcoon-1.10.0/src/Continuum_mechanics/Functions/objective_rates.cpp +764 -0
  700. simcoon-1.10.0/src/Continuum_mechanics/Functions/recovery_props.cpp +452 -0
  701. simcoon-1.10.0/src/Continuum_mechanics/Functions/stress.cpp +278 -0
  702. simcoon-1.10.0/src/Continuum_mechanics/Functions/transfer.cpp +323 -0
  703. simcoon-1.10.0/src/Continuum_mechanics/Homogenization/cylinder_multi.cpp +146 -0
  704. simcoon-1.10.0/src/Continuum_mechanics/Homogenization/ellipsoid_multi.cpp +235 -0
  705. simcoon-1.10.0/src/Continuum_mechanics/Homogenization/eshelby.cpp +471 -0
  706. simcoon-1.10.0/src/Continuum_mechanics/Homogenization/layer_multi.cpp +136 -0
  707. simcoon-1.10.0/src/Continuum_mechanics/Homogenization/phase_multi.cpp +147 -0
  708. simcoon-1.10.0/src/Continuum_mechanics/Material/ODF.cpp +196 -0
  709. simcoon-1.10.0/src/Continuum_mechanics/Material/ODF2Nphases.cpp +860 -0
  710. simcoon-1.10.0/src/Continuum_mechanics/Material/PDF.cpp +186 -0
  711. simcoon-1.10.0/src/Continuum_mechanics/Material/PDF2Nphases.cpp +116 -0
  712. simcoon-1.10.0/src/Continuum_mechanics/Material/crystallo.cpp +67 -0
  713. simcoon-1.10.0/src/Continuum_mechanics/Material/peak.cpp +231 -0
  714. simcoon-1.10.0/src/Continuum_mechanics/Material/read.cpp +161 -0
  715. simcoon-1.10.0/src/Continuum_mechanics/Material/variant.cpp +148 -0
  716. simcoon-1.10.0/src/Continuum_mechanics/Micromechanics/multiphase.cpp +205 -0
  717. simcoon-1.10.0/src/Continuum_mechanics/Micromechanics/schemes.cpp +567 -0
  718. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/Neo_hookean_comp.cpp +125 -0
  719. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/Neo_hookean_incomp.cpp +135 -0
  720. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/generic_hyper_invariants.cpp +228 -0
  721. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/generic_hyper_pstretch.cpp +167 -0
  722. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/hypoelastic_orthotropic.cpp +113 -0
  723. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/mooney_rivlin.cpp +135 -0
  724. simcoon-1.10.0/src/Continuum_mechanics/Umat/Finite/saint_venant.cpp +100 -0
  725. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Combined/Prony_Nfast_Plastic.cpp +399 -0
  726. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Damage/damage_LLD_0.cpp +663 -0
  727. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Damage/damage_weibull.cpp +247 -0
  728. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_isotropic.cpp +98 -0
  729. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_orthotropic.cpp +113 -0
  730. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Elasticity/elastic_transverse_isotropic.cpp +115 -0
  731. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/Ani_chaboche_ccp.cpp +387 -0
  732. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/DFA_chaboche_ccp.cpp +385 -0
  733. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/Generic_chaboche_ccp.cpp +531 -0
  734. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_chaboche_ccp.cpp +384 -0
  735. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_isoh.cpp +290 -0
  736. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/Hill_isoh_Nfast.cpp +323 -0
  737. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_chaboche_ccp.cpp +372 -0
  738. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_isotropic_ccp.cpp +287 -0
  739. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Plasticity/plastic_kin_iso_ccp.cpp +304 -0
  740. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/SMA/SMA_mono.cpp +470 -0
  741. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/SMA/SMA_mono_cubic.cpp +454 -0
  742. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/SMA/aniso_T.cpp +692 -0
  743. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/SMA/unified_T.cpp +676 -0
  744. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Prony_Nfast.cpp +307 -0
  745. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Zener_Nfast.cpp +309 -0
  746. simcoon-1.10.0/src/Continuum_mechanics/Umat/Mechanical/Viscoelasticity/Zener_fast.cpp +217 -0
  747. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_isotropic.cpp +149 -0
  748. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_orthotropic.cpp +165 -0
  749. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Elasticity/elastic_transverse_isotropic.cpp +188 -0
  750. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Plasticity/plastic_isotropic_ccp.cpp +337 -0
  751. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Plasticity/plastic_kin_iso_ccp.cpp +354 -0
  752. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/SMA/unified_T.cpp +733 -0
  753. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Prony_Nfast.cpp +387 -0
  754. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Zener_Nfast.cpp +393 -0
  755. simcoon-1.10.0/src/Continuum_mechanics/Umat/Thermomechanical/Viscoelasticity/Zener_fast.cpp +296 -0
  756. simcoon-1.10.0/src/Continuum_mechanics/Umat/fea_transfer.cpp +1044 -0
  757. simcoon-1.10.0/src/Continuum_mechanics/Umat/umat_L_elastic.cpp +188 -0
  758. simcoon-1.10.0/src/Continuum_mechanics/Umat/umat_smart.cpp +501 -0
  759. simcoon-1.10.0/src/Simulation/Geometry/cylinder.cpp +146 -0
  760. simcoon-1.10.0/src/Simulation/Geometry/ellipsoid.cpp +150 -0
  761. simcoon-1.10.0/src/Simulation/Geometry/geometry.cpp +106 -0
  762. simcoon-1.10.0/src/Simulation/Geometry/layer.cpp +134 -0
  763. simcoon-1.10.0/src/Simulation/Identification/constants.cpp +153 -0
  764. simcoon-1.10.0/src/Simulation/Identification/doe.cpp +188 -0
  765. simcoon-1.10.0/src/Simulation/Identification/generation.cpp +188 -0
  766. simcoon-1.10.0/src/Simulation/Identification/identification.cpp +320 -0
  767. simcoon-1.10.0/src/Simulation/Identification/individual.cpp +135 -0
  768. simcoon-1.10.0/src/Simulation/Identification/methods.cpp +133 -0
  769. simcoon-1.10.0/src/Simulation/Identification/opti_data.cpp +268 -0
  770. simcoon-1.10.0/src/Simulation/Identification/optimize.cpp +342 -0
  771. simcoon-1.10.0/src/Simulation/Identification/parameters.cpp +165 -0
  772. simcoon-1.10.0/src/Simulation/Identification/read.cpp +391 -0
  773. simcoon-1.10.0/src/Simulation/Identification/script.cpp +574 -0
  774. simcoon-1.10.0/src/Simulation/Maths/lagrange.cpp +130 -0
  775. simcoon-1.10.0/src/Simulation/Maths/num_solve.cpp +510 -0
  776. simcoon-1.10.0/src/Simulation/Maths/random.cpp +60 -0
  777. simcoon-1.10.0/src/Simulation/Maths/rotation.cpp +863 -0
  778. simcoon-1.10.0/src/Simulation/Maths/solve.cpp +107 -0
  779. simcoon-1.10.0/src/Simulation/Maths/stats.cpp +144 -0
  780. simcoon-1.10.0/src/Simulation/Phase/material_characteristics.cpp +230 -0
  781. simcoon-1.10.0/src/Simulation/Phase/output.cpp +53 -0
  782. simcoon-1.10.0/src/Simulation/Phase/phase_characteristics.cpp +945 -0
  783. simcoon-1.10.0/src/Simulation/Phase/read.cpp +394 -0
  784. simcoon-1.10.0/src/Simulation/Phase/state_variables.cpp +682 -0
  785. simcoon-1.10.0/src/Simulation/Phase/state_variables_M.cpp +350 -0
  786. simcoon-1.10.0/src/Simulation/Phase/state_variables_T.cpp +450 -0
  787. simcoon-1.10.0/src/Simulation/Phase/write.cpp +159 -0
  788. simcoon-1.10.0/src/Simulation/Solver/block.cpp +250 -0
  789. simcoon-1.10.0/src/Simulation/Solver/output.cpp +177 -0
  790. simcoon-1.10.0/src/Simulation/Solver/read.cpp +622 -0
  791. simcoon-1.10.0/src/Simulation/Solver/solver.cpp +1161 -0
  792. simcoon-1.10.0/src/Simulation/Solver/step.cpp +215 -0
  793. simcoon-1.10.0/src/Simulation/Solver/step_meca.cpp +579 -0
  794. simcoon-1.10.0/src/Simulation/Solver/step_thermomeca.cpp +581 -0
  795. simcoon-1.10.0/test/CMakeLists.txt +69 -0
  796. simcoon-1.10.0/test/Identification/Tidentification.cpp +111 -0
  797. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tconstitutive.cpp +318 -0
  798. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tcontimech.cpp +379 -0
  799. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tcriteria.cpp +265 -0
  800. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tdamage.cpp +157 -0
  801. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tderivatives.cpp +127 -0
  802. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Thyperelastic.cpp +307 -0
  803. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tkinematics.cpp +287 -0
  804. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tnatural_basis.cpp +162 -0
  805. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tobjective_rates.cpp +421 -0
  806. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Trecovery_props.cpp +362 -0
  807. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Tstress.cpp +198 -0
  808. simcoon-1.10.0/test/Libraries/Continuum_mechanics/Ttransfer.cpp +241 -0
  809. simcoon-1.10.0/test/Libraries/Homogenization/Teshelby.cpp +91 -0
  810. simcoon-1.10.0/test/Libraries/Maths/Tlagrange.cpp +138 -0
  811. simcoon-1.10.0/test/Libraries/Maths/Tnum_solve.cpp +149 -0
  812. simcoon-1.10.0/test/Libraries/Maths/Trotation.cpp +142 -0
  813. simcoon-1.10.0/test/Libraries/Maths/Tstats.cpp +220 -0
  814. simcoon-1.10.0/test/Libraries/Phase/Tphase_characteristics.cpp +139 -0
  815. simcoon-1.10.0/test/Libraries/Umat/TAba2sim.cpp +148 -0
  816. simcoon-1.10.0/test/Umats/ELISO/TELISO.cpp +92 -0
  817. simcoon-1.10.0/test/Umats/ELIST/TELIST.cpp +91 -0
  818. simcoon-1.10.0/test/Umats/ELORT/TELORT.cpp +91 -0
  819. simcoon-1.10.0/test/Umats/EPCHA/TEPCHA.cpp +91 -0
  820. simcoon-1.10.0/test/Umats/EPCHG/TEPCHG.cpp +91 -0
  821. simcoon-1.10.0/test/Umats/EPHAC/TEPHAC.cpp +91 -0
  822. simcoon-1.10.0/test/Umats/EPICP/TEPICP.cpp +91 -0
  823. simcoon-1.10.0/test/Umats/EPKCP/TEPKCP.cpp +91 -0
  824. simcoon-1.10.0/test/Umats/HYPER/THYPER.cpp +109 -0
  825. simcoon-1.10.0/test/Umats/LOG_int/TLOG_int.cpp +126 -0
  826. simcoon-1.10.0/test/Umats/MIMTN/TMIMTN.cpp +91 -0
  827. simcoon-1.10.0/test/Umats/MIPLN/TMIPLN.cpp +91 -0
  828. simcoon-1.10.0/test/Umats/UMEXT/TUMEXT.cpp +92 -0
  829. simcoon-1.10.0/testBin/Identification/comparison/Nlayers0.dat +37 -0
  830. simcoon-1.10.0/testBin/Identification/data/Nlayers0.dat +39 -0
  831. simcoon-1.10.0/testBin/Identification/data/constants.inp +3 -0
  832. simcoon-1.10.0/testBin/Identification/data/files_exp.inp +19 -0
  833. simcoon-1.10.0/testBin/Identification/data/files_num.inp +9 -0
  834. simcoon-1.10.0/testBin/Identification/data/files_weights.inp +41 -0
  835. simcoon-1.10.0/testBin/Identification/data/gen0.inp +5 -0
  836. simcoon-1.10.0/testBin/Identification/data/ident_control.inp +22 -0
  837. simcoon-1.10.0/testBin/Identification/data/ident_essentials.inp +6 -0
  838. simcoon-1.10.0/testBin/Identification/data/material.dat +13 -0
  839. simcoon-1.10.0/testBin/Identification/data/output.dat +16 -0
  840. simcoon-1.10.0/testBin/Identification/data/parameters.inp +6 -0
  841. simcoon-1.10.0/testBin/Identification/data/path_id_1.txt +29 -0
  842. simcoon-1.10.0/testBin/Identification/data/path_id_2.txt +31 -0
  843. simcoon-1.10.0/testBin/Identification/data/path_id_3.txt +30 -0
  844. simcoon-1.10.0/testBin/Identification/data/solver_control.inp +21 -0
  845. simcoon-1.10.0/testBin/Identification/data/solver_essentials.inp +4 -0
  846. simcoon-1.10.0/testBin/Identification/exp_data/results_0-90.dat +100 -0
  847. simcoon-1.10.0/testBin/Identification/exp_data/results_pm45.dat +100 -0
  848. simcoon-1.10.0/testBin/Identification/exp_data/results_pm675.dat +100 -0
  849. simcoon-1.10.0/testBin/Identification/id_params.txt +106 -0
  850. simcoon-1.10.0/testBin/Identification/keys/Nlayers0.dat +32 -0
  851. simcoon-1.10.0/testBin/Libraries/Continuum_mechanics/init.txt +1 -0
  852. simcoon-1.10.0/testBin/Libraries/Homogenization/init.txt +1 -0
  853. simcoon-1.10.0/testBin/Libraries/Maths/init.txt +1 -0
  854. simcoon-1.10.0/testBin/Libraries/Phase/data/Ncylinders0.dat +3 -0
  855. simcoon-1.10.0/testBin/Libraries/Phase/data/Ncylinders1.dat +3 -0
  856. simcoon-1.10.0/testBin/Libraries/Phase/data/Nellipsoids0.dat +3 -0
  857. simcoon-1.10.0/testBin/Libraries/Phase/data/Nellipsoids1.dat +3 -0
  858. simcoon-1.10.0/testBin/Libraries/Phase/data/Nlayers0.dat +3 -0
  859. simcoon-1.10.0/testBin/Libraries/Phase/data/Nlayers1.dat +3 -0
  860. simcoon-1.10.0/testBin/Libraries/Phase/data/Nphases0.dat +7 -0
  861. simcoon-1.10.0/testBin/Libraries/Phase/data/Nphases1.dat +3 -0
  862. simcoon-1.10.0/testBin/Libraries/Phase/data/Nsections0.dat +7 -0
  863. simcoon-1.10.0/testBin/Libraries/Phase/data/Nsections1.dat +26 -0
  864. simcoon-1.10.0/testBin/Libraries/Umat/data/Nellipsoids0.dat +3 -0
  865. simcoon-1.10.0/testBin/Libraries/Umat/data/material.dat +16 -0
  866. simcoon-1.10.0/testBin/Umats/ELISO/comparison/results_job_global-0.txt +200 -0
  867. simcoon-1.10.0/testBin/Umats/ELISO/comparison/results_job_local-0.txt +200 -0
  868. simcoon-1.10.0/testBin/Umats/ELISO/data/material.dat +14 -0
  869. simcoon-1.10.0/testBin/Umats/ELISO/data/output.dat +16 -0
  870. simcoon-1.10.0/testBin/Umats/ELISO/data/path.txt +44 -0
  871. simcoon-1.10.0/testBin/Umats/ELISO/data/solver_control.inp +21 -0
  872. simcoon-1.10.0/testBin/Umats/ELISO/data/solver_essentials.inp +4 -0
  873. simcoon-1.10.0/testBin/Umats/ELISO/plot-simple.py +54 -0
  874. simcoon-1.10.0/testBin/Umats/ELIST/comparison/results_job_global-0.txt +200 -0
  875. simcoon-1.10.0/testBin/Umats/ELIST/comparison/results_job_local-0.txt +200 -0
  876. simcoon-1.10.0/testBin/Umats/ELIST/data/material.dat +19 -0
  877. simcoon-1.10.0/testBin/Umats/ELIST/data/output.dat +16 -0
  878. simcoon-1.10.0/testBin/Umats/ELIST/data/path.txt +59 -0
  879. simcoon-1.10.0/testBin/Umats/ELIST/data/solver_control.inp +21 -0
  880. simcoon-1.10.0/testBin/Umats/ELIST/data/solver_essentials.inp +4 -0
  881. simcoon-1.10.0/testBin/Umats/ELIST/plot-simple.py +54 -0
  882. simcoon-1.10.0/testBin/Umats/ELORT/comparison/results_job_global-0.txt +200 -0
  883. simcoon-1.10.0/testBin/Umats/ELORT/comparison/results_job_local-0.txt +200 -0
  884. simcoon-1.10.0/testBin/Umats/ELORT/data/material.dat +23 -0
  885. simcoon-1.10.0/testBin/Umats/ELORT/data/output.dat +16 -0
  886. simcoon-1.10.0/testBin/Umats/ELORT/data/path.txt +59 -0
  887. simcoon-1.10.0/testBin/Umats/ELORT/data/solver_control.inp +21 -0
  888. simcoon-1.10.0/testBin/Umats/ELORT/data/solver_essentials.inp +4 -0
  889. simcoon-1.10.0/testBin/Umats/ELORT/plot-simple.py +54 -0
  890. simcoon-1.10.0/testBin/Umats/EPCHA/comparison/simul_1.txt +201 -0
  891. simcoon-1.10.0/testBin/Umats/EPCHA/data/material.dat +27 -0
  892. simcoon-1.10.0/testBin/Umats/EPCHA/data/output.dat +18 -0
  893. simcoon-1.10.0/testBin/Umats/EPCHA/data/path.txt +92 -0
  894. simcoon-1.10.0/testBin/Umats/EPCHA/data/solver_control.inp +21 -0
  895. simcoon-1.10.0/testBin/Umats/EPCHA/data/solver_essentials.inp +4 -0
  896. simcoon-1.10.0/testBin/Umats/EPCHA/data/tab_file_1.txt +201 -0
  897. simcoon-1.10.0/testBin/Umats/EPCHA/plot-simple.py +54 -0
  898. simcoon-1.10.0/testBin/Umats/EPCHG/comparison/simul_1.txt +501 -0
  899. simcoon-1.10.0/testBin/Umats/EPCHG/data/material.dat +36 -0
  900. simcoon-1.10.0/testBin/Umats/EPCHG/data/output.dat +18 -0
  901. simcoon-1.10.0/testBin/Umats/EPCHG/data/path.txt +92 -0
  902. simcoon-1.10.0/testBin/Umats/EPCHG/data/solver_control.inp +21 -0
  903. simcoon-1.10.0/testBin/Umats/EPCHG/data/solver_essentials.inp +4 -0
  904. simcoon-1.10.0/testBin/Umats/EPCHG/data/tab_file_1.txt +201 -0
  905. simcoon-1.10.0/testBin/Umats/EPCHG/plot-simple.py +54 -0
  906. simcoon-1.10.0/testBin/Umats/EPHAC/comparison/simul_1.txt +201 -0
  907. simcoon-1.10.0/testBin/Umats/EPHAC/data/material.dat +34 -0
  908. simcoon-1.10.0/testBin/Umats/EPHAC/data/output.dat +18 -0
  909. simcoon-1.10.0/testBin/Umats/EPHAC/data/path.txt +92 -0
  910. simcoon-1.10.0/testBin/Umats/EPHAC/data/solver_control.inp +21 -0
  911. simcoon-1.10.0/testBin/Umats/EPHAC/data/solver_essentials.inp +4 -0
  912. simcoon-1.10.0/testBin/Umats/EPHAC/data/tab_file_1.txt +201 -0
  913. simcoon-1.10.0/testBin/Umats/EPHAC/plot-simple.py +54 -0
  914. simcoon-1.10.0/testBin/Umats/EPICP/comparison/results_job_global-0.txt +3000 -0
  915. simcoon-1.10.0/testBin/Umats/EPICP/comparison/results_job_local-0.txt +3000 -0
  916. simcoon-1.10.0/testBin/Umats/EPICP/data/material.dat +17 -0
  917. simcoon-1.10.0/testBin/Umats/EPICP/data/output.dat +16 -0
  918. simcoon-1.10.0/testBin/Umats/EPICP/data/path.txt +57 -0
  919. simcoon-1.10.0/testBin/Umats/EPICP/data/solver_control.inp +21 -0
  920. simcoon-1.10.0/testBin/Umats/EPICP/data/solver_essentials.inp +4 -0
  921. simcoon-1.10.0/testBin/Umats/EPICP/plot-simple.py +54 -0
  922. simcoon-1.10.0/testBin/Umats/EPKCP/comparison/results_job_global-0.txt +3000 -0
  923. simcoon-1.10.0/testBin/Umats/EPKCP/comparison/results_job_local-0.txt +3000 -0
  924. simcoon-1.10.0/testBin/Umats/EPKCP/data/material.dat +18 -0
  925. simcoon-1.10.0/testBin/Umats/EPKCP/data/output.dat +16 -0
  926. simcoon-1.10.0/testBin/Umats/EPKCP/data/path.txt +57 -0
  927. simcoon-1.10.0/testBin/Umats/EPKCP/data/solver_control.inp +21 -0
  928. simcoon-1.10.0/testBin/Umats/EPKCP/data/solver_essentials.inp +4 -0
  929. simcoon-1.10.0/testBin/Umats/EPKCP/plot-simple.py +54 -0
  930. simcoon-1.10.0/testBin/Umats/HYPER/comparison/results_GT.dat +100 -0
  931. simcoon-1.10.0/testBin/Umats/HYPER/comparison/results_IS.dat +100 -0
  932. simcoon-1.10.0/testBin/Umats/HYPER/comparison/results_MR.dat +100 -0
  933. simcoon-1.10.0/testBin/Umats/HYPER/comparison/results_NH.dat +100 -0
  934. simcoon-1.10.0/testBin/Umats/HYPER/data/material_GT.dat +25 -0
  935. simcoon-1.10.0/testBin/Umats/HYPER/data/material_IS.dat +26 -0
  936. simcoon-1.10.0/testBin/Umats/HYPER/data/material_MR.dat +23 -0
  937. simcoon-1.10.0/testBin/Umats/HYPER/data/material_NH.dat +22 -0
  938. simcoon-1.10.0/testBin/Umats/HYPER/data/material_all.dat +188 -0
  939. simcoon-1.10.0/testBin/Umats/HYPER/data/output.dat +16 -0
  940. simcoon-1.10.0/testBin/Umats/HYPER/data/path.txt +106 -0
  941. simcoon-1.10.0/testBin/Umats/HYPER/data/solver_control.inp +21 -0
  942. simcoon-1.10.0/testBin/Umats/HYPER/data/solver_essentials.inp +4 -0
  943. simcoon-1.10.0/testBin/Umats/HYPER/plot-simple.py +54 -0
  944. simcoon-1.10.0/testBin/Umats/LOG_int/data/material.dat +14 -0
  945. simcoon-1.10.0/testBin/Umats/LOG_int/data/output.dat +15 -0
  946. simcoon-1.10.0/testBin/Umats/LOG_int/data/path.txt +63 -0
  947. simcoon-1.10.0/testBin/Umats/LOG_int/data/solver_control.inp +21 -0
  948. simcoon-1.10.0/testBin/Umats/LOG_int/data/solver_essentials.inp +4 -0
  949. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_global-0-0-0.txt +200 -0
  950. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_global-0-0-1.txt +200 -0
  951. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_global-0-0.txt +200 -0
  952. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_global-0-1.txt +200 -0
  953. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_global-0.txt +200 -0
  954. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_local-0-0-0.txt +200 -0
  955. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_local-0-0-1.txt +200 -0
  956. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_local-0-0.txt +200 -0
  957. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_local-0-1.txt +200 -0
  958. simcoon-1.10.0/testBin/Umats/MIMTN/comparison/results_job_local-0.txt +200 -0
  959. simcoon-1.10.0/testBin/Umats/MIMTN/data/Nellipsoids0.dat +3 -0
  960. simcoon-1.10.0/testBin/Umats/MIMTN/data/Nellipsoids1.dat +3 -0
  961. simcoon-1.10.0/testBin/Umats/MIMTN/data/material.dat +16 -0
  962. simcoon-1.10.0/testBin/Umats/MIMTN/data/output.dat +16 -0
  963. simcoon-1.10.0/testBin/Umats/MIMTN/data/path.txt +59 -0
  964. simcoon-1.10.0/testBin/Umats/MIMTN/data/solver_control.inp +21 -0
  965. simcoon-1.10.0/testBin/Umats/MIMTN/data/solver_essentials.inp +4 -0
  966. simcoon-1.10.0/testBin/Umats/MIMTN/plot-simple.py +54 -0
  967. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_global-0-0.txt +100 -0
  968. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_global-0-1.txt +100 -0
  969. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_global-0.txt +100 -0
  970. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_local-0-0.txt +100 -0
  971. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_local-0-1.txt +100 -0
  972. simcoon-1.10.0/testBin/Umats/MIPLN/comparison/results_job_local-0.txt +100 -0
  973. simcoon-1.10.0/testBin/Umats/MIPLN/data/Nlayers0.dat +39 -0
  974. simcoon-1.10.0/testBin/Umats/MIPLN/data/Nlayers1.dat +39 -0
  975. simcoon-1.10.0/testBin/Umats/MIPLN/data/material.dat +13 -0
  976. simcoon-1.10.0/testBin/Umats/MIPLN/data/output.dat +16 -0
  977. simcoon-1.10.0/testBin/Umats/MIPLN/data/path.txt +29 -0
  978. simcoon-1.10.0/testBin/Umats/MIPLN/data/solver_control.inp +21 -0
  979. simcoon-1.10.0/testBin/Umats/MIPLN/data/solver_essentials.inp +4 -0
  980. simcoon-1.10.0/testBin/Umats/MIPLN/plot-simple.py +54 -0
  981. simcoon-1.10.0/testBin/Umats/UMABA/comparison/results_job_global-0.txt +200 -0
  982. simcoon-1.10.0/testBin/Umats/UMABA/comparison/results_job_local-0.txt +200 -0
  983. simcoon-1.10.0/testBin/Umats/UMABA/data/material.dat +14 -0
  984. simcoon-1.10.0/testBin/Umats/UMABA/data/output.dat +16 -0
  985. simcoon-1.10.0/testBin/Umats/UMABA/data/path.txt +44 -0
  986. simcoon-1.10.0/testBin/Umats/UMABA/data/solver_control.inp +21 -0
  987. simcoon-1.10.0/testBin/Umats/UMABA/data/solver_essentials.inp +4 -0
  988. simcoon-1.10.0/testBin/Umats/UMABA/external/UMAT_ABAQUS_ELASTIC.f +308 -0
  989. simcoon-1.10.0/testBin/Umats/UMABA/external/umat_plugin_aba.cpp +122 -0
  990. simcoon-1.10.0/testBin/Umats/UMABA/plot-simple.py +54 -0
  991. simcoon-1.10.0/testBin/Umats/UMEXT/comparison/results_job_global-0.txt +200 -0
  992. simcoon-1.10.0/testBin/Umats/UMEXT/comparison/results_job_local-0.txt +200 -0
  993. simcoon-1.10.0/testBin/Umats/UMEXT/data/material.dat +14 -0
  994. simcoon-1.10.0/testBin/Umats/UMEXT/data/output.dat +16 -0
  995. simcoon-1.10.0/testBin/Umats/UMEXT/data/path.txt +44 -0
  996. simcoon-1.10.0/testBin/Umats/UMEXT/data/solver_control.inp +21 -0
  997. simcoon-1.10.0/testBin/Umats/UMEXT/data/solver_essentials.inp +4 -0
  998. simcoon-1.10.0/testBin/Umats/UMEXT/external/umat_plugin_ext.cpp +97 -0
  999. simcoon-1.10.0/testBin/Umats/UMEXT/plot-simple.py +54 -0
  1000. simcoon-1.10.0/testBin/Umats/UMEXT/results/results_job_global-0.txt +200 -0
  1001. simcoon-1.10.0/testBin/Umats/UMEXT/results/results_job_local-0.txt +200 -0
  1002. simcoon-1.10.0/test_extern/Umats/UMABA/TUMABA.cpp +92 -0
  1003. simcoon-1.10.0/tutorials/01A-Composites/data/E_exp.txt +6 -0
  1004. simcoon-1.10.0/tutorials/01A-Composites/data/Nellipsoids0.dat +6 -0
  1005. simcoon-1.10.0/tutorials/01A-Composites/data/parameters.inp +5 -0
  1006. simcoon-1.10.0/tutorials/01A-Composites/test.py +31 -0
  1007. simcoon-1.10.0/tutorials/01B-Composites/data/Nellipsoids0.dat +6 -0
  1008. simcoon-1.10.0/tutorials/01B-Composites/data/parameters.inp +5 -0
  1009. simcoon-1.10.0/tutorials/01B-Composites/test.py +77 -0
@@ -0,0 +1,139 @@
1
+ name: Documentation
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ branches: [ documentation, master ]
7
+ pull_request:
8
+ branches: [ documentation, master ]
9
+
10
+ env:
11
+ USE_CACHE: "true"
12
+
13
+ jobs:
14
+ build-doc:
15
+ runs-on: "ubuntu-latest"
16
+ defaults:
17
+ run:
18
+ shell: bash -el {0}
19
+
20
+ steps:
21
+ - uses: actions/checkout@v6
22
+ - uses: conda-incubator/setup-miniconda@v3
23
+ with:
24
+ miniconda-version: "latest"
25
+ activate-environment: simcoon-doc
26
+ python-version: "3.12"
27
+ environment-file: environment.yml
28
+ channels: conda-forge,set3mah
29
+
30
+ - name: Get Date
31
+ id: get-date
32
+ run: echo "today=$(/bin/date -u '+%Y%m%d')" >> $GITHUB_OUTPUT
33
+
34
+ - name: Cache Conda env
35
+ uses: actions/cache@v4
36
+ with:
37
+ path: ${{ env.CONDA }}/envs
38
+ key: conda-${{ runner.os }}--${{ runner.arch }}--${{ steps.get-date.outputs.today }}-${{ hashFiles('environment_doc.yml') }}-${{ env.CACHE_NUMBER }}
39
+ env:
40
+ # Increase this value to reset cache if environment.yml has not changed
41
+ CACHE_NUMBER: 0
42
+ id: cache
43
+
44
+ - name: Prepare conda environment
45
+ shell: bash -l {0}
46
+ run: |
47
+ conda config --env --add channels conda-forge
48
+ conda config --env --add channels set3mah
49
+ conda config --env --set channel_priority strict
50
+
51
+ - name: Update environment
52
+ run: |
53
+ conda env update -n simcoon-doc -f environment_doc.yml
54
+ if: steps.cache.outputs.cache-hit != 'true'
55
+
56
+ - name: Remove broken LaTeX from Conda env
57
+ run: |
58
+ # Remove or move conda-provided LaTeX binaries only if present in the
59
+ # conda environment. Move to a .bak instead of deleting to be safe.
60
+ for bin in latex mktexfmt tlmgr; do
61
+ if [ -x "${CONDA_PREFIX}/bin/${bin}" ]; then
62
+ echo "Removing ${CONDA_PREFIX}/bin/${bin}"
63
+ rm -f "${CONDA_PREFIX}/bin/${bin}" || true
64
+ fi
65
+ done
66
+ hash -r
67
+
68
+ - name: Install minimal TeX Live for Matplotlib
69
+ run: |
70
+ sudo apt-get update
71
+ sudo apt-get install -y \
72
+ texlive-latex-base \
73
+ texlive-latex-extra \
74
+ texlive-fonts-recommended \
75
+ dvipng \
76
+ cm-super \
77
+ doxygen
78
+
79
+ - name: Install Python package
80
+ shell: bash -l {0}
81
+ run: |
82
+ python -m pip install --upgrade pip
83
+ python -m pip install .
84
+
85
+ # - name: Cache Sphinx-Gallery Examples
86
+ # uses: actions/cache@v4
87
+ # if: env.USE_CACHE == 'true'
88
+ # with:
89
+ # path: examples/
90
+ # key: doc-examples-${{ hashFiles('python-setup/simcoon/__version__.py') }}
91
+
92
+ - name: Cache Sphinx build directory
93
+ uses: actions/cache@v4
94
+ if: env.USE_CACHE == 'true'
95
+ with:
96
+ path: docs/_build/
97
+ key: doc-build-${{ hashFiles('python-setup/simcoon/__version__.py') }}-${{ hashFiles('docs/Doxyfile') }}
98
+
99
+ - name: Generate Doxygen XML for C++ API
100
+ run: |
101
+ cd docs
102
+ mkdir -p _build/doxygen
103
+ doxygen Doxyfile
104
+ echo "Doxygen XML generated successfully"
105
+
106
+ - name: Build Documentation
107
+ run: |
108
+ cd docs
109
+ sphinx-build -b html . _build/html
110
+
111
+ - name: Upload HTML documentation
112
+ if: always()
113
+ uses: actions/upload-artifact@v4
114
+ with:
115
+ name: docs-build
116
+ path:
117
+ docs/_build/html/
118
+
119
+ # Deploy to simcoon-docs/main only for master branch
120
+ - name: Deploy HTML documentation (master branch)
121
+ if: ${{ github.ref == 'refs/heads/master' }}
122
+ uses: peaceiris/actions-gh-pages@v4
123
+ with:
124
+ personal_token: ${{ secrets.SIMCOON_DOC_TOKEN }}
125
+ external_repository: 3MAH/simcoon-docs
126
+ publish_branch: main
127
+ publish_dir: ./docs/_build/html
128
+ force_orphan: true
129
+
130
+ # Deploy to simcoon-docs/PRXX for each pull request
131
+ - name: Deploy HTML documentation (pull request)
132
+ if: ${{ github.event_name == 'pull_request' }}
133
+ uses: peaceiris/actions-gh-pages@v4
134
+ with:
135
+ personal_token: ${{ secrets.SIMCOON_DOC_TOKEN }}
136
+ external_repository: 3MAH/simcoon-docs
137
+ publish_branch: PR${{ github.event.pull_request.number }}
138
+ publish_dir: ./docs/_build/html
139
+ force_orphan: true
@@ -0,0 +1,74 @@
1
+ name: Python Build & Test
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ branches: [master]
7
+ pull_request:
8
+ branches: [master]
9
+
10
+ permissions:
11
+ contents: read
12
+ actions: read
13
+
14
+ jobs:
15
+ build-and-test:
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ include:
20
+ - os: ubuntu-latest
21
+ sys-package-install-command: |
22
+ sudo apt-get update
23
+ sudo apt-get install -y libarmadillo-dev ninja-build
24
+ - os: macos-latest
25
+ sys-package-install-command: brew install armadillo ninja
26
+ - os: windows-latest
27
+ sys-package-install-command: vcpkg install armadillo
28
+ setup-env-command: |
29
+ echo "CMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake" >> $env:GITHUB_ENV
30
+
31
+ runs-on: ${{ matrix.os }}
32
+ name: ${{ matrix.os }}
33
+
34
+ steps:
35
+ - uses: actions/checkout@v6
36
+
37
+ - name: Install system dependencies
38
+ if: matrix.sys-package-install-command != ''
39
+ run: ${{ matrix.sys-package-install-command }}
40
+
41
+ - name: Setup environment
42
+ if: matrix.setup-env-command
43
+ run: ${{ matrix.setup-env-command }}
44
+
45
+ - name: Setup uv
46
+ uses: astral-sh/setup-uv@v7
47
+
48
+ - name: Editable install
49
+ run: |
50
+ uv venv
51
+ uv pip install scikit-build-core pybind11 numpy
52
+ uv pip install -e .[dev]
53
+
54
+ - name: Verify cmake rebuild works (Unix)
55
+ if: runner.os != 'Windows'
56
+ run: |
57
+ touch src/Continuum_mechanics/Functions/constitutive.cpp
58
+ cmake --build build/cp*
59
+ # Verify import works after cmake rebuild (should not trigger another build)
60
+ uv run python -c "import simcoon" 2>&1 | tee import.log
61
+ if grep -q "Building CXX" import.log; then
62
+ echo "ERROR: Import should not trigger rebuild after cmake --build"
63
+ exit 1
64
+ fi
65
+
66
+ - name: Verify auto-rebuild on import (Unix)
67
+ if: runner.os != 'Windows'
68
+ run: |
69
+ touch src/Continuum_mechanics/Functions/contimech.cpp
70
+ uv run python -c "import simcoon" 2>&1 | tee rebuild.log
71
+ grep -q "Building CXX" rebuild.log || (echo "ERROR: Auto-rebuild did not trigger cmake" && exit 1)
72
+
73
+ - name: Run Python tests
74
+ run: uv run pytest
@@ -0,0 +1,91 @@
1
+ name: Build & Test
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ branches: [master]
7
+ pull_request:
8
+ branches: [master]
9
+
10
+ permissions:
11
+ contents: read
12
+ actions: read
13
+
14
+ jobs:
15
+ build-and-test:
16
+ name: ${{ matrix.os }}
17
+ runs-on: ${{ matrix.runner }}
18
+ strategy:
19
+ fail-fast: false
20
+ matrix:
21
+ include:
22
+ - os: Linux
23
+ runner: ubuntu-latest
24
+ environment-file: environment.yml
25
+ shell: bash -l {0}
26
+ - os: MacOS
27
+ runner: macos-latest
28
+ environment-file: environment_arm64.yml
29
+ shell: bash -l {0}
30
+ - os: Windows
31
+ runner: windows-latest
32
+ environment-file: environment_win.yml
33
+ shell: pwsh
34
+
35
+ defaults:
36
+ run:
37
+ shell: ${{ matrix.shell }}
38
+
39
+ steps:
40
+ - uses: actions/checkout@v6
41
+
42
+ - uses: conda-incubator/setup-miniconda@v3
43
+ with:
44
+ miniconda-version: "latest"
45
+ activate-environment: foo
46
+ python-version: "3.14"
47
+ environment-file: ${{ matrix.environment-file }}
48
+ channels: conda-forge,set3mah
49
+
50
+ - name: Prepare conda environment (Unix)
51
+ if: runner.os != 'Windows'
52
+ run: |
53
+ conda config --env --add channels conda-forge
54
+ conda config --env --add channels set3mah
55
+ conda config --env --set channel_priority strict
56
+
57
+ - name: Build (Unix)
58
+ if: runner.os != 'Windows'
59
+ run: |
60
+ cmake -S . -B build -G Ninja \
61
+ -DCMAKE_BUILD_TYPE=Release \
62
+ -DCMAKE_INCLUDE_PATH=$CONDA_PREFIX/include \
63
+ -DCMAKE_LIBRARY_PATH=$CONDA_PREFIX/lib \
64
+ -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \
65
+ -Wno-dev
66
+ cmake --build build
67
+
68
+ - name: Build (Windows)
69
+ if: runner.os == 'Windows'
70
+ run: |
71
+ cmake -S . -B build `
72
+ -DCMAKE_BUILD_TYPE=Release `
73
+ -DCMAKE_INSTALL_PREFIX="$env:CONDA_PREFIX/Library" `
74
+ -Wno-dev
75
+ cmake --build build --config Release
76
+
77
+ - name: Tests (Unix)
78
+ if: runner.os != 'Windows'
79
+ run: ctest --test-dir build --output-on-failure
80
+
81
+ - name: Tests (Windows)
82
+ if: runner.os == 'Windows'
83
+ run: ctest --test-dir build -C Release --output-on-failure -VV
84
+
85
+ - name: Upload test logs as artifact
86
+ if: always()
87
+ uses: actions/upload-artifact@v4
88
+ with:
89
+ name: test-logs-${{ matrix.os }}
90
+ path: build/Testing/Temporary/LastTest.log
91
+ retention-days: 7
@@ -0,0 +1,192 @@
1
+ name: Conda packaging
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ upload:
7
+ description: 'Upload packages to Anaconda'
8
+ type: boolean
9
+ default: true
10
+ workflow_call:
11
+ inputs:
12
+ upload:
13
+ description: 'Upload packages to Anaconda'
14
+ type: boolean
15
+ default: true
16
+ ref:
17
+ description: 'Git ref to checkout'
18
+ type: string
19
+ required: false
20
+ secrets:
21
+ ANACONDA_API_TOKEN:
22
+ required: false
23
+ pull_request:
24
+ paths:
25
+ - 'conda.recipe/**'
26
+ - '.github/workflows/conda-packaging.yml'
27
+ - 'environment*.yml'
28
+
29
+ permissions:
30
+ contents: read
31
+ actions: read
32
+
33
+ jobs:
34
+ build:
35
+ name: ${{ matrix.os }}
36
+ runs-on: ${{ matrix.runner }}
37
+ strategy:
38
+ fail-fast: false
39
+ matrix:
40
+ include:
41
+ - os: Linux
42
+ runner: ubuntu-latest
43
+ target-platform: linux-64
44
+ - os: MacOS
45
+ runner: macos-latest
46
+ target-platform: osx-arm64
47
+ - os: Windows
48
+ runner: windows-latest
49
+ target-platform: win-64
50
+
51
+ steps:
52
+ - uses: actions/checkout@v6
53
+ with:
54
+ ref: ${{ inputs.ref || github.ref }}
55
+
56
+ - uses: conda-incubator/setup-miniconda@v3
57
+ with:
58
+ miniforge-version: latest
59
+ activate-environment: packaging
60
+ auto-update-conda: true
61
+ conda-solver: libmamba
62
+
63
+ - name: Conda build
64
+ shell: bash -l {0}
65
+ run: |
66
+ conda install -y conda-build conda-index
67
+ conda build conda.recipe -c conda-forge -c set3mah --output-folder .
68
+ # Index output folder to make it a valid conda channel
69
+ python -m conda_index .
70
+
71
+ - name: Install and verify package structure (Unix)
72
+ if: runner.os != 'Windows'
73
+ shell: bash -l {0}
74
+ run: |
75
+ # Create fresh environment and install the built package using local channel
76
+ conda create -n test-install -y python simcoon -c file://$PWD -c conda-forge -c set3mah
77
+
78
+ # Get the test environment prefix
79
+ TEST_PREFIX=$(conda run -n test-install printenv CONDA_PREFIX)
80
+ echo "Test environment: $TEST_PREFIX"
81
+
82
+ echo "=== Verifying conda package structure ==="
83
+
84
+ # Check C++ library in $PREFIX/lib
85
+ echo "Checking libsimcoon in \$PREFIX/lib..."
86
+ if [ -f "$TEST_PREFIX/lib/libsimcoon.so" ] || [ -f "$TEST_PREFIX/lib/libsimcoon.dylib" ]; then
87
+ echo "✓ libsimcoon found in \$PREFIX/lib"
88
+ ls -la $TEST_PREFIX/lib/libsimcoon*
89
+ else
90
+ echo "✗ ERROR: libsimcoon NOT found in \$PREFIX/lib"
91
+ exit 1
92
+ fi
93
+
94
+ # Check headers in $PREFIX/include
95
+ echo "Checking headers in \$PREFIX/include/simcoon..."
96
+ if [ -d "$TEST_PREFIX/include/simcoon" ]; then
97
+ echo "✓ Headers found in \$PREFIX/include/simcoon"
98
+ ls $TEST_PREFIX/include/simcoon/ | head -5
99
+ else
100
+ echo "✗ ERROR: Headers NOT found in \$PREFIX/include/simcoon"
101
+ exit 1
102
+ fi
103
+
104
+ # Check CMake config
105
+ echo "Checking CMake config..."
106
+ if [ -f "$TEST_PREFIX/lib/cmake/simcoon/simcoonConfig.cmake" ]; then
107
+ echo "✓ CMake config found"
108
+ else
109
+ echo "✗ ERROR: CMake config NOT found"
110
+ exit 1
111
+ fi
112
+
113
+ # Check Python module in site-packages
114
+ echo "Checking Python module..."
115
+ SITE_PACKAGES=$(conda run -n test-install python -c "import sysconfig; print(sysconfig.get_path('purelib'))")
116
+ if [ -f "$SITE_PACKAGES/simcoon/_core.so" ] || ls "$SITE_PACKAGES/simcoon"/_core.cpython*.so 1>/dev/null 2>&1; then
117
+ echo "✓ _core.so found in site-packages/simcoon"
118
+ else
119
+ echo "✗ ERROR: _core.so NOT found in site-packages/simcoon"
120
+ ls -la $SITE_PACKAGES/simcoon/ || true
121
+ exit 1
122
+ fi
123
+
124
+ # Verify _core links to system libsimcoon (not bundled)
125
+ echo "Checking _core RPATH..."
126
+ SIMMIT_PATH=$(find $SITE_PACKAGES/simcoon -name "_core*.so" | head -1)
127
+ if [ -n "$SIMMIT_PATH" ]; then
128
+ if command -v readelf &> /dev/null; then
129
+ readelf -d "$SIMMIT_PATH" | grep -E "(RPATH|RUNPATH)" || echo "(no RPATH/RUNPATH found)"
130
+ elif command -v otool &> /dev/null; then
131
+ otool -l "$SIMMIT_PATH" | grep -A2 LC_RPATH || echo "(no LC_RPATH found)"
132
+ fi
133
+ fi
134
+
135
+ # Verify libsimcoon is NOT bundled in site-packages
136
+ echo "Checking libsimcoon is NOT bundled in site-packages..."
137
+ if [ -f "$SITE_PACKAGES/simcoon/libsimcoon.so" ] || [ -f "$SITE_PACKAGES/simcoon/libsimcoon.dylib" ]; then
138
+ echo "✗ WARNING: libsimcoon found in site-packages (should only be in \$PREFIX/lib)"
139
+ ls -la $SITE_PACKAGES/simcoon/libsimcoon* || true
140
+ else
141
+ echo "✓ libsimcoon correctly NOT bundled in site-packages"
142
+ fi
143
+
144
+ # Test import
145
+ echo "Testing Python import..."
146
+ conda run -n test-install python -c "import simcoon; import simcoon._core; print('✓ Import successful')"
147
+
148
+ - name: Install and verify package structure (Windows)
149
+ if: runner.os == 'Windows'
150
+ shell: pwsh
151
+ run: |
152
+ # Create fresh environment and install the built package using local channel
153
+ $localChannel = "file:///" + ($PWD.Path -replace '\\', '/')
154
+ conda create -n test-install -y python simcoon -c $localChannel -c conda-forge -c set3mah
155
+
156
+ # Get the test environment prefix
157
+ $envInfo = conda info --envs | Select-String "test-install"
158
+ $TEST_PREFIX = ($envInfo -split '\s+')[1]
159
+ Write-Host "Test environment: $TEST_PREFIX"
160
+
161
+ Write-Host "=== Verifying conda package structure ==="
162
+
163
+ # Check C++ library
164
+ Write-Host "Checking simcoon.dll..."
165
+ if (Test-Path "$TEST_PREFIX\Library\bin\simcoon.dll") {
166
+ Write-Host "✓ simcoon.dll found in Library/bin"
167
+ } else {
168
+ Write-Host "✗ ERROR: simcoon.dll NOT found"
169
+ exit 1
170
+ }
171
+
172
+ # Check headers
173
+ Write-Host "Checking headers..."
174
+ if (Test-Path "$TEST_PREFIX\Library\include\simcoon") {
175
+ Write-Host "✓ Headers found"
176
+ } else {
177
+ Write-Host "✗ ERROR: Headers NOT found"
178
+ exit 1
179
+ }
180
+
181
+ # Test import
182
+ Write-Host "Testing Python import..."
183
+ conda run -n test-install python -c "import simcoon; import simcoon._core; print('Import successful')"
184
+
185
+ - name: Upload to Anaconda
186
+ if: inputs.upload
187
+ shell: bash -l {0}
188
+ env:
189
+ ANACONDA_API_TOKEN: ${{ secrets.ANACONDA_API_TOKEN }}
190
+ run: |
191
+ conda install -y anaconda-client
192
+ anaconda upload ${{ matrix.target-platform }}/*.conda --force --no-progress
@@ -0,0 +1,22 @@
1
+ name: Release
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ push:
7
+ tags:
8
+ - 'v*'
9
+ workflow_dispatch:
10
+ inputs:
11
+ tag:
12
+ description: 'Tag to release (e.g., v1.0.0)'
13
+ required: true
14
+
15
+ jobs:
16
+ conda-packaging:
17
+ uses: ./.github/workflows/conda-packaging.yml
18
+ with:
19
+ upload: true
20
+ ref: ${{ inputs.tag || github.ref }}
21
+ secrets:
22
+ ANACONDA_API_TOKEN: ${{ secrets.ANACONDA_API_TOKEN }}
@@ -0,0 +1,144 @@
1
+ name: Build Wheels
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ publish_testpypi:
7
+ description: 'Publish to TestPyPI'
8
+ type: boolean
9
+ default: false
10
+ publish_pypi:
11
+ description: 'Publish to PyPI'
12
+ type: boolean
13
+ default: false
14
+ push:
15
+ tags:
16
+ - "v*"
17
+ pull_request:
18
+ branches: [master]
19
+ paths:
20
+ - ".github/workflows/wheels.yml"
21
+
22
+ permissions:
23
+ contents: read
24
+
25
+ concurrency:
26
+ group: ${{ github.workflow }}-${{ github.ref }}
27
+ cancel-in-progress: true
28
+
29
+ jobs:
30
+ # =========================================================================
31
+ # Build source distribution
32
+ # =========================================================================
33
+ build_sdist:
34
+ name: Build source distribution
35
+ runs-on: ubuntu-latest
36
+ steps:
37
+ - uses: actions/checkout@v6
38
+ with:
39
+ fetch-depth: 0
40
+
41
+ - uses: astral-sh/setup-uv@v7
42
+
43
+ - name: Build sdist
44
+ run: uvx --from build pyproject-build --sdist
45
+
46
+ - uses: actions/upload-artifact@v5
47
+ with:
48
+ name: cibw-sdist
49
+ path: dist/*.tar.gz
50
+
51
+ # =========================================================================
52
+ # Build wheels on all platforms
53
+ # =========================================================================
54
+ build_wheels:
55
+ name: Wheels on ${{ matrix.os }} (${{ matrix.cibw_archs }})
56
+ runs-on: ${{ matrix.os }}
57
+ strategy:
58
+ fail-fast: false
59
+ matrix:
60
+ include:
61
+ # Linux x86_64
62
+ - os: ubuntu-latest
63
+ cibw_archs: "x86_64"
64
+
65
+ # Linux aarch64 (native ARM runner)
66
+ - os: ubuntu-24.04-arm
67
+ cibw_archs: "aarch64"
68
+
69
+ # macOS Apple Silicon only
70
+ - os: macos-latest
71
+ cibw_archs: "arm64"
72
+
73
+ # Windows x64
74
+ - os: windows-latest
75
+ cibw_archs: "AMD64"
76
+
77
+ steps:
78
+ - uses: actions/checkout@v6
79
+ with:
80
+ fetch-depth: 0
81
+
82
+ - name: Build wheels
83
+ uses: pypa/cibuildwheel@v3.3
84
+ env:
85
+ CIBW_ARCHS: ${{ matrix.cibw_archs }}
86
+
87
+ - uses: actions/upload-artifact@v5
88
+ with:
89
+ name: cibw-wheels-${{ matrix.os }}-${{ matrix.cibw_archs }}
90
+ path: ./wheelhouse/*.whl
91
+
92
+ # =========================================================================
93
+ # Publish to TestPyPI (manual trigger)
94
+ # =========================================================================
95
+ publish_testpypi:
96
+ name: Publish to TestPyPI
97
+ needs: [build_sdist, build_wheels]
98
+ runs-on: ubuntu-latest
99
+ if: github.event_name == 'workflow_dispatch' && github.event.inputs.publish_testpypi == 'true'
100
+ environment:
101
+ name: testpypi
102
+ url: https://test.pypi.org/p/simcoon
103
+ permissions:
104
+ id-token: write
105
+
106
+ steps:
107
+ - uses: actions/download-artifact@v6
108
+ with:
109
+ pattern: cibw-*
110
+ path: dist
111
+ merge-multiple: true
112
+
113
+ - uses: pypa/gh-action-pypi-publish@release/v1
114
+ with:
115
+ repository-url: https://test.pypi.org/legacy/
116
+
117
+ # =========================================================================
118
+ # Publish to PyPI (release tags OR manual trigger)
119
+ # =========================================================================
120
+ publish_pypi:
121
+ name: Publish to PyPI
122
+ needs: [build_sdist, build_wheels]
123
+ runs-on: ubuntu-latest
124
+ # Logic: Run if it's a v* tag push OR if manually triggered via dispatch with checkbox
125
+ if: >-
126
+ (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')) ||
127
+ (github.event_name == 'workflow_dispatch' && github.event.inputs.publish_pypi == 'true')
128
+ environment:
129
+ name: pypi
130
+ url: https://pypi.org/p/simcoon
131
+ permissions:
132
+ id-token: write
133
+
134
+ steps:
135
+ - uses: actions/download-artifact@v6
136
+ with:
137
+ pattern: cibw-*
138
+ path: dist
139
+ merge-multiple: true
140
+
141
+ - name: Display artifacts
142
+ run: ls -la dist/
143
+
144
+ - uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,14 @@
1
+
2
+ .DS_Store
3
+
4
+ build/
5
+ build_coverage/
6
+ *.egg-info/
7
+ **/__pycache__/
8
+
9
+ *.dll
10
+ *.pyd
11
+ *.exp
12
+ *.lib
13
+ *.pdb
14
+ *.exe