LightSim2Grid 0.10.1.post1__tar.gz → 0.10.3__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 (581) hide show
  1. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3/LightSim2Grid.egg-info}/PKG-INFO +3 -2
  2. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LightSim2Grid.egg-info/SOURCES.txt +2 -0
  3. {lightsim2grid-0.10.1.post1/LightSim2Grid.egg-info → lightsim2grid-0.10.3}/PKG-INFO +3 -2
  4. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/__init__.py +1 -1
  5. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/lightSimBackend.py +190 -102
  6. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/setup.py +5 -3
  7. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/BaseConstants.cpp +2 -0
  8. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/BaseConstants.h +2 -0
  9. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/GridModel.cpp +82 -29
  10. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/GridModel.h +20 -12
  11. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/DCLineContainer.h +2 -2
  12. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/GeneratorContainer.cpp +65 -166
  13. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/GeneratorContainer.h +71 -84
  14. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/GenericContainer.cpp +7 -7
  15. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/GenericContainer.h +3 -3
  16. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/LineContainer.cpp +4 -4
  17. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/LineContainer.h +4 -4
  18. lightsim2grid-0.10.3/src/element_container/LoadContainer.cpp +50 -0
  19. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/LoadContainer.h +26 -87
  20. lightsim2grid-0.10.3/src/element_container/OneSideContainer.cpp +116 -0
  21. lightsim2grid-0.10.3/src/element_container/OneSideContainer.h +312 -0
  22. lightsim2grid-0.10.3/src/element_container/SGenContainer.cpp +88 -0
  23. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/SGenContainer.h +19 -62
  24. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/ShuntContainer.cpp +9 -107
  25. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/ShuntContainer.h +35 -68
  26. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/TrafoContainer.cpp +4 -4
  27. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/TrafoContainer.h +4 -4
  28. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/main.cpp +7 -0
  29. lightsim2grid-0.10.1.post1/src/element_container/LoadContainer.cpp +0 -166
  30. lightsim2grid-0.10.1.post1/src/element_container/SGenContainer.cpp +0 -209
  31. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/AUTHORS.txt +0 -0
  32. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LICENSE +0 -0
  33. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LICENSE.md +0 -0
  34. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LightSim2Grid.egg-info/dependency_links.txt +0 -0
  35. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LightSim2Grid.egg-info/not-zip-safe +0 -0
  36. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LightSim2Grid.egg-info/requires.txt +0 -0
  37. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/LightSim2Grid.egg-info/top_level.txt +0 -0
  38. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/MANIFEST.in +0 -0
  39. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/README.md +0 -0
  40. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/.hgeol +0 -0
  41. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/CMakeLists.txt +0 -0
  42. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.APACHE +0 -0
  43. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.BSD +0 -0
  44. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.GPL +0 -0
  45. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.LGPL +0 -0
  46. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.MINPACK +0 -0
  47. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.MPL2 +0 -0
  48. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/COPYING.README +0 -0
  49. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/CTestConfig.cmake +0 -0
  50. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/CTestCustom.cmake.in +0 -0
  51. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Cholesky +0 -0
  52. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/CholmodSupport +0 -0
  53. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Core +0 -0
  54. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Dense +0 -0
  55. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Eigen +0 -0
  56. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Eigenvalues +0 -0
  57. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Geometry +0 -0
  58. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Householder +0 -0
  59. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/IterativeLinearSolvers +0 -0
  60. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Jacobi +0 -0
  61. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/KLUSupport +0 -0
  62. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/LU +0 -0
  63. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/MetisSupport +0 -0
  64. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/OrderingMethods +0 -0
  65. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/PaStiXSupport +0 -0
  66. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/PardisoSupport +0 -0
  67. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/QR +0 -0
  68. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/QtAlignedMalloc +0 -0
  69. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SPQRSupport +0 -0
  70. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SVD +0 -0
  71. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/Sparse +0 -0
  72. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SparseCholesky +0 -0
  73. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SparseCore +0 -0
  74. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SparseLU +0 -0
  75. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SparseQR +0 -0
  76. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/StdDeque +0 -0
  77. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/StdList +0 -0
  78. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/StdVector +0 -0
  79. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/SuperLUSupport +0 -0
  80. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/UmfPackSupport +0 -0
  81. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Cholesky/LDLT.h +0 -0
  82. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Cholesky/LLT.h +0 -0
  83. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +0 -0
  84. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +0 -0
  85. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ArithmeticSequence.h +0 -0
  86. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Array.h +0 -0
  87. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ArrayBase.h +0 -0
  88. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ArrayWrapper.h +0 -0
  89. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Assign.h +0 -0
  90. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/AssignEvaluator.h +0 -0
  91. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Assign_MKL.h +0 -0
  92. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/BandMatrix.h +0 -0
  93. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Block.h +0 -0
  94. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/BooleanRedux.h +0 -0
  95. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CommaInitializer.h +0 -0
  96. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ConditionEstimator.h +0 -0
  97. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CoreEvaluators.h +0 -0
  98. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CoreIterators.h +0 -0
  99. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CwiseBinaryOp.h +0 -0
  100. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CwiseNullaryOp.h +0 -0
  101. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CwiseTernaryOp.h +0 -0
  102. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CwiseUnaryOp.h +0 -0
  103. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/CwiseUnaryView.h +0 -0
  104. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/DenseBase.h +0 -0
  105. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/DenseCoeffsBase.h +0 -0
  106. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/DenseStorage.h +0 -0
  107. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Diagonal.h +0 -0
  108. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/DiagonalMatrix.h +0 -0
  109. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/DiagonalProduct.h +0 -0
  110. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Dot.h +0 -0
  111. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/EigenBase.h +0 -0
  112. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ForceAlignedAccess.h +0 -0
  113. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Fuzzy.h +0 -0
  114. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/GeneralProduct.h +0 -0
  115. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/GenericPacketMath.h +0 -0
  116. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/GlobalFunctions.h +0 -0
  117. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/IO.h +0 -0
  118. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/IndexedView.h +0 -0
  119. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Inverse.h +0 -0
  120. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Map.h +0 -0
  121. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/MapBase.h +0 -0
  122. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/MathFunctions.h +0 -0
  123. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/MathFunctionsImpl.h +0 -0
  124. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Matrix.h +0 -0
  125. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/MatrixBase.h +0 -0
  126. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/NestByValue.h +0 -0
  127. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/NoAlias.h +0 -0
  128. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/NumTraits.h +0 -0
  129. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/PartialReduxEvaluator.h +0 -0
  130. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/PermutationMatrix.h +0 -0
  131. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/PlainObjectBase.h +0 -0
  132. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Product.h +0 -0
  133. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ProductEvaluators.h +0 -0
  134. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Random.h +0 -0
  135. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Redux.h +0 -0
  136. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Ref.h +0 -0
  137. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Replicate.h +0 -0
  138. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Reshaped.h +0 -0
  139. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/ReturnByValue.h +0 -0
  140. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Reverse.h +0 -0
  141. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Select.h +0 -0
  142. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/SelfAdjointView.h +0 -0
  143. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/SelfCwiseBinaryOp.h +0 -0
  144. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Solve.h +0 -0
  145. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/SolveTriangular.h +0 -0
  146. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/SolverBase.h +0 -0
  147. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/StableNorm.h +0 -0
  148. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/StlIterators.h +0 -0
  149. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Stride.h +0 -0
  150. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Swap.h +0 -0
  151. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Transpose.h +0 -0
  152. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Transpositions.h +0 -0
  153. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/TriangularMatrix.h +0 -0
  154. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/VectorBlock.h +0 -0
  155. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/VectorwiseOp.h +0 -0
  156. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/Visitor.h +0 -0
  157. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX/Complex.h +0 -0
  158. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX/MathFunctions.h +0 -0
  159. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX/PacketMath.h +0 -0
  160. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX/TypeCasting.h +0 -0
  161. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX512/Complex.h +0 -0
  162. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX512/MathFunctions.h +0 -0
  163. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX512/PacketMath.h +0 -0
  164. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AVX512/TypeCasting.h +0 -0
  165. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/Complex.h +0 -0
  166. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/MathFunctions.h +0 -0
  167. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +0 -0
  168. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +0 -0
  169. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +0 -0
  170. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h +0 -0
  171. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/CUDA/Complex.h +0 -0
  172. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/BFloat16.h +0 -0
  173. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/ConjHelper.h +0 -0
  174. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +0 -0
  175. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +0 -0
  176. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/Half.h +0 -0
  177. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/Settings.h +0 -0
  178. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/Default/TypeCasting.h +0 -0
  179. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/GPU/MathFunctions.h +0 -0
  180. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/GPU/PacketMath.h +0 -0
  181. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/GPU/TypeCasting.h +0 -0
  182. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/HIP/hcc/math_constants.h +0 -0
  183. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/MSA/Complex.h +0 -0
  184. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/MSA/MathFunctions.h +0 -0
  185. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/MSA/PacketMath.h +0 -0
  186. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/NEON/Complex.h +0 -0
  187. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +0 -0
  188. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/NEON/MathFunctions.h +0 -0
  189. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/NEON/PacketMath.h +0 -0
  190. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/NEON/TypeCasting.h +0 -0
  191. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SSE/Complex.h +0 -0
  192. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SSE/MathFunctions.h +0 -0
  193. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SSE/PacketMath.h +0 -0
  194. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SSE/TypeCasting.h +0 -0
  195. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SVE/MathFunctions.h +0 -0
  196. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SVE/PacketMath.h +0 -0
  197. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SVE/TypeCasting.h +0 -0
  198. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SYCL/InteropHeaders.h +0 -0
  199. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SYCL/MathFunctions.h +0 -0
  200. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SYCL/PacketMath.h +0 -0
  201. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +0 -0
  202. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/SYCL/TypeCasting.h +0 -0
  203. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/ZVector/Complex.h +0 -0
  204. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/ZVector/MathFunctions.h +0 -0
  205. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/arch/ZVector/PacketMath.h +0 -0
  206. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/AssignmentFunctors.h +0 -0
  207. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/BinaryFunctors.h +0 -0
  208. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/NullaryFunctors.h +0 -0
  209. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/StlFunctors.h +0 -0
  210. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/TernaryFunctors.h +0 -0
  211. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/functors/UnaryFunctors.h +0 -0
  212. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralBlockPanelKernel.h +0 -0
  213. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixMatrix.h +0 -0
  214. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +0 -0
  215. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +0 -0
  216. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +0 -0
  217. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixVector.h +0 -0
  218. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +0 -0
  219. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/Parallelizer.h +0 -0
  220. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +0 -0
  221. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +0 -0
  222. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointMatrixVector.h +0 -0
  223. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +0 -0
  224. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointProduct.h +0 -0
  225. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/SelfadjointRank2Update.h +0 -0
  226. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularMatrixMatrix.h +0 -0
  227. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +0 -0
  228. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularMatrixVector.h +0 -0
  229. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +0 -0
  230. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularSolverMatrix.h +0 -0
  231. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +0 -0
  232. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/products/TriangularSolverVector.h +0 -0
  233. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/BlasUtil.h +0 -0
  234. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/ConfigureVectorization.h +0 -0
  235. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/Constants.h +0 -0
  236. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/DisableStupidWarnings.h +0 -0
  237. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/ForwardDeclarations.h +0 -0
  238. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/IndexedViewHelper.h +0 -0
  239. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/IntegralConstant.h +0 -0
  240. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/MKL_support.h +0 -0
  241. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/Macros.h +0 -0
  242. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/Memory.h +0 -0
  243. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/Meta.h +0 -0
  244. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/NonMPL2.h +0 -0
  245. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/ReenableStupidWarnings.h +0 -0
  246. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/ReshapedHelper.h +0 -0
  247. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/StaticAssert.h +0 -0
  248. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/SymbolicIndex.h +0 -0
  249. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Core/util/XprHelper.h +0 -0
  250. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +0 -0
  251. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +0 -0
  252. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +0 -0
  253. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/EigenSolver.h +0 -0
  254. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +0 -0
  255. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +0 -0
  256. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +0 -0
  257. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +0 -0
  258. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/RealQZ.h +0 -0
  259. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/RealSchur.h +0 -0
  260. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +0 -0
  261. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +0 -0
  262. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +0 -0
  263. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +0 -0
  264. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/AlignedBox.h +0 -0
  265. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/AngleAxis.h +0 -0
  266. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/EulerAngles.h +0 -0
  267. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Homogeneous.h +0 -0
  268. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Hyperplane.h +0 -0
  269. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/OrthoMethods.h +0 -0
  270. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/ParametrizedLine.h +0 -0
  271. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Quaternion.h +0 -0
  272. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Rotation2D.h +0 -0
  273. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/RotationBase.h +0 -0
  274. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Scaling.h +0 -0
  275. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Transform.h +0 -0
  276. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Translation.h +0 -0
  277. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/Umeyama.h +0 -0
  278. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +0 -0
  279. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Householder/BlockHouseholder.h +0 -0
  280. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Householder/Householder.h +0 -0
  281. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Householder/HouseholderSequence.h +0 -0
  282. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +0 -0
  283. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +0 -0
  284. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +0 -0
  285. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +0 -0
  286. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +0 -0
  287. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +0 -0
  288. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +0 -0
  289. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +0 -0
  290. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/Jacobi/Jacobi.h +0 -0
  291. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/KLUSupport/KLUSupport.h +0 -0
  292. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/Determinant.h +0 -0
  293. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/FullPivLU.h +0 -0
  294. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/InverseImpl.h +0 -0
  295. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/PartialPivLU.h +0 -0
  296. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +0 -0
  297. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/LU/arch/InverseSize4.h +0 -0
  298. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/MetisSupport/MetisSupport.h +0 -0
  299. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/OrderingMethods/Amd.h +0 -0
  300. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +0 -0
  301. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/OrderingMethods/Ordering.h +0 -0
  302. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +0 -0
  303. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +0 -0
  304. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/ColPivHouseholderQR.h +0 -0
  305. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +0 -0
  306. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +0 -0
  307. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/FullPivHouseholderQR.h +0 -0
  308. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/HouseholderQR.h +0 -0
  309. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +0 -0
  310. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +0 -0
  311. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SVD/BDCSVD.h +0 -0
  312. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SVD/JacobiSVD.h +0 -0
  313. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +0 -0
  314. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SVD/SVDBase.h +0 -0
  315. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SVD/UpperBidiagonalization.h +0 -0
  316. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +0 -0
  317. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +0 -0
  318. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/AmbiVector.h +0 -0
  319. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/CompressedStorage.h +0 -0
  320. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +0 -0
  321. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +0 -0
  322. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseAssign.h +0 -0
  323. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseBlock.h +0 -0
  324. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseColEtree.h +0 -0
  325. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +0 -0
  326. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +0 -0
  327. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +0 -0
  328. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +0 -0
  329. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +0 -0
  330. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseDot.h +0 -0
  331. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseFuzzy.h +0 -0
  332. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseMap.h +0 -0
  333. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseMatrix.h +0 -0
  334. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +0 -0
  335. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparsePermutation.h +0 -0
  336. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseProduct.h +0 -0
  337. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseRedux.h +0 -0
  338. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseRef.h +0 -0
  339. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +0 -0
  340. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseSolverBase.h +0 -0
  341. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +0 -0
  342. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseTranspose.h +0 -0
  343. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseTriangularView.h +0 -0
  344. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseUtil.h +0 -0
  345. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseVector.h +0 -0
  346. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/SparseView.h +0 -0
  347. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseCore/TriangularSolver.h +0 -0
  348. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU.h +0 -0
  349. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLUImpl.h +0 -0
  350. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +0 -0
  351. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +0 -0
  352. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +0 -0
  353. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +0 -0
  354. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +0 -0
  355. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +0 -0
  356. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +0 -0
  357. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +0 -0
  358. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +0 -0
  359. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +0 -0
  360. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +0 -0
  361. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +0 -0
  362. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +0 -0
  363. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +0 -0
  364. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +0 -0
  365. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SparseQR/SparseQR.h +0 -0
  366. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/StlSupport/StdDeque.h +0 -0
  367. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/StlSupport/StdList.h +0 -0
  368. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/StlSupport/StdVector.h +0 -0
  369. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/StlSupport/details.h +0 -0
  370. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +0 -0
  371. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +0 -0
  372. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/Image.h +0 -0
  373. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/Kernel.h +0 -0
  374. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/RealSvd2x2.h +0 -0
  375. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/blas.h +0 -0
  376. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/lapack.h +0 -0
  377. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/lapacke.h +0 -0
  378. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/misc/lapacke_mangling.h +0 -0
  379. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +0 -0
  380. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +0 -0
  381. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/BlockMethods.h +0 -0
  382. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +0 -0
  383. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +0 -0
  384. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/IndexedViewMethods.h +0 -0
  385. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +0 -0
  386. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +0 -0
  387. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/Eigen/src/plugins/ReshapedMethods.h +0 -0
  388. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/INSTALL +0 -0
  389. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/README.md +0 -0
  390. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/BandTriangularSolver.h +0 -0
  391. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/CMakeLists.txt +0 -0
  392. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/GeneralRank1Update.h +0 -0
  393. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/PackedSelfadjointProduct.h +0 -0
  394. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/PackedTriangularMatrixVector.h +0 -0
  395. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/PackedTriangularSolverVector.h +0 -0
  396. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/README.txt +0 -0
  397. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/Rank2Update.h +0 -0
  398. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/common.h +0 -0
  399. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/complex_double.cpp +0 -0
  400. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/complex_single.cpp +0 -0
  401. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/double.cpp +0 -0
  402. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/chbmv.c +0 -0
  403. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/chpmv.c +0 -0
  404. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/complexdots.c +0 -0
  405. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/ctbmv.c +0 -0
  406. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/d_cnjg.c +0 -0
  407. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/datatypes.h +0 -0
  408. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/drotm.c +0 -0
  409. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/drotmg.c +0 -0
  410. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/dsbmv.c +0 -0
  411. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/dspmv.c +0 -0
  412. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/dtbmv.c +0 -0
  413. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/lsame.c +0 -0
  414. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/r_cnjg.c +0 -0
  415. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/srotm.c +0 -0
  416. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/srotmg.c +0 -0
  417. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/ssbmv.c +0 -0
  418. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/sspmv.c +0 -0
  419. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/stbmv.c +0 -0
  420. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/zhbmv.c +0 -0
  421. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/zhpmv.c +0 -0
  422. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/f2c/ztbmv.c +0 -0
  423. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/fortran/complexdots.f +0 -0
  424. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level1_cplx_impl.h +0 -0
  425. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level1_impl.h +0 -0
  426. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level1_real_impl.h +0 -0
  427. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level2_cplx_impl.h +0 -0
  428. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level2_impl.h +0 -0
  429. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level2_real_impl.h +0 -0
  430. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/level3_impl.h +0 -0
  431. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/single.cpp +0 -0
  432. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/CMakeLists.txt +0 -0
  433. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/cblat1.f +0 -0
  434. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/cblat2.dat +0 -0
  435. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/cblat2.f +0 -0
  436. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/cblat3.dat +0 -0
  437. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/cblat3.f +0 -0
  438. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/dblat1.f +0 -0
  439. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/dblat2.dat +0 -0
  440. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/dblat2.f +0 -0
  441. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/dblat3.dat +0 -0
  442. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/dblat3.f +0 -0
  443. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/runblastest.sh +0 -0
  444. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/sblat1.f +0 -0
  445. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/sblat2.dat +0 -0
  446. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/sblat2.f +0 -0
  447. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/sblat3.dat +0 -0
  448. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/sblat3.f +0 -0
  449. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/zblat1.f +0 -0
  450. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/zblat2.dat +0 -0
  451. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/zblat2.f +0 -0
  452. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/zblat3.dat +0 -0
  453. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/testing/zblat3.f +0 -0
  454. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/blas/xerbla.cpp +0 -0
  455. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/eigen3.pc.in +0 -0
  456. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/CMakeLists.txt +0 -0
  457. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/cholesky.cpp +0 -0
  458. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/clacgv.f +0 -0
  459. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/cladiv.f +0 -0
  460. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/clarf.f +0 -0
  461. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/clarfb.f +0 -0
  462. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/clarfg.f +0 -0
  463. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/clarft.f +0 -0
  464. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/complex_double.cpp +0 -0
  465. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/complex_single.cpp +0 -0
  466. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dladiv.f +0 -0
  467. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlamch.f +0 -0
  468. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlapy2.f +0 -0
  469. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlapy3.f +0 -0
  470. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlarf.f +0 -0
  471. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlarfb.f +0 -0
  472. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlarfg.f +0 -0
  473. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dlarft.f +0 -0
  474. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/double.cpp +0 -0
  475. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/dsecnd_NONE.f +0 -0
  476. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/eigenvalues.cpp +0 -0
  477. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilaclc.f +0 -0
  478. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilaclr.f +0 -0
  479. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/iladlc.f +0 -0
  480. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/iladlr.f +0 -0
  481. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilaslc.f +0 -0
  482. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilaslr.f +0 -0
  483. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilazlc.f +0 -0
  484. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/ilazlr.f +0 -0
  485. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/lapack_common.h +0 -0
  486. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/lu.cpp +0 -0
  487. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/second_NONE.f +0 -0
  488. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/single.cpp +0 -0
  489. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/sladiv.f +0 -0
  490. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slamch.f +0 -0
  491. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slapy2.f +0 -0
  492. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slapy3.f +0 -0
  493. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slarf.f +0 -0
  494. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slarfb.f +0 -0
  495. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slarfg.f +0 -0
  496. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/slarft.f +0 -0
  497. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/svd.cpp +0 -0
  498. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zlacgv.f +0 -0
  499. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zladiv.f +0 -0
  500. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zlarf.f +0 -0
  501. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zlarfb.f +0 -0
  502. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zlarfg.f +0 -0
  503. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/lapack/zlarft.f +0 -0
  504. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/eigen/signature_of_eigen3_matrix_library +0 -0
  505. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/_utils/__init__.py +0 -0
  506. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/compilation_options/__init__.py +0 -0
  507. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/contingencyAnalysis.py +0 -0
  508. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/elements/__init__.py +0 -0
  509. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/__init__.py +0 -0
  510. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/__init__.py +0 -0
  511. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_dc_line.py +0 -0
  512. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_gen.py +0 -0
  513. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_line.py +0 -0
  514. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_load.py +0 -0
  515. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_sgen.py +0 -0
  516. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_shunt.py +0 -0
  517. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_slack.py +0 -0
  518. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_storage.py +0 -0
  519. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_add_trafo.py +0 -0
  520. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_aux_check_legit.py +0 -0
  521. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_my_const.py +0 -0
  522. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/_pp_bus_to_ls_bus.py +0 -0
  523. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pandapower/initGridModel.py +0 -0
  524. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pypowsybl/__init__.py +0 -0
  525. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/gridmodel/from_pypowsybl/_from_pypowsybl.py +0 -0
  526. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/newtonpf/__init__.py +0 -0
  527. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/pandapower_compat/__init__.py +0 -0
  528. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/pandapower_compat/dcpf/__init__.py +0 -0
  529. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/pandapower_compat/dcpf/_dcpf.py +0 -0
  530. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/pandapower_compat/newtonpf/__init__.py +0 -0
  531. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/pandapower_compat/newtonpf/_newtonpf.py +0 -0
  532. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/physical_law_checker.py +0 -0
  533. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/rewards/__init__.py +0 -0
  534. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/rewards/n1ContingencyReward.py +0 -0
  535. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/securityAnalysis.py +0 -0
  536. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/solver/__init__.py +0 -0
  537. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/lightsim2grid/timeSerie.py +0 -0
  538. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/pyproject.toml +0 -0
  539. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/setup.cfg +0 -0
  540. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/ChooseSolver.cpp +0 -0
  541. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/ChooseSolver.h +0 -0
  542. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/CustTimer.h +0 -0
  543. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/DataConverter.cpp +0 -0
  544. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/DataConverter.h +0 -0
  545. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/IIDMConverter.cpp +0 -0
  546. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/IIDMConverter.h +0 -0
  547. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/Solvers.cpp +0 -0
  548. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/Solvers.h +0 -0
  549. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/Utils.cpp +0 -0
  550. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/Utils.h +0 -0
  551. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/BaseBatchSolverSynch.cpp +0 -0
  552. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/BaseBatchSolverSynch.h +0 -0
  553. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/ContingencyAnalysis.cpp +0 -0
  554. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/ContingencyAnalysis.h +0 -0
  555. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/TimeSeries.cpp +0 -0
  556. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/batch_algorithm/TimeSeries.h +0 -0
  557. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/element_container/DCLineContainer.cpp +0 -0
  558. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/help_fun_msg.cpp +0 -0
  559. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/help_fun_msg.h +0 -0
  560. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/CKTSOSolver.cpp +0 -0
  561. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/CKTSOSolver.h +0 -0
  562. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/KLUSolver.cpp +0 -0
  563. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/KLUSolver.h +0 -0
  564. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/NICSLUSolver.cpp +0 -0
  565. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/NICSLUSolver.h +0 -0
  566. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/SparseLUSolver.cpp +0 -0
  567. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/linear_solvers/SparseLUSolver.h +0 -0
  568. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseAlgo.cpp +0 -0
  569. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseAlgo.h +0 -0
  570. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseDCAlgo.h +0 -0
  571. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseDCAlgo.tpp +0 -0
  572. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseFDPFAlgo.h +0 -0
  573. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseFDPFAlgo.tpp +0 -0
  574. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseNRAlgo.h +0 -0
  575. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseNRAlgo.tpp +0 -0
  576. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseNRSingleSlackAlgo.h +0 -0
  577. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/BaseNRSingleSlackAlgo.tpp +0 -0
  578. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/GaussSeidelAlgo.cpp +0 -0
  579. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/GaussSeidelAlgo.h +0 -0
  580. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/GaussSeidelSynchAlgo.cpp +0 -0
  581. {lightsim2grid-0.10.1.post1 → lightsim2grid-0.10.3}/src/powerflow_algorithm/GaussSeidelSynchAlgo.h +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: LightSim2Grid
3
- Version: 0.10.1.post1
3
+ Version: 0.10.3
4
4
  Summary: LightSim2Grid implements a c++ backend targeting the Grid2Op platform.
5
5
  Home-page: https://github.com/grid2op/lightsim2grid/
6
6
  Author: Benjamin Donnot
@@ -64,6 +64,7 @@ Dynamic: description-content-type
64
64
  Dynamic: home-page
65
65
  Dynamic: keywords
66
66
  Dynamic: license
67
+ Dynamic: license-file
67
68
  Dynamic: platform
68
69
  Dynamic: provides-extra
69
70
  Dynamic: requires-dist
@@ -545,6 +545,8 @@ src/element_container/LineContainer.cpp
545
545
  src/element_container/LineContainer.h
546
546
  src/element_container/LoadContainer.cpp
547
547
  src/element_container/LoadContainer.h
548
+ src/element_container/OneSideContainer.cpp
549
+ src/element_container/OneSideContainer.h
548
550
  src/element_container/SGenContainer.cpp
549
551
  src/element_container/SGenContainer.h
550
552
  src/element_container/ShuntContainer.cpp
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: LightSim2Grid
3
- Version: 0.10.1.post1
3
+ Version: 0.10.3
4
4
  Summary: LightSim2Grid implements a c++ backend targeting the Grid2Op platform.
5
5
  Home-page: https://github.com/grid2op/lightsim2grid/
6
6
  Author: Benjamin Donnot
@@ -64,6 +64,7 @@ Dynamic: description-content-type
64
64
  Dynamic: home-page
65
65
  Dynamic: keywords
66
66
  Dynamic: license
67
+ Dynamic: license-file
67
68
  Dynamic: platform
68
69
  Dynamic: provides-extra
69
70
  Dynamic: requires-dist
@@ -6,7 +6,7 @@
6
6
  # SPDX-License-Identifier: MPL-2.0
7
7
  # This file is part of LightSim2grid, LightSim2grid implements a c++ backend targeting the Grid2Op platform.
8
8
 
9
- __version__ = "0.10.1.post1"
9
+ __version__ = "0.10.3"
10
10
 
11
11
  __all__ = ["newtonpf", "SolverType", "ErrorType", "solver", "compilation_options"]
12
12
 
@@ -85,6 +85,7 @@ class LightSimBackend(Backend):
85
85
  stop_if_load_disco : Optional[bool] = None,
86
86
  stop_if_gen_disco : Optional[bool] = None,
87
87
  stop_if_storage_disco : Optional[bool] = None,
88
+ automatically_disconnect : bool = False,
88
89
  ):
89
90
  #: ``int`` maximum number of iteration allowed for the solver
90
91
  #: if the solver has not converge after this, it will
@@ -167,7 +168,17 @@ class LightSimBackend(Backend):
167
168
  #: is automatically set-up with the call to grid2op.make,
168
169
  #: to match the behaviour expected by `allow_detachment`
169
170
  self._stop_if_storage_disco = stop_if_storage_disco
170
-
171
+
172
+ #: .. versionadded:: 0.11.0
173
+ #: if set to ``True`` the backend will automatically
174
+ #: disconnect any load / generator not in the main
175
+ #: connected component. The default is ``False``
176
+ #: which means it will NOT disconnect them
177
+ #: automatically and raise a "non connected grid"
178
+ #: error (this should only be used if grid2op allows detachment
179
+ #: and the detachment is allowed in the env configuration)
180
+ self._automatically_disconnect = automatically_disconnect
181
+
171
182
  self._aux_init_super(detailed_infos_for_cascading_failures,
172
183
  can_be_copied,
173
184
  solver_type,
@@ -180,7 +191,16 @@ class LightSimBackend(Backend):
180
191
  loader_kwargs,
181
192
  stop_if_load_disco,
182
193
  stop_if_gen_disco,
183
- stop_if_storage_disco)
194
+ stop_if_storage_disco,
195
+ automatically_disconnect)
196
+
197
+ #: whether or not to run a routine to detect the islanding
198
+ #: before computing the powerflow (this routine should
199
+ #: automatically switch off element not in the main CC)
200
+ #: by default it's False and only set to True if
201
+ #: automatically_disconnect is True (and if the environment
202
+ #: supports detachment)
203
+ self._need_islanding_detection = False
184
204
 
185
205
  # backward compat: need to define it if not done by grid2op
186
206
  if not hasattr(self, "_can_be_copied"):
@@ -335,6 +355,9 @@ class LightSimBackend(Backend):
335
355
  #: this flags remembers it
336
356
  self._next_pf_fails : Optional[BackendError] = None
337
357
 
358
+ # issue if dc then ac powerflow
359
+ self._last_dc = True
360
+
338
361
  # speed optimization
339
362
  self._lineor_res = None
340
363
  self._lineex_res = None
@@ -361,7 +384,8 @@ class LightSimBackend(Backend):
361
384
  loader_kwargs,
362
385
  stop_if_load_disco,
363
386
  stop_if_gen_disco,
364
- stop_if_storage_disco):
387
+ stop_if_storage_disco,
388
+ automatically_disconnect):
365
389
  try:
366
390
  # for grid2Op >= 1.7.1
367
391
  Backend.__init__(self,
@@ -377,22 +401,28 @@ class LightSimBackend(Backend):
377
401
  loader_kwargs=loader_kwargs,
378
402
  stop_if_load_disco=stop_if_load_disco,
379
403
  stop_if_gen_disco=stop_if_gen_disco,
380
- stop_if_storage_disco=stop_if_storage_disco
404
+ stop_if_storage_disco=stop_if_storage_disco,
405
+ automatically_disconnect=automatically_disconnect
381
406
  )
382
407
  except TypeError as exc_:
383
408
  warnings.warn("Please use grid2op >= 1.7.1: with older grid2op versions, "
384
409
  "you cannot set max_iter, tol nor solver_type arguments.")
385
410
  Backend.__init__(self,
386
411
  detailed_infos_for_cascading_failures=detailed_infos_for_cascading_failures)
387
-
388
- if hasattr(type(self), "can_handle_more_than_2_busbar"):
412
+
413
+ cls = type(self)
414
+ if hasattr(cls, "can_handle_more_than_2_busbar"):
389
415
  # do not forget to propagate this if needed
390
416
  self.can_handle_more_than_2_busbar()
391
417
 
392
- if hasattr(type(self), "can_handle_detachment"):
418
+ if hasattr(cls, "can_handle_detachment"):
393
419
  # do not forget to propagate this if needed
394
420
  self.can_handle_detachment()
395
421
 
422
+ if automatically_disconnect:
423
+ # authorize disconnection of elements in the backend
424
+ self._prevent_automatic_disconnection = False
425
+
396
426
  def turnedoff_no_pv(self):
397
427
  self._turned_off_pv = False
398
428
  self._grid.turnedoff_no_pv()
@@ -586,7 +616,7 @@ class LightSimBackend(Backend):
586
616
  self._stop_if_gen_disco = False
587
617
  elif self._stop_if_gen_disco:
588
618
  # erase default values and continue like the grid2op call specifies
589
- warnings.warn("Call to `grid2op.make(..., allow_detachement=True)` will erase the lightsim2grid kwargs `stop_if_gen_disco=True`")
619
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=True)` will erase the lightsim2grid kwargs `stop_if_gen_disco=True`")
590
620
  self._stop_if_gen_disco = False
591
621
 
592
622
  if self._stop_if_load_disco is None:
@@ -597,7 +627,7 @@ class LightSimBackend(Backend):
597
627
  self._stop_if_load_disco = False
598
628
  elif self._stop_if_load_disco:
599
629
  # erase default values and continue like the grid2op call specifies
600
- warnings.warn("Call to `grid2op.make(..., allow_detachement=True)` will erase the lightsim2grid kwargs `stop_if_load_disco=True`")
630
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=True)` will erase the lightsim2grid kwargs `stop_if_load_disco=True`")
601
631
  self._stop_if_load_disco = False
602
632
 
603
633
  if self._stop_if_storage_disco is None:
@@ -608,7 +638,7 @@ class LightSimBackend(Backend):
608
638
  self._stop_if_storage_disco = False
609
639
  elif self._stop_if_storage_disco:
610
640
  # erase default values and continue like the grid2op call specifies
611
- warnings.warn("Call to `grid2op.make(..., allow_detachement=True)` will erase the lightsim2grid kwargs `stop_if_storage_disco=True`")
641
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=True)` will erase the lightsim2grid kwargs `stop_if_storage_disco=True`")
612
642
  self._stop_if_storage_disco = False
613
643
 
614
644
  def _aux_set_correct_detach_flags_d_not_allowed(self):# user did not allow detachment (or it's a legacy grid2op version), I check the correct flags
@@ -620,7 +650,7 @@ class LightSimBackend(Backend):
620
650
  self._stop_if_gen_disco = True
621
651
  elif not self._stop_if_gen_disco:
622
652
  # erase default values and continue like the grid2op call specifies
623
- warnings.warn("Call to `grid2op.make(..., allow_detachement=False)` will erase the lightsim2grid kwargs `stop_if_gen_disco=False`")
653
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=False)` will erase the lightsim2grid kwargs `stop_if_gen_disco=False`")
624
654
  self._stop_if_gen_disco = True
625
655
 
626
656
  if self._stop_if_load_disco is None:
@@ -631,7 +661,7 @@ class LightSimBackend(Backend):
631
661
  self._stop_if_load_disco = True
632
662
  elif not self._stop_if_load_disco:
633
663
  # erase default values and continue like the grid2op call specifies
634
- warnings.warn("Call to `grid2op.make(..., allow_detachement=False)` will erase the lightsim2grid kwargs `stop_if_load_disco=False`")
664
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=False)` will erase the lightsim2grid kwargs `stop_if_load_disco=False`")
635
665
  self._stop_if_load_disco = True
636
666
 
637
667
  if self._stop_if_storage_disco is None:
@@ -642,7 +672,7 @@ class LightSimBackend(Backend):
642
672
  self._stop_if_storage_disco = True
643
673
  elif not self._stop_if_storage_disco:
644
674
  # erase default values and continue like the grid2op call specifies
645
- warnings.warn("Call to `grid2op.make(..., allow_detachement=False)` will erase the lightsim2grid kwargs `stop_if_storage_disco=False`")
675
+ warnings.warn("Call to `grid2op.make(..., allow_detachment=False)` will erase the lightsim2grid kwargs `stop_if_storage_disco=False`")
646
676
  self._stop_if_storage_disco = True
647
677
 
648
678
  def _aux_set_correct_detach_flags(self):
@@ -664,6 +694,12 @@ class LightSimBackend(Backend):
664
694
  self.can_handle_detachment()
665
695
 
666
696
  self._aux_set_correct_detach_flags()
697
+ if self._automatically_disconnect and not self.detachment_is_allowed:
698
+ warnings.warn(("It is not possible to automatically disconnect element if grid2op "
699
+ "if grid2op does not allow detachment (make sure to upgrade to grid2op >= 1.11 "
700
+ "or if the environment is not configure to use it (add the kwargs grid2op.make(..., allow_detachment=True))")
701
+ )
702
+ self._automatically_disconnect = False
667
703
 
668
704
  if self._loader_method == "pandapower":
669
705
  self._load_grid_pandapower(path, filename)
@@ -673,7 +709,9 @@ class LightSimBackend(Backend):
673
709
  raise BackendError(f"Impossible to initialize the backend with '{self._loader_method}'")
674
710
  self._grid.tell_solver_need_reset()
675
711
  self._reset_res_pointers() # force the re reading of the accessors at next powerflow
676
- self.V = np.ones(self.nb_bus_total, dtype=np.complex_)
712
+ self.V = np.ones(self.nb_bus_total, dtype=complex)
713
+ if self._automatically_disconnect:
714
+ self._need_islanding_detection = True
677
715
 
678
716
  def _should_not_have_to_do_this(self, path=None, filename=None):
679
717
  # included in grid2op now !
@@ -1083,10 +1121,12 @@ class LightSimBackend(Backend):
1083
1121
 
1084
1122
  def _aux_finish_setup_after_reading(self):
1085
1123
  # set up the "lightsim grid" accordingly
1086
- cls = type(self)
1087
- if cls.n_line <= -1:
1124
+ my_cls = type(self)
1125
+ if my_cls.n_line <= -1:
1088
1126
  warnings.warn("You are using a legacy (quite old now) grid2op version. Please upgrade it.")
1089
1127
  cls = self
1128
+ else:
1129
+ cls = my_cls
1090
1130
  self._grid.set_load_pos_topo_vect(cls.load_pos_topo_vect)
1091
1131
  self._grid.set_gen_pos_topo_vect(cls.gen_pos_topo_vect)
1092
1132
  self._grid.set_line_or_pos_topo_vect(cls.line_or_pos_topo_vect[:self.__nb_powerline])
@@ -1132,40 +1172,40 @@ class LightSimBackend(Backend):
1132
1172
  if cls.shunts_data_available:
1133
1173
  self.shunt_topo_vect = np.ones(cls.n_shunt, dtype=dt_int)
1134
1174
  # shunts
1135
- self.sh_p = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1136
- self.sh_q = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1137
- self.sh_v = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1138
- self.sh_theta = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1175
+ self.sh_p = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.nan).reshape(-1)
1176
+ self.sh_q = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.nan).reshape(-1)
1177
+ self.sh_v = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.nan).reshape(-1)
1178
+ self.sh_theta = np.full(cls.n_shunt, dtype=dt_float, fill_value=np.nan).reshape(-1)
1139
1179
  self.sh_bus = np.full(cls.n_shunt, dtype=dt_int, fill_value=-1).reshape(-1)
1140
1180
 
1141
- self.p_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1142
- self.q_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1143
- self.v_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1144
- self.a_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1145
- self.p_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1146
- self.q_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1147
- self.v_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1148
- self.a_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1149
-
1150
- self.load_p = np.full(cls.n_load, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1151
- self.load_q = np.full(cls.n_load, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1152
- self.load_v = np.full(cls.n_load, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1153
-
1154
- self.prod_p = np.full(cls.n_gen, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1155
- self.prod_q = np.full(cls.n_gen, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1156
- self.prod_v = np.full(cls.n_gen, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1181
+ self.p_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1182
+ self.q_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1183
+ self.v_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1184
+ self.a_or = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1185
+ self.p_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1186
+ self.q_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1187
+ self.v_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1188
+ self.a_ex = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1189
+
1190
+ self.load_p = np.full(cls.n_load, dtype=dt_float, fill_value=np.nan).reshape(-1)
1191
+ self.load_q = np.full(cls.n_load, dtype=dt_float, fill_value=np.nan).reshape(-1)
1192
+ self.load_v = np.full(cls.n_load, dtype=dt_float, fill_value=np.nan).reshape(-1)
1193
+
1194
+ self.prod_p = np.full(cls.n_gen, dtype=dt_float, fill_value=np.nan).reshape(-1)
1195
+ self.prod_q = np.full(cls.n_gen, dtype=dt_float, fill_value=np.nan).reshape(-1)
1196
+ self.prod_v = np.full(cls.n_gen, dtype=dt_float, fill_value=np.nan).reshape(-1)
1157
1197
 
1158
- self.line_or_theta = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1159
- self.line_ex_theta = np.full(cls.n_line, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1160
- self.load_theta = np.full(cls.n_load, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1161
- self.gen_theta = np.full(cls.n_gen, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1198
+ self.line_or_theta = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1199
+ self.line_ex_theta = np.full(cls.n_line, dtype=dt_float, fill_value=np.nan).reshape(-1)
1200
+ self.load_theta = np.full(cls.n_load, dtype=dt_float, fill_value=np.nan).reshape(-1)
1201
+ self.gen_theta = np.full(cls.n_gen, dtype=dt_float, fill_value=np.nan).reshape(-1)
1162
1202
 
1163
1203
  # TODO storage check grid2op version and see if storage is available !
1164
1204
  if self.__has_storage:
1165
- self.storage_p = np.full(cls.n_storage, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1166
- self.storage_q = np.full(cls.n_storage, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1167
- self.storage_v = np.full(cls.n_storage, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1168
- self.storage_theta = np.full(cls.n_storage, dtype=dt_float, fill_value=np.NaN).reshape(-1)
1205
+ self.storage_p = np.full(cls.n_storage, dtype=dt_float, fill_value=np.nan).reshape(-1)
1206
+ self.storage_q = np.full(cls.n_storage, dtype=dt_float, fill_value=np.nan).reshape(-1)
1207
+ self.storage_v = np.full(cls.n_storage, dtype=dt_float, fill_value=np.nan).reshape(-1)
1208
+ self.storage_theta = np.full(cls.n_storage, dtype=dt_float, fill_value=np.nan).reshape(-1)
1169
1209
 
1170
1210
  self._count_object_per_bus()
1171
1211
 
@@ -1175,22 +1215,11 @@ class LightSimBackend(Backend):
1175
1215
  try:
1176
1216
  cls.n_sub = self.n_sub
1177
1217
  LightSimBackend.n_sub = self.n_sub
1178
- self.topo_vect[cls.load_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_loads()]),
1179
- cls.load_to_subid)
1180
- self.topo_vect[cls.gen_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_generators()]),
1181
- cls.gen_to_subid)
1182
- if self.__has_storage:
1183
- self.topo_vect[cls.storage_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_storages()]),
1184
- cls.storage_to_subid)
1185
- lor_glob_bus = np.concatenate((np.array([el.bus_or_id for el in self._grid.get_lines()]),
1186
- np.array([el.bus_hv_id for el in self._grid.get_trafos()])))
1187
- self.topo_vect[cls.line_or_pos_topo_vect] = cls.global_bus_to_local(lor_glob_bus,
1188
- cls.line_or_to_subid)
1189
- lex_glob_bus = np.concatenate((np.array([el.bus_ex_id for el in self._grid.get_lines()]),
1190
- np.array([el.bus_lv_id for el in self._grid.get_trafos()])))
1191
- self.topo_vect[cls.line_ex_pos_topo_vect] = cls.global_bus_to_local(lex_glob_bus,
1192
- cls.line_ex_to_subid)
1193
-
1218
+ if my_cls.load_pos_topo_vect is None:
1219
+ # old grid2op version
1220
+ self.topo_vect[:] = 1
1221
+ else:
1222
+ self._read_topo_vect(self.topo_vect)
1194
1223
  self._grid.tell_solver_need_reset()
1195
1224
  self.__me_at_init = self._grid.copy()
1196
1225
  self.__init_topo_vect = np.ones(cls.dim_topo, dtype=dt_int)
@@ -1201,6 +1230,24 @@ class LightSimBackend(Backend):
1201
1230
  finally:
1202
1231
  cls.n_sub = n_sub_cls_orig
1203
1232
  LightSimBackend.n_sub = n_sub_ls_orig
1233
+
1234
+ def _read_topo_vect(self, res):
1235
+ """the input vector "res" is modified !"""
1236
+ # TODO speed optimization here to read it "better"
1237
+ cls = type(self)
1238
+ res[cls.load_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_loads()]),
1239
+ cls.load_to_subid)
1240
+ res[cls.gen_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_generators()]),
1241
+ cls.gen_to_subid)
1242
+ if self.__has_storage:
1243
+ res[cls.storage_pos_topo_vect] = cls.global_bus_to_local(np.array([el.bus_id for el in self._grid.get_storages()]),
1244
+ cls.storage_to_subid)
1245
+ lor_glob_bus = np.concatenate((np.array([el.bus_or_id for el in self._grid.get_lines()]),
1246
+ np.array([el.bus_hv_id for el in self._grid.get_trafos()])))
1247
+ res[cls.line_or_pos_topo_vect] = cls.global_bus_to_local(lor_glob_bus, cls.line_or_to_subid)
1248
+ lex_glob_bus = np.concatenate((np.array([el.bus_ex_id for el in self._grid.get_lines()]),
1249
+ np.array([el.bus_lv_id for el in self._grid.get_trafos()])))
1250
+ res[cls.line_ex_pos_topo_vect] = cls.global_bus_to_local(lex_glob_bus, cls.line_ex_to_subid)
1204
1251
 
1205
1252
  def assert_grid_correct_after_powerflow(self) -> None:
1206
1253
  """
@@ -1282,10 +1329,16 @@ class LightSimBackend(Backend):
1282
1329
  # change the overall topology
1283
1330
  chgt = backendAction.current_topo.changed
1284
1331
  self._grid.update_topo(chgt, backendAction.current_topo.values)
1285
- self.topo_vect[chgt] = backendAction.current_topo.values[chgt]
1332
+ if not self._automatically_disconnect:
1333
+ # the backend cannot change the topology, so
1334
+ # this holds
1335
+ self.topo_vect[chgt] = backendAction.current_topo.values[chgt]
1336
+ else:
1337
+ if chgt.sum():
1338
+ # there has been topological changes, I need
1339
+ # to perform a BFS to detect possible islanding
1340
+ self._need_islanding_detection = True
1286
1341
 
1287
- # print(f" load p {backendAction.load_p.values[backendAction.load_p.changed]}") # TODO DEBUG WINDOWS
1288
- # print(f" prod_p p {backendAction.prod_p.values[backendAction.prod_p.changed]}") # TODO DEBUG WINDOWS
1289
1342
  # update the injections
1290
1343
  try:
1291
1344
  self._grid.update_gens_p(backendAction.prod_p.changed,
@@ -1369,11 +1422,15 @@ class LightSimBackend(Backend):
1369
1422
  raise self._next_pf_fails
1370
1423
 
1371
1424
  beg_preproc = time.perf_counter()
1425
+ if self._need_islanding_detection:
1426
+ self._grid.consider_only_main_component()
1427
+
1372
1428
  if is_dc:
1373
1429
  # somehow, when asked to do a powerflow in DC, pandapower assign Vm to be
1374
1430
  # one everywhere...
1375
1431
  # But not when it initializes in DC mode... (see below)
1376
- self.V = np.ones(self.nb_bus_total, dtype=np.complex_) # * self._grid.get_init_vm_pu()
1432
+ self._last_dc = True
1433
+ self.V = np.ones(self.nb_bus_total, dtype=complex) # * self._grid.get_init_vm_pu()
1377
1434
  tick = time.perf_counter()
1378
1435
  self._timer_preproc += tick - beg_preproc
1379
1436
  V = self._grid.dc_pf(self.V, self.max_it, self.tol)
@@ -1383,7 +1440,7 @@ class LightSimBackend(Backend):
1383
1440
  else:
1384
1441
  if (self.V is None) or (self.V.shape[0] == 0):
1385
1442
  # create the vector V as it is not created
1386
- self.V = np.ones(self.nb_bus_total, dtype=np.complex_) * self._grid.get_init_vm_pu()
1443
+ self.V = np.ones(self.nb_bus_total, dtype=complex) * self._grid.get_init_vm_pu()
1387
1444
  if self.initdc:
1388
1445
  self._grid.deactivate_result_computation()
1389
1446
  # if I init with dc values, it should depends on previous state
@@ -1402,6 +1459,10 @@ class LightSimBackend(Backend):
1402
1459
  V_init = copy.deepcopy(self.V)
1403
1460
  tick = time.perf_counter()
1404
1461
  self._timer_preproc += tick - beg_preproc
1462
+ if self._last_dc:
1463
+ # otherwise might segfault is a dc powerflow as been run before an ac one
1464
+ self._grid.tell_solver_need_reset()
1465
+ self._last_dc = False
1405
1466
  V = self._grid.ac_pf(V_init, self.max_it, self.tol)
1406
1467
  self._timer_solver += time.perf_counter() - tick
1407
1468
  if V.shape[0] == 0:
@@ -1477,7 +1538,8 @@ class LightSimBackend(Backend):
1477
1538
  raise BackendError(f"At least one generator is disconnected (check gen {gen_disco})")
1478
1539
 
1479
1540
  if self.__has_storage:
1480
- sto_active = (np.abs(self.storage_p) > 0.)
1541
+ # TODO speed optim here: self._grid.get_storage_target_p() is not "cached"
1542
+ sto_active = (np.abs(self._grid.get_storage_target_p()) > 0.)
1481
1543
  sto_act_disco = (((~np.isfinite(self.storage_v)) & sto_active).any() or
1482
1544
  ((self.storage_v <= 0.) & sto_active).any()
1483
1545
  )
@@ -1495,6 +1557,12 @@ class LightSimBackend(Backend):
1495
1557
  raise BackendError(f"Some theta are above 1e6 which should not be happening !")
1496
1558
  res = True
1497
1559
  self._grid.unset_changes()
1560
+
1561
+ if self._need_islanding_detection:
1562
+ # topology might have changed in the
1563
+ # powerflow computation
1564
+ self._read_topo_vect(self.topo_vect)
1565
+ self._need_islanding_detection = False
1498
1566
  self._timer_postproc += time.perf_counter() - beg_postroc
1499
1567
  except Exception as exc_:
1500
1568
  # of the powerflow has not converged, results are Nan
@@ -1508,7 +1576,10 @@ class LightSimBackend(Backend):
1508
1576
  # set back the solver to its previous state
1509
1577
  self._grid.change_solver(self.__current_solver_type)
1510
1578
  self._grid.tell_solver_need_reset()
1511
-
1579
+ if self._automatically_disconnect:
1580
+ # trigger a check for the connected component only
1581
+ # if relevant attribute is set
1582
+ self._need_islanding_detection = True
1512
1583
  # TODO grid2op compatibility ! (was a single returned element before storage were introduced)
1513
1584
  if self.__has_storage:
1514
1585
  res = res, my_exc_
@@ -1517,40 +1588,41 @@ class LightSimBackend(Backend):
1517
1588
  def _fill_nans(self):
1518
1589
  """fill the results vectors with nans"""
1519
1590
  self._next_pf_fails = None
1520
- self.p_or[:] = np.NaN
1521
- self.q_or[:] = np.NaN
1522
- self.v_or[:] = np.NaN
1523
- self.a_or[:] = np.NaN
1524
- self.p_ex[:] = np.NaN
1525
- self.q_ex[:] = np.NaN
1526
- self.v_ex[:] = np.NaN
1527
- self.a_ex[:] = np.NaN
1528
- self.load_p[:] = np.NaN
1529
- self.load_q[:] = np.NaN
1530
- self.load_v[:] = np.NaN
1531
- self.prod_p[:] = np.NaN
1532
- self.next_prod_p[:] = np.NaN
1533
- self.prod_q[:] = np.NaN
1534
- self.prod_v[:] = np.NaN
1535
- self.line_or_theta[:] = np.NaN
1536
- self.line_ex_theta[:] = np.NaN
1537
- self.load_theta[:] = np.NaN
1538
- self.gen_theta[:] = np.NaN
1591
+ self.p_or[:] = np.nan
1592
+ self.q_or[:] = np.nan
1593
+ self.v_or[:] = np.nan
1594
+ self.a_or[:] = np.nan
1595
+ self.p_ex[:] = np.nan
1596
+ self.q_ex[:] = np.nan
1597
+ self.v_ex[:] = np.nan
1598
+ self.a_ex[:] = np.nan
1599
+ self.load_p[:] = np.nan
1600
+ self.load_q[:] = np.nan
1601
+ self.load_v[:] = np.nan
1602
+ self.prod_p[:] = np.nan
1603
+ self.next_prod_p[:] = np.nan
1604
+ self.prod_q[:] = np.nan
1605
+ self.prod_v[:] = np.nan
1606
+ self.line_or_theta[:] = np.nan
1607
+ self.line_ex_theta[:] = np.nan
1608
+ self.load_theta[:] = np.nan
1609
+ self.gen_theta[:] = np.nan
1539
1610
 
1540
1611
  if type(self).shunts_data_available:
1541
- self.sh_p[:] = np.NaN
1542
- self.sh_q[:] = np.NaN
1543
- self.sh_v[:] = np.NaN
1544
- self.sh_theta[:] = np.NaN
1612
+ self.sh_p[:] = np.nan
1613
+ self.sh_q[:] = np.nan
1614
+ self.sh_v[:] = np.nan
1615
+ self.sh_theta[:] = np.nan
1545
1616
  self.sh_bus[:] = -1
1546
1617
 
1547
1618
  if self.__has_storage:
1548
- self.storage_p[:] = np.NaN
1549
- self.storage_q[:] = np.NaN
1550
- self.storage_v[:] = np.NaN
1551
- self.storage_theta[:] = np.NaN
1619
+ self.storage_p[:] = np.nan
1620
+ self.storage_q[:] = np.nan
1621
+ self.storage_v[:] = np.nan
1622
+ self.storage_theta[:] = np.nan
1552
1623
  self.V[:] = self._grid.get_init_vm_pu() # reset the V to its "original" value (see issue 30)
1553
1624
  self._reset_res_pointers()
1625
+ self._last_dc = True
1554
1626
 
1555
1627
  def _reset_res_pointers(self):
1556
1628
  self._lineor_res = None
@@ -1563,11 +1635,14 @@ class LightSimBackend(Backend):
1563
1635
  self._shunt_res = None
1564
1636
 
1565
1637
  def __deepcopy__(self, memo):
1566
- result = self.copy()
1638
+ if hasattr(type(self), "copy_public"):
1639
+ result = self.copy_public()
1640
+ else:
1641
+ result = self.copy()
1567
1642
  memo[id(self)] = result
1568
1643
  return result
1569
1644
 
1570
- def copy(self) -> Self:
1645
+ def copy(self, orig_grid=None) -> Self:
1571
1646
  # i can perform a regular copy, everything has been initialized
1572
1647
  mygrid = self._grid
1573
1648
  __me_at_init = self.__me_at_init
@@ -1598,7 +1673,8 @@ class LightSimBackend(Backend):
1598
1673
  self._loader_kwargs,
1599
1674
  self._stop_if_load_disco,
1600
1675
  self._stop_if_gen_disco,
1601
- self._stop_if_storage_disco)
1676
+ self._stop_if_storage_disco,
1677
+ self._automatically_disconnect)
1602
1678
 
1603
1679
  # for backward compat (attribute was not necessarily present in early grid2op)
1604
1680
  if not hasattr(res, "_can_be_copied"):
@@ -1623,7 +1699,9 @@ class LightSimBackend(Backend):
1623
1699
  "max_it", "tol", "_turned_off_pv", "_dist_slack_non_renew",
1624
1700
  "_use_static_gen", "_loader_method", "_loader_kwargs",
1625
1701
  "_stop_if_load_disco", "_stop_if_gen_disco", "_stop_if_storage_disco",
1626
- "_timer_fetch_data_cpp", "_next_pf_fails"
1702
+ "_timer_fetch_data_cpp", "_next_pf_fails", "_automatically_disconnect",
1703
+ "_need_islanding_detection",
1704
+ "_last_dc"
1627
1705
  ]
1628
1706
  for attr_nm in li_regular_attr:
1629
1707
  if hasattr(self, attr_nm):
@@ -1677,16 +1755,23 @@ class LightSimBackend(Backend):
1677
1755
  ###############
1678
1756
 
1679
1757
  # handle the most complicated
1680
- res._grid = mygrid.copy()
1758
+ if mygrid is not None:
1759
+ res._grid = mygrid.copy()
1760
+ res._reset_res_pointers()
1761
+ res._fetch_grid_data()
1762
+ if orig_grid is not None:
1763
+ if mygrid is not orig_grid:
1764
+ raise Grid2OpException("Error in the copy of a LightSimBackend: my_grid is not orig_grid")
1765
+ else:
1766
+ res._grid = None
1681
1767
  res.__me_at_init = __me_at_init.copy() # this is const
1682
1768
  res.init_pp_backend = inippbackend # this is const
1683
1769
  res._init_action_to_set = copy.deepcopy(self._init_action_to_set)
1684
1770
  res._backend_action_class = self._backend_action_class # this is const
1685
- res.__init_topo_vect = self.__init_topo_vect
1771
+ res.__init_topo_vect = 1 * self.__init_topo_vect
1686
1772
  res.available_solvers = self.available_solvers
1687
1773
  res._orig_grid_pypowsybl = self._orig_grid_pypowsybl
1688
- res._reset_res_pointers()
1689
- res._fetch_grid_data()
1774
+
1690
1775
  # assign back "self" attributes
1691
1776
  self._grid = mygrid
1692
1777
  self.init_pp_backend = inippbackend
@@ -1780,6 +1865,9 @@ class LightSimBackend(Backend):
1780
1865
  if type(self).shunts_data_available:
1781
1866
  self.sh_bus[:] = 1 # TODO self._compute_shunt_bus_with_compat(self._grid.get_all_shunt_buses())
1782
1867
  self.topo_vect[:] = self.__init_topo_vect # TODO#
1868
+ if self._automatically_disconnect:
1869
+ # automatically disconnect things if needed (and if the option is properly set)
1870
+ self._need_islanding_detection = True
1783
1871
 
1784
1872
 
1785
1873
  def _dont_use_global_bus_to_local_legacy(cls, global_bus: np.ndarray, to_sub_id: np.ndarray) -> np.ndarray:
@@ -14,7 +14,7 @@ import warnings
14
14
  from pybind11.setup_helpers import Pybind11Extension, build_ext
15
15
 
16
16
 
17
- __version__ = "0.10.1.post1"
17
+ __version__ = "0.10.3"
18
18
  KLU_SOLVER_AVAILABLE = False
19
19
 
20
20
  # Try to link against SuiteSparse (if available)
@@ -152,14 +152,16 @@ src_files = ['src/main.cpp',
152
152
  "src/batch_algorithm/BaseBatchSolverSynch.cpp",
153
153
  "src/batch_algorithm/TimeSeries.cpp",
154
154
  "src/batch_algorithm/ContingencyAnalysis.cpp",
155
- "src/element_container/LineContainer.cpp",
156
155
  "src/element_container/GenericContainer.cpp",
156
+ "src/element_container/OneSideContainer.cpp",
157
157
  "src/element_container/ShuntContainer.cpp",
158
158
  "src/element_container/TrafoContainer.cpp",
159
159
  "src/element_container/LoadContainer.cpp",
160
160
  "src/element_container/GeneratorContainer.cpp",
161
161
  "src/element_container/SGenContainer.cpp",
162
- "src/element_container/DCLineContainer.cpp"]
162
+ "src/element_container/DCLineContainer.cpp",
163
+ "src/element_container/LineContainer.cpp",
164
+ ]
163
165
 
164
166
  if KLU_SOLVER_AVAILABLE:
165
167
  src_files.append("src/linear_solvers/KLUSolver.cpp")
@@ -15,4 +15,6 @@ const real_type BaseConstants::my_two_ = 2.0;
15
15
  const real_type BaseConstants::my_half_ = 0.5;
16
16
  const real_type BaseConstants::my_zero_ = 0.;
17
17
  const real_type BaseConstants::my_180_pi_ = 180. / M_PI;
18
+ const real_type BaseConstants::v_disco_el_ = 0.0;
19
+ const real_type BaseConstants::theta_disco_el_ = 0.0;
18
20
  const int BaseConstants::_deactivated_bus_id = -1;
@@ -25,6 +25,8 @@ class BaseConstants
25
25
  static const real_type my_two_;
26
26
  static const real_type my_zero_;
27
27
  static const real_type my_180_pi_;
28
+ static const real_type v_disco_el_;
29
+ static const real_type theta_disco_el_;
28
30
  static const int _deactivated_bus_id;
29
31
  };
30
32