Dynare++: various simplifications
parent
02d6f86487
commit
9e1df25580
|
@ -29,7 +29,6 @@ FFSTensor::FFSTensor(const FFSTensor &t, const ConstVector &x)
|
||||||
zeros();
|
zeros();
|
||||||
|
|
||||||
for (Tensor::index to = begin(); to != end(); ++to)
|
for (Tensor::index to = begin(); to != end(); ++to)
|
||||||
{
|
|
||||||
for (int i = 0; i < nvar(); i++)
|
for (int i = 0; i < nvar(); i++)
|
||||||
{
|
{
|
||||||
IntSequence from_ind(i, to.getCoor());
|
IntSequence from_ind(i, to.getCoor());
|
||||||
|
@ -37,7 +36,6 @@ FFSTensor::FFSTensor(const FFSTensor &t, const ConstVector &x)
|
||||||
addColumn(x[i], t, *from, *to);
|
addColumn(x[i], t, *from, *to);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* This returns number of indices for folded tensor with full
|
/* This returns number of indices for folded tensor with full
|
||||||
symmetry. Let $n$ be a number of variables |nvar| and $d$ the
|
symmetry. Let $n$ be a number of variables |nvar| and $d$ the
|
||||||
|
|
|
@ -59,9 +59,8 @@ public:
|
||||||
}
|
}
|
||||||
FFSTensor(const FFSTensor &t, const ConstVector &x);
|
FFSTensor(const FFSTensor &t, const ConstVector &x);
|
||||||
FFSTensor(const FSSparseTensor &t);
|
FFSTensor(const FSSparseTensor &t);
|
||||||
FFSTensor(const FFSTensor &ft)
|
FFSTensor(const FFSTensor &) = default;
|
||||||
|
FFSTensor(FFSTensor &&) = default;
|
||||||
= default;
|
|
||||||
FFSTensor(const UFSTensor &ut);
|
FFSTensor(const UFSTensor &ut);
|
||||||
FFSTensor(int first_row, int num, FFSTensor &t)
|
FFSTensor(int first_row, int num, FFSTensor &t)
|
||||||
: FTensor(first_row, num, t), nv(t.nv)
|
: FTensor(first_row, num, t), nv(t.nv)
|
||||||
|
@ -103,9 +102,8 @@ public:
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
UFSTensor(const UFSTensor &t, const ConstVector &x);
|
UFSTensor(const UFSTensor &t, const ConstVector &x);
|
||||||
UFSTensor(const UFSTensor &ut)
|
UFSTensor(const UFSTensor &) = default;
|
||||||
|
UFSTensor(UFSTensor &&) = default;
|
||||||
= default;
|
|
||||||
UFSTensor(const FFSTensor &ft);
|
UFSTensor(const FFSTensor &ft);
|
||||||
UFSTensor(int first_row, int num, UFSTensor &t)
|
UFSTensor(int first_row, int num, UFSTensor &t)
|
||||||
: UTensor(first_row, num, t), nv(t.nv)
|
: UTensor(first_row, num, t), nv(t.nv)
|
||||||
|
|
|
@ -68,15 +68,12 @@ public:
|
||||||
{
|
{
|
||||||
nvs[0] = nvar;
|
nvs[0] = nvar;
|
||||||
}
|
}
|
||||||
TensorDimens(const TensorDimens &td)
|
TensorDimens(const TensorDimens &) = default;
|
||||||
|
TensorDimens(TensorDimens &&) = default;
|
||||||
= default;
|
virtual ~TensorDimens() = default;
|
||||||
virtual ~TensorDimens()
|
|
||||||
= default;
|
|
||||||
TensorDimens(const IntSequence &ss, const IntSequence &coor);
|
TensorDimens(const IntSequence &ss, const IntSequence &coor);
|
||||||
TensorDimens &
|
TensorDimens &operator=(const TensorDimens &) = default;
|
||||||
operator=(const TensorDimens &td)
|
TensorDimens &operator=(TensorDimens &&) = default;
|
||||||
= default;
|
|
||||||
bool
|
bool
|
||||||
operator==(const TensorDimens &td) const
|
operator==(const TensorDimens &td) const
|
||||||
{
|
{
|
||||||
|
@ -151,9 +148,8 @@ public:
|
||||||
td.calcFoldMaxOffset(), td.dimen()), tdims(td)
|
td.calcFoldMaxOffset(), td.dimen()), tdims(td)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
FGSTensor(const FGSTensor &ft)
|
FGSTensor(const FGSTensor &) = default;
|
||||||
|
FGSTensor(FGSTensor &&) = default;
|
||||||
= default;
|
|
||||||
FGSTensor(const UGSTensor &ut);
|
FGSTensor(const UGSTensor &ut);
|
||||||
FGSTensor(int first_row, int num, FGSTensor &t)
|
FGSTensor(int first_row, int num, FGSTensor &t)
|
||||||
: FTensor(first_row, num, t), tdims(t.tdims)
|
: FTensor(first_row, num, t), tdims(t.tdims)
|
||||||
|
@ -169,8 +165,7 @@ public:
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
~FGSTensor()
|
~FGSTensor() override = default;
|
||||||
override = default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void
|
void
|
||||||
|
@ -220,9 +215,8 @@ public:
|
||||||
td.calcUnfoldMaxOffset(), td.dimen()), tdims(td)
|
td.calcUnfoldMaxOffset(), td.dimen()), tdims(td)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
UGSTensor(const UGSTensor &ut)
|
UGSTensor(const UGSTensor &) = default;
|
||||||
|
UGSTensor(UGSTensor &&) = default;
|
||||||
= default;
|
|
||||||
UGSTensor(const FGSTensor &ft);
|
UGSTensor(const FGSTensor &ft);
|
||||||
|
|
||||||
UGSTensor(int first_row, int num, UGSTensor &t)
|
UGSTensor(int first_row, int num, UGSTensor &t)
|
||||||
|
@ -237,8 +231,7 @@ public:
|
||||||
: UTensor(0, t.nrows(), t), tdims(t.nvar(), t.dimen())
|
: UTensor(0, t.nrows(), t), tdims(t.nvar(), t.dimen())
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
~UGSTensor()
|
~UGSTensor() override = default;
|
||||||
override = default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void decrement(IntSequence &v) const override;
|
void decrement(IntSequence &v) const override;
|
||||||
|
|
|
@ -108,12 +108,10 @@ public:
|
||||||
{
|
{
|
||||||
per.apply(nvmax);
|
per.apply(nvmax);
|
||||||
}
|
}
|
||||||
PerTensorDimens(const PerTensorDimens &td)
|
PerTensorDimens(const PerTensorDimens &) = default;
|
||||||
|
PerTensorDimens(PerTensorDimens &&) = default;
|
||||||
= default;
|
PerTensorDimens &operator=(const PerTensorDimens &) = default;
|
||||||
PerTensorDimens &
|
PerTensorDimens &operator=(PerTensorDimens &&) = default;
|
||||||
operator=(const PerTensorDimens &td)
|
|
||||||
= default;
|
|
||||||
bool
|
bool
|
||||||
operator==(const PerTensorDimens &td)
|
operator==(const PerTensorDimens &td)
|
||||||
{
|
{
|
||||||
|
@ -200,9 +198,8 @@ public:
|
||||||
}
|
}
|
||||||
UPSTensor(const FSSparseTensor &t, const IntSequence &ss,
|
UPSTensor(const FSSparseTensor &t, const IntSequence &ss,
|
||||||
const IntSequence &coor, const PerTensorDimens &ptd);
|
const IntSequence &coor, const PerTensorDimens &ptd);
|
||||||
UPSTensor(const UPSTensor &ut)
|
UPSTensor(const UPSTensor &) = default;
|
||||||
|
UPSTensor(UPSTensor &&) = default;
|
||||||
= default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void decrement(IntSequence &v) const override;
|
void decrement(IntSequence &v) const override;
|
||||||
|
@ -364,9 +361,8 @@ public:
|
||||||
FPSTensor(const TensorDimens &td, const Equivalence &e, const Permutation &p,
|
FPSTensor(const TensorDimens &td, const Equivalence &e, const Permutation &p,
|
||||||
const GSSparseTensor &t, const KronProdAll &kp);
|
const GSSparseTensor &t, const KronProdAll &kp);
|
||||||
|
|
||||||
FPSTensor(const FPSTensor &ft)
|
FPSTensor(const FPSTensor &) = default;
|
||||||
|
FPSTensor(FPSTensor &&) = default;
|
||||||
= default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void decrement(IntSequence &v) const override;
|
void decrement(IntSequence &v) const override;
|
||||||
|
|
|
@ -52,13 +52,11 @@ public:
|
||||||
UFSTensor::calcMaxOffset(nvar, d), c, d), nv(nvar)
|
UFSTensor::calcMaxOffset(nvar, d), c, d), nv(nvar)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
URTensor(const URTensor &ut)
|
URTensor(const URTensor &) = default;
|
||||||
|
URTensor(URTensor &&) = default;
|
||||||
= default;
|
|
||||||
URTensor(const FRTensor &ft);
|
URTensor(const FRTensor &ft);
|
||||||
|
|
||||||
~URTensor()
|
~URTensor() override = default;
|
||||||
override = default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void decrement(IntSequence &v) const override;
|
void decrement(IntSequence &v) const override;
|
||||||
|
@ -88,13 +86,11 @@ public:
|
||||||
FFSTensor::calcMaxOffset(nvar, d), c, d), nv(nvar)
|
FFSTensor::calcMaxOffset(nvar, d), c, d), nv(nvar)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
FRTensor(const FRTensor &ft)
|
FRTensor(const FRTensor &) = default;
|
||||||
|
FRTensor(FRTensor &&) = default;
|
||||||
= default;
|
|
||||||
FRTensor(const URTensor &ut);
|
FRTensor(const URTensor &ut);
|
||||||
|
|
||||||
~FRTensor()
|
~FRTensor() override = default;
|
||||||
override = default;
|
|
||||||
|
|
||||||
void increment(IntSequence &v) const override;
|
void increment(IntSequence &v) const override;
|
||||||
void decrement(IntSequence &v) const override;
|
void decrement(IntSequence &v) const override;
|
||||||
|
@ -133,11 +129,9 @@ public:
|
||||||
}
|
}
|
||||||
URSingleTensor(const std::vector<ConstVector> &cols);
|
URSingleTensor(const std::vector<ConstVector> &cols);
|
||||||
URSingleTensor(const ConstVector &v, int d);
|
URSingleTensor(const ConstVector &v, int d);
|
||||||
URSingleTensor(const URSingleTensor &ut)
|
URSingleTensor(const URSingleTensor &) = default;
|
||||||
|
URSingleTensor(URSingleTensor &&) = default;
|
||||||
= default;
|
~URSingleTensor() override = default;
|
||||||
~URSingleTensor()
|
|
||||||
override = default;
|
|
||||||
std::unique_ptr<FTensor> fold() const override;
|
std::unique_ptr<FTensor> fold() const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -155,11 +149,9 @@ public:
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
FRSingleTensor(const URSingleTensor &ut);
|
FRSingleTensor(const URSingleTensor &ut);
|
||||||
FRSingleTensor(const FRSingleTensor &ft)
|
FRSingleTensor(const FRSingleTensor &) = default;
|
||||||
|
FRSingleTensor(FRSingleTensor &&) = default;
|
||||||
= default;
|
~FRSingleTensor() override = default;
|
||||||
~FRSingleTensor()
|
|
||||||
override = default;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue