hemocell
Loading...
Searching...
No Matches
Namespaces | Macros
hemoCellParticleField.cpp File Reference
#include "hemoCellParticleField.h"
#include "hemocell.h"
#include "octree.h"
#include "mollerTrumbore.h"
#include "bindingField.h"
#include "interiorViscosity.h"
#include <Eigen3/Eigenvalues>
Include dependency graph for hemoCellParticleField.cpp:

Namespaces

namespace  hemo
 

Macros

#define inner_loop
 

Macro Definition Documentation

◆ inner_loop

#define inner_loop
Value:
const int & l_index = grid_index(x,y,z); \
const int & n_index = grid_index(xx,yy,zz); \
for (unsigned int i = 0; i < particle_grid_size[l_index];i++){ \
for (unsigned int j = 0; j < particle_grid_size[n_index];j++){ \
HemoCellParticle & lParticle = particles[particle_grid[l_index][i]]; \
HemoCellParticle & nParticle = particles[particle_grid[n_index][j]]; \
if (&nParticle == &lParticle) { continue; } \
if (lParticle.sv.cellId == nParticle.sv.cellId) { continue; } \
const hemo::Array<T,3> dv = lParticle.sv.position - nParticle.sv.position; \
const T distance = sqrt(dv[0]*dv[0]+dv[1]*dv[1]+dv[2]*dv[2]); \
if (distance < r_cutoff) { \
const hemo::Array<T, 3> rfm = r_const * (1/(distance/r_cutoff)) * (dv/distance); \
lParticle.sv.force_repulsion = lParticle.sv.force_repulsion + rfm; \
nParticle.sv.force_repulsion = nParticle.sv.force_repulsion - rfm; \
} \
} \
}
Definition hemoCellParticle.h:40
serializeValues_t sv
Definition hemoCellParticle.h:65
double T
Definition constant_defaults.h:118
Definition array.h:39
hemo::Array< T, 3 > position
Definition hemoCellParticle.h:47
hemo::Array< T, 3 > force_repulsion
Definition hemoCellParticle.h:49
plint cellId
Definition hemoCellParticle.h:53