v0.10.0
Classes | Functions | Variables
BasicFeTools.hpp File Reference

Go to the source code of this file.

Classes

struct  CacheParams
 
struct  BlockParamData
 
struct  DataFromMove
 
struct  RollerData
 
struct  FePrePostProcess
 Not used at this stage. Could be used to do some calculations, before assembly of local elements. More...
 
struct  LoadScale
 Implement the scale factor for Newton-Raphson method. More...
 
struct  EraseLHSRows
 
struct  EraseRHSRows
 

Functions

template<typename T1 , typename T2 >
int getClosestRollerID (Tensor1< T1, 3 > &t_coords, Tensor1< T2, 2 > &t_disp, vector< RollerData > &rollerData)
 

Variables

static Index< 'i', 3 > i
 
static Index< 'j', 3 > j
 
static Index< 'k', 3 > k
 
static Index< 'l', 3 > l
 
static Index< 'm', 3 > m
 
static Index< 'n', 3 > n
 
static Index< 'o', 3 > o
 
static Index< 'p', 3 > p
 
static Number< 0 > N0
 
static Number< 1 > N1
 
static Number< 2 > N2
 
BlockParamDatacache
 

Function Documentation

◆ getClosestRollerID()

template<typename T1 , typename T2 >
int getClosestRollerID ( Tensor1< T1, 3 > &  t_coords,
Tensor1< T2, 2 > &  t_disp,
vector< RollerData > &  rollerData 
)

Definition at line 256 of file BasicFeTools.hpp.

257  {
258 
259  std::vector<double> dists;
261 
262  for (auto &roller : rollerData) {
263  // auto t_center = roller.getRollerCenter();
264  // Tensor1<double, 2> t_d;
265  // t_d(i) = t_coords(i) - t_center(i) + t_disp(i);
266  auto t_normal = roller.getNormal(t_coords, t_disp);
267  double dist = t_disp(i) * t_normal(i) - roller.getGap0();
268  // Tensor1<double, 2> t_normal;
269  // t_normal(i) = t_d(i) / dist;
270  // dist = -t_normal(i) * (t_d(i) - t_normal(i) * roller.rAdius);
271  // dist = abs(dist);
272  dists.push_back(dist);
273  }
274  auto it = std::min_element(dists.begin(), dists.end());
275  auto nb = distance(dists.begin(), it);
276 
277  return nb;
278 };
static Index< 'i', 3 > i
Definition: single.cpp:3

Variable Documentation

◆ cache

Definition at line 51 of file multifield_plasticity.cpp.

◆ i

Index<'i', 3> i
static

◆ j

Index<'j', 3> j
static

◆ k

Index<'k', 3> k
static

◆ l

Index<'l', 3> l
static

◆ m

Index<'m', 3> m
static

◆ n

Index<'n', 3> n
static

◆ N0

Number<0> N0
static
Examples
EshelbianOperators.cpp.

Definition at line 62 of file BasicFeTools.hpp.

◆ N1

Number<1> N1
static
Examples
EshelbianOperators.cpp.

Definition at line 63 of file BasicFeTools.hpp.

◆ N2

Number<2> N2
static
Examples
EshelbianOperators.cpp.

Definition at line 64 of file BasicFeTools.hpp.

◆ o

Index<'o', 3> o
static

◆ p

Index<'p', 3> p
static