#ifndef IMPROVED_INCLUDED #define IMPROVED_INCLUDED #include "basis.h" #include "fortran.h" /* global_kt is twice the maximum global value for K it is set by the function initspectrum(...); */ unsigned int global_kt; /* Functional forms for interactions */ typedef struct { element mass; element ggn; element annihilate; element lambda; } fun22_forms; typedef struct { element ggn; element lambda; } fun13_forms; fun22_forms *fun22[KKMAX][KKMAX]; fun13_forms *fun13[KKMAX][KKMAX]; /* from file: improved.c */ element mapcouplings(element *couplings, unsigned int this_kt); /*Find beta & transform matrix elements*/ void free_improved(void); /* free memory allocated for fun22 and fun13. */ void print_interaction_memory(FILE *); /* print memory usage of the interactions */ #if IMPROVED==3 element inner13(int,int,int,int,element,integer *); #endif /* integration routines for 1->3 improved matrix elements*/ /* the following are internal functions to be called by FORTRAN routines */ extern doublereal f1(doublereal *); extern doublereal f2(doublereal *); extern doublereal f3(doublereal *); extern doublereal f11(doublereal *); extern doublereal f22(doublereal *); extern doublereal f33(doublereal *); extern fsub iovect(integer *, integer *, doublereal *, integer *, integer *); extern fsub vectop(integer *, integer *, doublereal *, doublereal *); #endif