Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F82274199
signalAndMechanicalForces.hpp
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Tue, Sep 10, 12:39
Size
1 KB
Mime Type
text/x-c++
Expires
Thu, Sep 12, 12:39 (2 d)
Engine
blob
Format
Raw Data
Handle
20674934
Attached To
R9411 tisue modeling
signalAndMechanicalForces.hpp
View Options
#ifndef __SIGNAL_AND_MECHANICAL_FORCES_H__
#define __SIGNAL_AND_MECHANICAL_FORCES_H__
#include <iostream>
#include <boost/array.hpp>
#include "mechanicalForces.hpp"
template <class Interactor>
class SignalAndMechanicalForces:public MechanicalForces{
protected:
Interactor signaling;
uint state_dim;
double gamma_d;
double h_dc;
double dprod;
double hfdp;
double del_sig;
double tau_sig;
double tau_mech;
protected:
// virtual bool isHC(Cell *c){return m_signal[c->id()]<0.05;}
// virtual bool isSC(Cell *c){return m_signal[c->id()]>=2;}
// double weightfunc(double s)
// {double a=pow(h_we,hill_co);double b=pow(s,hill_co);return we_min+we_r*a/(a+b);}
public:
SignalAndMechanicalForces(){initParameters();}
void initParameters();
void operator()(const state_type &y, state_type &dydt, const double t);
void noMechanics(){k_tension=k_pressure=tau_mech=0.0;noPerturbation();}
void delaminate(int cell);
void fromState(const state_type &s){
MechanicalForces::fromState(s);signaling.fromState(s);}
// virtual float getWeight(Boundary *b);
virtual float getWeight(Boundary *b,const state_type &y);
// void setState(state_type& s){MechanicalForces::setState(s);CellInteraction::setState(s);}
// fill up the state vector
virtual void updateState(state_type &s);
// fill up in state with delta
virtual void initState(state_type &s, double *delta);
virtual uint setStateVectorIndex();
virtual void setLattice(Lattice *lat);
virtual void updateSignal(const state_type &y){signaling.updateSignal(y);}
void fillSignalingVector(double *v, int i=0)
{signaling.fillVector(v,i);}
std::pair<int,int> getSignalingOutputSize(int i=0)const
{return signaling.getOutputSize(i);}
uint getSignalingOutputNumber()const{return signaling.getOutputNumber();}
// void fillSignalVector(double *v); // in Mechanical forces
// void findT1Transitions();
// virtual void checkT1Transition(Boundary *b);
// bool fromState(const state_type &y);
};
#endif
Event Timeline
Log In to Comment