Commit a77ecddb authored by Giovanni La Mura's avatar Giovanni La Mura
Browse files

Hide dependency on SPHERE subroutines behind include guardian

parent 8bdbebc5
Loading
Loading
Loading
Loading
+4 −39
Original line number Diff line number Diff line
@@ -17,50 +17,15 @@
#include "Commons.h"
#endif

#ifndef INCLUDE_SPH_SUBS_H_
#include "../include/sph_subs.h"
#endif

#ifndef INCLUDE_CLU_SUBS_H_
#define INCLUDE_CLU_SUBS_H_

#include <complex>

// >>> DECLARATION OF SPH_SUBS <<<
extern void aps(double ****zpv, int li, int nsph, C1 *c1, double sqk, double *gaps);
extern std::complex<double> dconjg(std::complex<double> value);
extern double cg1(int lmpml, int mu, int l, int m);
extern void dme(
		int li, int i, int npnt, int npntts, double vk, double exdc, double exri,
		C1 *c1, C2 *c2, int &jer, int &lcalc, std::complex<double> &arg
);
extern void rabas(
		  int inpol, int li, int nsph, C1 *c1, double **tqse, std::complex<double> **tqspe,
		  double **tqss, std::complex<double> **tqsps
);
extern void rbf(int n, double x, int &nm, double sj[]);
extern void rnf(int n, double x, int &nm, double sy[]);
extern void mmulc(std::complex<double> *vint, double **cmullr, double **cmul);
extern void sphar(double cth, double sth, double cph, double sph, int lm, std::complex<double> *ylm);
extern void thdps(int lm, double ****zpv);
extern void upvmp(
		  double thd, double phd, int icspnv, double &cost, double &sint,
		  double &cosp, double &sinp, double *u, double *up, double *un
);
extern void upvsp(
		  double *u, double *upmp, double *unmp, double *us, double *upsmp, double *unsmp,
		  double *up, double *un, double *ups, double *uns, double *duk, int &isq,
		  int &ibf, double &scand, double &cfmp, double &sfmp, double &cfsp, double &sfsp
);
extern void wmamp(
		  int iis, double cost, double sint, double cosp, double sinp, int inpol,
		  int lm, int idot, int nsph, double *arg, double *u, double *up,
		  double *un, C1 *c1
);
extern void wmasp(
		  double cost, double sint, double cosp, double sinp, double costs, double sints,
		  double cosps, double sinps, double *u, double *up, double *un, double *us,
		  double *ups, double *uns, int isq, int ibf, int inpol, int lm, int idot,
		  int nsph, double *argi, double *args, C1 *c1
);
// >>> END OF SPH_SUBS DECLARATION <<<

/*! \brief C++ porting of APC
 *
 * \param zpv: `double ****`