|
dune-localfunctions 2.11
|
Loading...
Searching...
No Matches
tensor.hh
Go to the documentation of this file.
3// SPDX-FileCopyrightInfo: Copyright © DUNE Project contributors, see file LICENSE.md in module root
268 void assign(unsigned int r,const Derivatives<Fy,dimD,1,deriv,DerivativeLayoutNS::derivative> &y)
300 return reinterpret_cast<const Dune::FieldVector<F,LFETensor<F,dimD,dorder>::size*dimR>&>(tensor(a));
319 Base::template assign<Fy,dimRy>(reinterpret_cast<const FieldVector<Fy,Base::size*dimRy>&>(y),r);
320 tensor_[0] = reinterpret_cast<const FieldVector<Fy,ThisLFETensor::size>&>(y[Base::size*dimRy+r*ThisLFETensor::size]);
462 return reinterpret_cast<const Dune::FieldVector<F,LFETensor<F,dimD,dorder>::size*dimR>&>(tensor(a));
492 tensor_[0] = reinterpret_cast<const FieldVector<Fy,ThisLFETensor::size>&>(y[r*ThisLFETensor::size]);
793 struct DerivativeAssign<Derivatives<F1,dimD,dimR,deriv,DerivativeLayoutNS::value>,FieldVector<F2,dimR> >
805 struct DerivativeAssign<Derivatives<F1,dimD,dimR,deriv,DerivativeLayoutNS::derivative>,FieldVector<F2,dimR> >
818 struct DerivativeAssign<Derivatives<F1,dimD,1,deriv,DerivativeLayoutNS::value>,FieldVector<F2,dimR> >
830 struct DerivativeAssign<Derivatives<F1,dimD,1,deriv,DerivativeLayoutNS::derivative>,FieldVector<F2,dimR> >
842 struct DerivativeAssign<Derivatives<F1,dimD,1,deriv,DerivativeLayoutNS::value>,FieldVector<F2,1> >
854 struct DerivativeAssign<Derivatives<F1,dimD,1,deriv,DerivativeLayoutNS::derivative>,FieldVector<F2,1> >
900 std::ostream &operator<< ( std::ostream &out, const Derivatives< F,dimD,dimR,deriv,DerivativeLayoutNS::value > &d )
913 std::ostream &operator<< ( std::ostream &out, const Derivatives< F,dimD,dimR,0,DerivativeLayoutNS::derivative > &d )
925 std::ostream &operator<< ( std::ostream &out, const Derivatives< F,dimD,dimR,0,DerivativeLayoutNS::value > &d )
936 template <class F,int dimD,int dimR,unsigned int deriv,DerivativeLayoutNS::DerivativeLayout layout>
937 std::ostream &operator<< ( std::ostream &out, const std::vector<Derivatives< F,dimD,dimR,deriv,layout > > &y )
int size() const
std::ostream & operator<<(std::ostream &s, const bigunsignedint< k > &x)
bigunsignedint< k > & operator*=(const bigunsignedint< k > &x)
void field_cast(const F1 &f1, F2 &f2)
a helper class to cast from one field to another
Definition field.hh:160
void assign(T &dst, const T &src, bool mask)
constexpr derived_type & axpy(const field_type &a, const DenseVector< Other > &x)
T real_type
Definition tensor.hh:33
const field_type & operator[](const unsigned int i) const
Definition tensor.hh:62
typename FieldTraits< field_type >::real_type real_type
Definition tensor.hh:97
Definition tensor.hh:115
void assign(const LFETensor< Fy, dimD, 0 > &y)
Definition tensor.hh:157
Definition tensor.hh:180
F field_type
Definition tensor.hh:186
typename FieldTraits< field_type >::real_type real_type
Definition tensor.hh:187
Definition tensor.hh:194
F Field
Definition tensor.hh:199
Derivatives< F, dimD, dimR, deriv, DerivativeLayoutNS::value > This
Definition tensor.hh:195
This & operator=(const Dune::FieldVector< LFETensor< F, dimD, dorder >, dimR > &t)
Definition tensor.hh:219
F field_type
Definition tensor.hh:200
Derivatives< F, dimD, dimR, deriv-1, DerivativeLayoutNS::value > Base
Definition tensor.hh:196
const Dune::FieldVector< LFETensor< F, dimD, dorder >, dimR > & tensor(const std::integral_constant< int, dorder > &dorderVar) const
Definition tensor.hh:339
void assign(const FieldVector< Fy, size *dimRy > &y, unsigned int r)
Definition tensor.hh:317
void assign(const Derivatives< Fy, dimD, dimR, deriv, DerivativeLayoutNS::value > &y)
Definition tensor.hh:243
void assign(const Derivatives< Fy, dimD, dimR, dy, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:330
This & operator=(const F &f)
Definition tensor.hh:208
const ThisLFETensor & operator[](int r) const
Definition tensor.hh:312
Dune::FieldVector< F, LFETensor< F, dimD, dorder >::size *dimR > & block()
Definition tensor.hh:303
LFETensor< F, dimD, deriv > ThisLFETensor
Definition tensor.hh:197
void assign(unsigned int r, const Derivatives< Fy, dimD, 1, deriv, DerivativeLayoutNS::value > &y)
Definition tensor.hh:263
const Dune::FieldVector< F, LFETensor< F, dimD, dorder >::size *dimR > & block() const
Definition tensor.hh:296
Dune::FieldVector< LFETensor< F, dimD, dorder >, dimR > & tensor(const std::integral_constant< int, dorder > &dorderVar)
Definition tensor.hh:350
const Block & block() const
Definition tensor.hh:277
void axpy(const F &a, const This &y)
Definition tensor.hh:236
void assign(const Derivatives< Fy, dimD, dimR, deriv, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:249
This & operator=(const Dune::FieldVector< ThisLFETensor, dimR > &t)
Definition tensor.hh:213
void assign(unsigned int r, const Derivatives< Fy, dimD, 1, deriv, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:268
This & operator=(const Block &t)
Definition tensor.hh:224
Dune::FieldVector< F, size > Block
Definition tensor.hh:206
Dune::FieldVector< ThisLFETensor, dimR > tensor_
Definition tensor.hh:359
Dune::FieldVector< LFETensor< F, dimD, deriv >, dimR > & tensor(const std::integral_constant< int, deriv > &dorderVar)
Definition tensor.hh:355
Dune::FieldVector< LFETensor< F, dimD, dorder >, dimR > & tensor()
Definition tensor.hh:290
void assign(const Derivatives< Fy, dimD, dimRy, deriv, DerivativeLayoutNS::value > &y, unsigned int r)
Definition tensor.hh:257
const Dune::FieldVector< LFETensor< F, dimD, dorder >, dimR > & tensor() const
Definition tensor.hh:283
const Dune::FieldVector< LFETensor< F, dimD, deriv >, dimR > & tensor(const std::integral_constant< int, deriv > &dorderVar) const
Definition tensor.hh:344
ThisLFETensor & operator[](int r)
Definition tensor.hh:309
Block & block()
Definition tensor.hh:273
void assign(unsigned int r, const FieldVector< Fy, size/dimR > &y)
Definition tensor.hh:323
Definition tensor.hh:364
ThisLFETensor & operator[](int r)
Definition tensor.hh:442
LFETensor< F, dimD, 0 > ThisLFETensor
Definition tensor.hh:366
Dune::FieldVector< F, LFETensor< F, dimD, dorder >::size *dimR > & block()
Definition tensor.hh:465
Dune::FieldVector< LFETensor< F, dimD, 0 >, dimR > & tensor(const std::integral_constant< int, 0 > &dorderVar)
Definition tensor.hh:479
void assign(const Derivatives< Fy, dimD, dimR, 0, DerivativeLayoutNS::value > &y)
Definition tensor.hh:407
F Field
Definition tensor.hh:368
Derivatives< F, dimD, dimR, 0, DerivativeLayoutNS::value > This
Definition tensor.hh:365
void assign(const Derivatives< Fy, dimD, dimR, dy, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:484
void assign(const Derivatives< Fy, dimD, dimRy, 0, DerivativeLayoutNS::value > &y, unsigned int r)
Definition tensor.hh:418
const Dune::FieldVector< LFETensor< F, dimD, 0 >, dimR > & tensor() const
Definition tensor.hh:449
Dune::FieldVector< LFETensor< F, dimD, 0 >, dimR > & tensor()
Definition tensor.hh:453
This & operator=(const Block &t)
Definition tensor.hh:390
F field_type
Definition tensor.hh:369
const ThisLFETensor & operator[](int r) const
Definition tensor.hh:445
const Dune::FieldVector< LFETensor< F, dimD, 0 >, dimR > & tensor(const std::integral_constant< int, 0 > &dorderVar) const
Definition tensor.hh:474
Dune::FieldVector< F, size > Block
Definition tensor.hh:375
const Block & block() const
Definition tensor.hh:437
const Dune::FieldVector< F, LFETensor< F, dimD, dorder >::size *dimR > & block() const
Definition tensor.hh:458
void assign(unsigned int r, const Derivatives< Fy, dimD, 1, 0, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:428
void assign(const Derivatives< Fy, dimD, dimR, 0, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:412
void assign(unsigned int r, const Derivatives< Fy, dimD, 1, 0, DerivativeLayoutNS::value > &y)
Definition tensor.hh:423
This & operator=(const Dune::FieldVector< ThisLFETensor, dimR > &t)
Definition tensor.hh:384
void assign(const FieldVector< Fy, size *dimRy > &y, unsigned int r)
Definition tensor.hh:490
Dune::FieldVector< ThisLFETensor, dimR > tensor_
Definition tensor.hh:499
void assign(unsigned int r, const FieldVector< Fy, size/dimR > &y)
Definition tensor.hh:495
This & operator=(const FF &f)
Definition tensor.hh:378
Block & block()
Definition tensor.hh:433
void axpy(const F &a, const This &y)
Definition tensor.hh:402
Definition tensor.hh:505
This & operator=(const FF &f)
Definition tensor.hh:519
Block & block()
Definition tensor.hh:561
F Field
Definition tensor.hh:509
const Block & block() const
Definition tensor.hh:565
F field_type
Definition tensor.hh:510
void assign(unsigned int r, const Derivatives< Fy, dimD, 1, deriv, layouty > &y)
Definition tensor.hh:556
ScalarDeriv & operator[](int r)
Definition tensor.hh:570
void assign(const Derivatives< Fy, dimD, dimR, deriv, DerivativeLayoutNS::value > &y)
Definition tensor.hh:549
Derivatives< F, dimD, dimR, deriv, DerivativeLayoutNS::derivative > This
Definition tensor.hh:506
Derivatives< F, dimD, 1, deriv, DerivativeLayoutNS::value > ScalarDeriv
Definition tensor.hh:507
const ScalarDeriv & operator[](int r) const
Definition tensor.hh:573
void axpy(const FF &a, const This &y)
Definition tensor.hh:537
This & operator=(const Block &t)
Definition tensor.hh:524
Dune::FieldVector< F, size > Block
Definition tensor.hh:516
Dune::FieldVector< ScalarDeriv, dimR > deriv_
Definition tensor.hh:577
void assign(const Derivatives< Fy, dimD, dimR, deriv, DerivativeLayoutNS::derivative > &y)
Definition tensor.hh:543
Definition tensor.hh:585
static void apply(unsigned int r, const Field &a, const Vec1 &x, Vec2 &y)
Definition tensor.hh:587
static void apply(unsigned int r, const Field &a, const Vec1 &x, Vec2 &y)
Definition tensor.hh:601
Derivatives< F1, dimD, dimR, d, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:599
Derivatives< F1, dimD, dimR, d, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:615
static void apply(unsigned int r, const Field &a, const Vec1 &x, Vec2 &y)
Definition tensor.hh:617
Derivatives< F1, dimD, 1, d, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:631
static void apply(unsigned int r, const Field &a, const Vec1 &x, Vec2 &y)
Definition tensor.hh:633
static void apply(unsigned int r, const Field &a, const Vec1 &x, Vec2 &y)
Definition tensor.hh:648
Derivatives< F1, dimD, 1, d, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:646
Definition tensor.hh:664
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:665
Derivatives< F1, dimD, dimR, deriv, layout > Vec1
Definition tensor.hh:675
Derivatives< F2, dimD, dimR, deriv, layout > Vec2
Definition tensor.hh:676
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:677
Derivatives< F1, dimD, dimR, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:687
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:689
Derivatives< F2, dimD, dimR, deriv, DerivativeLayoutNS::derivative > Vec2
Definition tensor.hh:688
Derivatives< F2, dimD, dimR, deriv, DerivativeLayoutNS::value > Vec2
Definition tensor.hh:700
Derivatives< F1, dimD, dimR, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:699
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:701
Derivatives< F1, dimD, 1, deriv, layout > Vec1
Definition tensor.hh:711
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:713
Derivatives< F2, dimD, dimR, deriv, DerivativeLayoutNS::value > Vec2
Definition tensor.hh:712
Derivatives< F1, dimD, 1, deriv, layout > Vec1
Definition tensor.hh:723
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:725
Derivatives< F2, dimD, dimR, deriv, DerivativeLayoutNS::derivative > Vec2
Definition tensor.hh:724
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:735
Derivatives< F2, dimD, 1, deriv, DerivativeLayoutNS::value > Vec2
Definition tensor.hh:736
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:737
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:747
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:749
Derivatives< F2, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec2
Definition tensor.hh:748
Derivatives< F2, dimD, 1, deriv, DerivativeLayoutNS::value > Vec2
Definition tensor.hh:760
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:761
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:759
Derivatives< F2, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec2
Definition tensor.hh:772
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:773
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:771
F2 Vec2
Definition tensor.hh:784
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:785
Derivatives< F1, dimD, 1, deriv, layout > Vec1
Definition tensor.hh:783
Derivatives< F1, dimD, dimR, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:795
FieldVector< F2, dimR > Vec2
Definition tensor.hh:796
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:797
Derivatives< F1, dimD, dimR, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:807
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:809
FieldVector< F2, dimR > Vec2
Definition tensor.hh:808
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:820
FieldVector< F2, dimR > Vec2
Definition tensor.hh:821
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:822
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:834
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:832
FieldVector< F2, dimR > Vec2
Definition tensor.hh:833
FieldVector< F2, 1 > Vec2
Definition tensor.hh:845
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::value > Vec1
Definition tensor.hh:844
static void apply(unsigned int r, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:846
Derivatives< F1, dimD, 1, deriv, DerivativeLayoutNS::derivative > Vec1
Definition tensor.hh:856
static void apply(unsigned int, const Vec1 &vec1, Vec2 &vec2)
Definition tensor.hh:858
FieldVector< F2, 1 > Vec2
Definition tensor.hh:857
T endl(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8