Dendro  5.01
Dendro in Greek language means tree. The Dendro library is a large scale (262K cores on ORNL's Titan) distributed memory adaptive octree framework. The main goal of Dendro is to perform large scale multiphysics simulations efficeiently in mordern supercomputers. Dendro consists of efficient parallel data structures and algorithms to perform variational ( finite element) methods and finite difference mthods on 2:1 balanced arbitary adaptive octrees which enables the users to perform simulations raning from black holes (binary black hole mergers) to blood flow in human body, where applications ranging from relativity, astrophysics to biomedical engineering.
rhs.h
1 #ifndef RHS_H
2 #define RHS_H
3 
4 #include <cmath>
5 #include <iostream>
6 #include <time.h>
7 #include "derivs.h"
8 #include "parameters.h"
9 #include "nlsmUtils.h"
10 #include "mathUtils.h"
11 
12 #define IDX(i,j,k) ( (i) + nx * ( (j) + ny * (k) ) )
13 
14 #define deriv_x deriv42_x
15 #define deriv_y deriv42_y
16 #define deriv_z deriv42_z
17 
18 #define deriv_xx deriv42_xx
19 #define deriv_yy deriv42_yy
20 #define deriv_zz deriv42_zz
21 
22 #define adv_deriv_x deriv42adv_x
23 #define adv_deriv_y deriv42adv_y
24 #define adv_deriv_z deriv42adv_z
25 
26 #define ko_deriv_x ko_deriv42_x
27 #define ko_deriv_y ko_deriv42_y
28 #define ko_deriv_z ko_deriv42_z
29 
30 void nlsmRhs(double **uzipVarsRHS, const double **uZipVars,
31  const unsigned int &offset,
32  const double *ptmin, const double *ptmax, const unsigned int *sz,
33  const unsigned int &bflag);
34 
35 
36 void nlsm_bcs(double *f_rhs, const double *f,
37  const double *dxf, const double *dyf, const double *dzf,
38  const double *pmin, const double *pmax,
39  const double f_falloff, const double f_asymptotic,
40  const unsigned int *sz, const unsigned int &bflag);
41 
42 void fake_initial_data(double x, double y, double z, double *u);
43 
44 #endif