Maniverse 0.3.3__cp313-cp313-manylinux_2_39_x86_64.whl → 0.3.4__cp313-cp313-manylinux_2_39_x86_64.whl
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.
Potentially problematic release.
This version of Maniverse might be problematic. Click here for more details.
- {maniverse-0.3.3.dist-info → maniverse-0.3.4.dist-info}/METADATA +1 -1
- maniverse-0.3.4.dist-info/RECORD +6 -0
- maniverse-0.3.4.dist-info/top_level.txt +1 -0
- maniverse-0.3.3.dist-info/RECORD +0 -19
- maniverse-0.3.3.dist-info/top_level.txt +0 -4
- src/Macro.h +0 -19
- src/Manifold/Grassmann.h +0 -27
- src/Manifold/Manifold.h +0 -47
- src/Manifold/Orthogonal.h +0 -23
- src/Manifold/PyManifoldIn.h +0 -5
- src/Manifold/PyManifoldOut.h +0 -5
- src/Manifold/Simplex.h +0 -24
- src/Manifold/TransRotInvPointCloud.h +0 -23
- src/Optimizer/HessUpdate.h +0 -21
- src/Optimizer/PyOptimizerIn.h +0 -3
- src/Optimizer/PyOptimizerOut.h +0 -3
- src/Optimizer/SubSolver.h +0 -16
- src/Optimizer/TrustRegion.h +0 -33
- {maniverse-0.3.3.dist-info → maniverse-0.3.4.dist-info}/WHEEL +0 -0
- {maniverse-0.3.3.dist-info → maniverse-0.3.4.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
Maniverse.cpython-313-x86_64-linux-gnu.so,sha256=DTc-5EvqdlaY6xCCm1FqW7rVqeCLbNvWFNAVND05N_o,1901248
|
|
2
|
+
maniverse-0.3.4.dist-info/METADATA,sha256=clTSaP3QG6BMqlgzGPF3LgWwA_Kj31fuRybK3ttA0JY,4255
|
|
3
|
+
maniverse-0.3.4.dist-info/WHEEL,sha256=wj4F0tu65zWSxgWWeinj3Im1L-2JR4PBtDyG5mhkOOM,113
|
|
4
|
+
maniverse-0.3.4.dist-info/top_level.txt,sha256=3hJ0G27rJFqsZeoF32XiEamLhiXRgMAF7BQxet7Tbhw,10
|
|
5
|
+
maniverse-0.3.4.dist-info/RECORD,,
|
|
6
|
+
maniverse-0.3.4.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Maniverse
|
maniverse-0.3.3.dist-info/RECORD
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
Maniverse.cpython-313-x86_64-linux-gnu.so,sha256=DTc-5EvqdlaY6xCCm1FqW7rVqeCLbNvWFNAVND05N_o,1901248
|
|
2
|
-
src/Macro.h,sha256=15OrilulhEdxjbeD_WG_LaUKeQ673OD0gMzFP3XAXbg,742
|
|
3
|
-
src/Manifold/Grassmann.h,sha256=G-lJX-V5wYdJxnH4C7d3p_JYo5OnCejNTIEA09zEVnE,950
|
|
4
|
-
src/Manifold/Manifold.h,sha256=YRxZjOaO738XEJkTjKvinLxP_TfQaSmpd8Cx-42kejU,1652
|
|
5
|
-
src/Manifold/Orthogonal.h,sha256=kFQpCdn_kV8vy6miNwfiRW2CO8g9RwkGDuH8zi8B4II,763
|
|
6
|
-
src/Manifold/PyManifoldIn.h,sha256=hYnGiyB8mmRDDhWdRWxtbEF7u7xbPBqbtW21G8Au-5A,105
|
|
7
|
-
src/Manifold/PyManifoldOut.h,sha256=3xP7VmxIBrCgL_zKxd3dF4eYfrbsyNqHmVymhtpy9dk,225
|
|
8
|
-
src/Manifold/Simplex.h,sha256=5QyFRHvG0dXx0H2wutKJMJ0E9Z4c-abPn5a4kJMOCiA,777
|
|
9
|
-
src/Manifold/TransRotInvPointCloud.h,sha256=WJEoFMCyogvyQYL8tIINMoG7TWVqdQB7DOAXcjx_Mrk,787
|
|
10
|
-
src/Optimizer/HessUpdate.h,sha256=jAxi_1fCY7hkQ5KbOO3JhjYMXKrXs4-rE79Nk3vUcrI,860
|
|
11
|
-
src/Optimizer/PyOptimizerIn.h,sha256=I9lCTmNj10M4BhuJSVlymoYEdrgfe9gRfzVhfIdiOAg,60
|
|
12
|
-
src/Optimizer/PyOptimizerOut.h,sha256=xxIuMYsjQNZJQQ6yLHwnYv5yiyrDmm0kj03h0XcYfIc,132
|
|
13
|
-
src/Optimizer/SubSolver.h,sha256=eiv3Se3o341y5MezuRoWi8B7M1AuE5_FULNgc8dw3OE,607
|
|
14
|
-
src/Optimizer/TrustRegion.h,sha256=Xbfsti3qD9TMRdzWmU1f4Fpzt0_2qJPu0pNEDqWH1TQ,800
|
|
15
|
-
maniverse-0.3.3.dist-info/METADATA,sha256=sYWllp1fZNKF3-tEN-fSyWOJw8JqHtmtQe2eSvFOvwU,4255
|
|
16
|
-
maniverse-0.3.3.dist-info/WHEEL,sha256=wj4F0tu65zWSxgWWeinj3Im1L-2JR4PBtDyG5mhkOOM,113
|
|
17
|
-
maniverse-0.3.3.dist-info/top_level.txt,sha256=XQv7CBM_q8_w3-SHjARw6h_l-JyjMBRjRrIB7-bBk_E,41
|
|
18
|
-
maniverse-0.3.3.dist-info/RECORD,,
|
|
19
|
-
maniverse-0.3.3.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
src/Macro.h
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
#define EigenArray Eigen::ArrayXd
|
|
2
|
-
#define EigenVector Eigen::VectorXd
|
|
3
|
-
#define EigenDiagonal Eigen::DiagonalMatrix<double, -1, -1>
|
|
4
|
-
#define EigenMatrix Eigen::MatrixXd
|
|
5
|
-
#define EigenZero Eigen::MatrixXd::Zero
|
|
6
|
-
#define EigenOne Eigen::MatrixXd::Identity
|
|
7
|
-
|
|
8
|
-
#define Diag(X) (X).diagonal().asDiagonal()
|
|
9
|
-
#define Dot(X, Y) ( (X).transpose() * (Y) ).trace()
|
|
10
|
-
|
|
11
|
-
#define __Not_Implemented__\
|
|
12
|
-
std::string func_name = __func__;\
|
|
13
|
-
std::string class_name = typeid(*this).name();\
|
|
14
|
-
throw std::runtime_error(func_name + " for " + class_name + " is not implemented!");
|
|
15
|
-
|
|
16
|
-
#define __True_False__(x) ( x ? "True" : "False" )
|
|
17
|
-
|
|
18
|
-
#define __now__ std::chrono::high_resolution_clock::now()
|
|
19
|
-
#define __duration__(start, end) std::chrono::duration<double>(end - start).count()
|
src/Manifold/Grassmann.h
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
#include "Manifold.h"
|
|
2
|
-
|
|
3
|
-
class Grassmann: public Manifold{ public:
|
|
4
|
-
EigenMatrix Projector;
|
|
5
|
-
mutable std::vector<std::tuple<EigenMatrix, EigenMatrix>> LogCache;
|
|
6
|
-
mutable std::vector<std::tuple<EigenMatrix, EigenMatrix, EigenMatrix>> TransportTangentCache;
|
|
7
|
-
|
|
8
|
-
Grassmann(EigenMatrix p, bool matrix_free);
|
|
9
|
-
|
|
10
|
-
int getDimension() const override;
|
|
11
|
-
double Inner(EigenMatrix X, EigenMatrix Y) const override;
|
|
12
|
-
|
|
13
|
-
EigenMatrix Exponential(EigenMatrix X) const override;
|
|
14
|
-
EigenMatrix Logarithm(Manifold& N) const override;
|
|
15
|
-
|
|
16
|
-
EigenMatrix TangentProjection(EigenMatrix A) const override;
|
|
17
|
-
EigenMatrix TangentPurification(EigenMatrix A) const override;
|
|
18
|
-
|
|
19
|
-
EigenMatrix TransportTangent(EigenMatrix X, EigenMatrix Y) const override;
|
|
20
|
-
EigenMatrix TransportManifold(EigenMatrix X, Manifold& N) const override;
|
|
21
|
-
|
|
22
|
-
void Update(EigenMatrix p, bool purify) override;
|
|
23
|
-
void getGradient() override;
|
|
24
|
-
void getHessian() override;
|
|
25
|
-
|
|
26
|
-
std::unique_ptr<Manifold> Clone() const override;
|
|
27
|
-
};
|
src/Manifold/Manifold.h
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#define __Check_Log_Map__\
|
|
4
|
-
if ( typeid(N) != typeid(*this) )\
|
|
5
|
-
throw std::runtime_error("The point to logarithm map is not in " + std::string(typeid(*this).name()) + "but in " + std::string(typeid(N).name()) + "!");
|
|
6
|
-
|
|
7
|
-
#define __Check_Vec_Transport__\
|
|
8
|
-
if ( typeid(N) != typeid(*this) )\
|
|
9
|
-
throw std::runtime_error("The destination of vector transport is not in " + std::string(typeid(*this).name()) + "but in " + std::string(typeid(N).name()) + "!");
|
|
10
|
-
|
|
11
|
-
class Manifold{ public:
|
|
12
|
-
std::string Name;
|
|
13
|
-
EigenMatrix P;
|
|
14
|
-
EigenMatrix Ge;
|
|
15
|
-
EigenMatrix Gr;
|
|
16
|
-
bool MatrixFree;
|
|
17
|
-
EigenMatrix Hem;
|
|
18
|
-
std::vector<std::tuple<double, EigenMatrix>> Hrm;
|
|
19
|
-
std::function<EigenMatrix (EigenMatrix)> He;
|
|
20
|
-
std::function<EigenMatrix (EigenMatrix)> Hr;
|
|
21
|
-
std::vector<EigenMatrix> BasisSet;
|
|
22
|
-
|
|
23
|
-
Manifold(EigenMatrix p, bool matrix_free);
|
|
24
|
-
virtual int getDimension() const;
|
|
25
|
-
virtual double Inner(EigenMatrix X, EigenMatrix Y) const;
|
|
26
|
-
void getBasisSet();
|
|
27
|
-
void getHessianMatrix();
|
|
28
|
-
|
|
29
|
-
virtual EigenMatrix Exponential(EigenMatrix X) const;
|
|
30
|
-
virtual EigenMatrix Logarithm(Manifold& N) const;
|
|
31
|
-
|
|
32
|
-
virtual EigenMatrix TangentProjection(EigenMatrix A) const;
|
|
33
|
-
virtual EigenMatrix TangentPurification(EigenMatrix A) const;
|
|
34
|
-
|
|
35
|
-
virtual EigenMatrix TransportTangent(EigenMatrix X, EigenMatrix Y) const;
|
|
36
|
-
virtual EigenMatrix TransportManifold(EigenMatrix X, Manifold& N) const;
|
|
37
|
-
|
|
38
|
-
virtual void Update(EigenMatrix p, bool purify);
|
|
39
|
-
virtual void getGradient();
|
|
40
|
-
virtual void getHessian();
|
|
41
|
-
|
|
42
|
-
virtual ~Manifold() = default;
|
|
43
|
-
virtual std::unique_ptr<Manifold> Clone() const;
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
std::vector<std::tuple<double, EigenMatrix>> Diagonalize(
|
|
47
|
-
EigenMatrix& A, std::vector<EigenMatrix>& basis_set);
|
src/Manifold/Orthogonal.h
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
#include "Manifold.h"
|
|
2
|
-
|
|
3
|
-
class Orthogonal: public Manifold{ public:
|
|
4
|
-
Orthogonal(EigenMatrix p, bool matrix_free);
|
|
5
|
-
|
|
6
|
-
int getDimension() const override;
|
|
7
|
-
double Inner(EigenMatrix X, EigenMatrix Y) const override;
|
|
8
|
-
|
|
9
|
-
EigenMatrix Exponential(EigenMatrix X) const override;
|
|
10
|
-
EigenMatrix Logarithm(Manifold& N) const override;
|
|
11
|
-
|
|
12
|
-
EigenMatrix TangentProjection(EigenMatrix A) const override;
|
|
13
|
-
EigenMatrix TangentPurification(EigenMatrix A) const override;
|
|
14
|
-
|
|
15
|
-
EigenMatrix TransportTangent(EigenMatrix X, EigenMatrix Y) const override;
|
|
16
|
-
EigenMatrix TransportManifold(EigenMatrix X, Manifold& N) const override;
|
|
17
|
-
|
|
18
|
-
void Update(EigenMatrix p, bool purify) override;
|
|
19
|
-
void getGradient() override;
|
|
20
|
-
void getHessian() override;
|
|
21
|
-
|
|
22
|
-
std::unique_ptr<Manifold> Clone() const override;
|
|
23
|
-
};
|
src/Manifold/PyManifoldIn.h
DELETED
src/Manifold/PyManifoldOut.h
DELETED
src/Manifold/Simplex.h
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
#include "Manifold.h"
|
|
2
|
-
|
|
3
|
-
class Simplex: public Manifold{ public:
|
|
4
|
-
EigenMatrix Hem;
|
|
5
|
-
Simplex(EigenMatrix p, bool hess_transport_matrix);
|
|
6
|
-
|
|
7
|
-
int getDimension() const override;
|
|
8
|
-
double Inner(EigenMatrix X, EigenMatrix Y) const override;
|
|
9
|
-
|
|
10
|
-
EigenMatrix Exponential(EigenMatrix X) const override;
|
|
11
|
-
EigenMatrix Logarithm(Manifold& N) const override;
|
|
12
|
-
|
|
13
|
-
EigenMatrix TangentProjection(EigenMatrix A) const override;
|
|
14
|
-
EigenMatrix TangentPurification(EigenMatrix A) const override;
|
|
15
|
-
|
|
16
|
-
//EigenMatrix TransportTangent(EigenMatrix X, EigenMatrix Y) override;
|
|
17
|
-
//EigenMatrix TransportManifold(EigenMatrix X, Manifold& N) override;
|
|
18
|
-
|
|
19
|
-
void Update(EigenMatrix p, bool purify) override;
|
|
20
|
-
void getGradient() override;
|
|
21
|
-
void getHessian() override;
|
|
22
|
-
|
|
23
|
-
std::unique_ptr<Manifold> Clone() const override;
|
|
24
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
#include "Manifold.h"
|
|
2
|
-
|
|
3
|
-
class TransRotInvPointCloud: public Manifold{ public:
|
|
4
|
-
TransRotInvPointCloud(EigenMatrix p, bool matrix_free);
|
|
5
|
-
|
|
6
|
-
int getDimension() const override;
|
|
7
|
-
double Inner(EigenMatrix X, EigenMatrix Y) const override;
|
|
8
|
-
|
|
9
|
-
EigenMatrix Exponential(EigenMatrix X) const override;
|
|
10
|
-
EigenMatrix Logarithm(Manifold& N) const override;
|
|
11
|
-
|
|
12
|
-
EigenMatrix TangentProjection(EigenMatrix A) const override;
|
|
13
|
-
EigenMatrix TangentPurification(EigenMatrix A) const override;
|
|
14
|
-
|
|
15
|
-
//EigenMatrix TransportTangent(EigenMatrix X, EigenMatrix Y) override const;
|
|
16
|
-
EigenMatrix TransportManifold(EigenMatrix X, Manifold& N) const override;
|
|
17
|
-
|
|
18
|
-
void Update(EigenMatrix p, bool purify) override;
|
|
19
|
-
void getGradient() override;
|
|
20
|
-
void getHessian() override;
|
|
21
|
-
|
|
22
|
-
std::unique_ptr<Manifold> Clone() const override;
|
|
23
|
-
};
|
src/Optimizer/HessUpdate.h
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
class HessUpdate{ public:
|
|
2
|
-
int Size = 0;
|
|
3
|
-
bool Verbose = 1;
|
|
4
|
-
std::vector<std::unique_ptr<Manifold>> Ms;
|
|
5
|
-
std::vector<std::map<std::string, EigenMatrix>> Caches; // For matrix-free
|
|
6
|
-
std::vector<std::tuple<double, EigenMatrix>> EigenPairs; // For non-matrix-free
|
|
7
|
-
std::function<double (double)> CautiousThreshold = [](double gnorm){ return -gnorm; };
|
|
8
|
-
HessUpdate(int n);
|
|
9
|
-
void Append(Manifold& M, EigenMatrix Step);
|
|
10
|
-
virtual void AdmittedAppend(Manifold& M, EigenMatrix Step);
|
|
11
|
-
EigenMatrix Hessian(EigenMatrix v);
|
|
12
|
-
virtual EigenMatrix HessianMatrixFree(EigenMatrix v);
|
|
13
|
-
void Clear();
|
|
14
|
-
virtual ~HessUpdate() = default;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
class BroydenFletcherGoldfarbShanno: public HessUpdate{ public:
|
|
18
|
-
BroydenFletcherGoldfarbShanno(int n): HessUpdate(n){}
|
|
19
|
-
void AdmittedAppend(Manifold& M, EigenMatrix Step) override;
|
|
20
|
-
EigenMatrix HessianMatrixFree(EigenMatrix v) override;
|
|
21
|
-
};
|
src/Optimizer/PyOptimizerIn.h
DELETED
src/Optimizer/PyOptimizerOut.h
DELETED
src/Optimizer/SubSolver.h
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
class TruncatedConjugateGradient{ public:
|
|
2
|
-
Manifold* M;
|
|
3
|
-
std::function<EigenMatrix (EigenMatrix)>* Func;
|
|
4
|
-
bool Verbose;
|
|
5
|
-
bool ShowTarget;
|
|
6
|
-
double Radius;
|
|
7
|
-
std::function<bool (double, double, double, double)> Tolerance;
|
|
8
|
-
std::vector<std::tuple<double, EigenMatrix, EigenMatrix>> Sequence; // Step size, S, P.
|
|
9
|
-
TruncatedConjugateGradient(){};
|
|
10
|
-
TruncatedConjugateGradient(
|
|
11
|
-
Manifold* m, std::function<EigenMatrix (EigenMatrix)>* func,
|
|
12
|
-
bool verbose, bool showtarget
|
|
13
|
-
): M(m), Func(func), Verbose(verbose), ShowTarget(showtarget){};
|
|
14
|
-
void Run();
|
|
15
|
-
std::tuple<double, EigenMatrix> Find(); // Step size, S.
|
|
16
|
-
};
|
src/Optimizer/TrustRegion.h
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
class TrustRegionSetting{ public:
|
|
2
|
-
double R0;
|
|
3
|
-
double RhoThreshold;
|
|
4
|
-
std::function<double (double, double, double)> Update;
|
|
5
|
-
TrustRegionSetting();
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
bool TrustRegion(
|
|
9
|
-
std::function<
|
|
10
|
-
std::tuple<
|
|
11
|
-
double,
|
|
12
|
-
EigenMatrix,
|
|
13
|
-
std::function<EigenMatrix (EigenMatrix)>
|
|
14
|
-
> (EigenMatrix, int)
|
|
15
|
-
>& func,
|
|
16
|
-
TrustRegionSetting& tr_setting,
|
|
17
|
-
std::tuple<double, double, double> tol,
|
|
18
|
-
double tcg_tol,
|
|
19
|
-
int recalc_hess, int max_iter,
|
|
20
|
-
double& L, Manifold& M, int output);
|
|
21
|
-
|
|
22
|
-
bool TrustRegionRationalFunction(
|
|
23
|
-
std::function<
|
|
24
|
-
std::tuple<
|
|
25
|
-
double,
|
|
26
|
-
EigenMatrix,
|
|
27
|
-
std::function<EigenMatrix (EigenMatrix)>
|
|
28
|
-
> (EigenMatrix, int)
|
|
29
|
-
>& func,
|
|
30
|
-
TrustRegionSetting& tr_setting,
|
|
31
|
-
std::tuple<double, double, double> tol,
|
|
32
|
-
int recalc_hess, int max_iter,
|
|
33
|
-
double& L, Manifold& M, int output);
|
|
File without changes
|
|
File without changes
|