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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
/* This structure contains all of the input data for the setubv routine
Those values which are arrays and those
which are input and output are markered as such*/
#ifndef AUTO_TYPES_H
#define AUTO_TYPES_H
typedef struct {
integer ndim, ips, ncol, nbc, nint, ncb, nrc, nra, nca, na; /*scalar input */
FUNI_TYPE((*funi)); /*scalar input*/
ICNI_TYPE((*icni)); /*scalar input*/
integer ndxloc; /*scalar input*/
iap_type *iap; /*array input size: NIAP*/
rap_type *rap; /*array input size: NRAP*/
doublereal *par; /*array input size: NPARX2*/
integer *icp; /*array input size: NPARX2*/
doublereal *aa; /*array output (but must be initialized to 0) size: *nca X *nra X *na */
doublereal *bb; /*array output (but must be initialized to 0) size: *ncb X *nra X *na */
doublereal *cc; /*array output (but must be initialized to 0) size: *nca X *nrc X *na */
doublereal *dd; /*array output (but must be initialized to 0) size: *ncb X *nrc */
doublereal *fa; /*array output (but must be initialized to 0) size: *nra X *na */
doublereal *fc; /*array output (but must be initialized to 0) size: *nrc */
doublereal *ups; /*array input size: *ndxloc X (*ndim X *ncol) */
doublereal *uoldps; /*array input size: *ndxloc X (*ndim X *ncol) */
doublereal *udotps; /*array input size: *ndxloc X (*ndim X *ncol) */
doublereal *upoldp; /*array input size: *ndxloc X (*ndim X *ncol) */
doublereal *dtm; /*array input size: *na */
integer loop_start; /*scalar input*/
integer loop_end; /*scalar input*/
integer loop_offset; /*scalar input*/
doublereal *wp; /*array input size: MCL2*MCL1 */
doublereal *wt; /*array input size: MCL2*MCL1 */
doublereal *wi; /*array input size: MCL2*MCL1??? Not sure of this one yet */
doublereal *thu; /*array input size: ndim * 8 */
doublereal *thl; /*array input size: NPARX */
doublereal *rldot; /*array input size: NPARX */
BCNI_TYPE((*bcni));
} setubv_parallel_arglist;
/* This structure contains all of the input data for the conpar routine
Those values which are arrays and those
which are input and output are markered as such*/
typedef struct {
integer *nov, *nra, *nca; /*scalars input*/
doublereal *a; /*array input and output size: nca X nra X na */
integer *ncb; /*scalar input */
doublereal *b; /*array input and output size: ncb X nra X na*/
integer *nbc, *nrc; /*scalar input */
doublereal *c; /*array input and output size: nca X nrc X *na*/
doublereal *d; /*array input and output size: ncb X nrc*/
integer *irf; /*array input size: na X nra*/
integer *icf; /*array input: na X nca*/
integer loop_start; /*scalar input*/
integer loop_end; /*scalar output*/
} conpar_parallel_arglist;
#endif
|