-
Notifications
You must be signed in to change notification settings - Fork 0
/
LR_lattice.h
44 lines (38 loc) · 1.38 KB
/
LR_lattice.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef LR_LATTICE_H
#define LR_LATTICE_H
#include "parallel.h"
#ifdef OS_WINDOWS
#include "io.h"
#include "sys\stat.h"
#elif defined(OS_LINUX)
#include <sys/stat.h>
#include <unistd.h>
#endif
#include "fcntl.h"
extern const int Size; //Lattice dimensions
extern const int Height; //Lattice dimensions
struct CellVariables //Phase space variables of one cell
{
double m;
double h;
double j;
double d;
double f;
double X;
double Cai;
double tension;
double s_tension;
};
extern double *V;
extern CellVariables *Cell;
extern double *I_ext;//External current
extern const double dt;//Integrating step (variable)
extern double D;//coupling parameter
extern int DrawNum;
double Coupling(int &I, int &J, int &K); // This function returns the value of coupling D*(...) of the cell [i,j]
extern void LattInit(const int &size, const int &height);//initializing function
void OdeSolve(int &ii, int &jj, int &kk);//this function solves the system with NO coupling on the interval 'dt'
inline int Substeps(double &vd);//devides step length due to value of Voltage (V)
extern void SolveEquations(double MaxTime /*time of calculations*/, MPI_Comm &GridComm, int &GridSize, MPI_Datatype &plane_x, MPI_Datatype &plane_y, MPI_Datatype &square);//Solves the task
extern void LattInit(const int &size , const int &height, const char *a);
#endif