static void wbstring(struct wcontext* context, const void* data, size_t length) { wint(context, length); wchar(context, ':'); wmemory(context, data, length); }
int setubv(integer ndim, integer ips, integer na, integer ncol, integer nint, #ifdef MANIFOLD integer nalc, #endif integer ncb, integer nrc, integer nra, integer nca, FUNI_TYPE((*funi)), ICNI_TYPE((*icni)), integer ndxloc, iap_type *iap, rap_type *rap, doublereal *par, integer *icp, doublereal *rds, doublereal ***aa, doublereal ***bb, doublereal ***cc, doublereal **dd, doublereal **fa, doublereal *fc, doublereal *rlcur, doublereal *rlold, doublereal *rldot, doublereal **ups, doublereal **uoldps, doublereal **udotps, doublereal **upoldp, doublereal **dups, doublereal *dtm, doublereal *thl, doublereal *thu) { doublereal *wi, **wp, **wt; #ifdef USAGE struct rusage *initialization_usage,*fc_usage,*parallel_overhead_usage; usage_start(&initialization_usage); #endif wi = (doublereal *)malloc(sizeof(doublereal)*(ncol+1) ); wp = dmatrix(ncol+1, ncol); wt = dmatrix(ncol+1, ncol); wint(ncol + 1, wi); genwts(ncol, ncol + 1, wt, wp); #ifdef USAGE usage_end(initialization_usage,"setubv initialization"); #endif #ifdef USAGE usage_start(&fc_usage); #endif setubv_pseudo_arclength(ndim, #ifdef MANIFOLD nalc, #endif ncb, nrc, iap, rds, dd, fc, rlcur, rlold, rldot, udotps, dups, dtm, thl, thu); #ifdef USAGE usage_end(fc_usage,"setubv make fc"); #endif switch(global_setubv_type) { #ifdef PTHREADS case SETUBV_PTHREADS: { setubv_threads_wrapper(ndim, na, ncol, nint, #ifdef MANIFOLD nalc, #endif ncb, nrc, nra, funi, icni, iap, rap, par, icp, aa, bb, cc, dd, fa, fc, ups, uoldps, udotps, upoldp, dtm, thu, wi, wp, wt); break; } #endif #ifdef MPI case SETUBV_MPI: if(global_verbose_flag) printf("Setubv MPI start\n"); setubv_mpi_wrapper(ndim, na, ncol, nint, #ifdef MANIFOLD nalc, #endif ncb, nrc, nra, nca, ndxloc, iap, rap, par, icp, fa, fc, rldot, ups, uoldps, udotps, upoldp, dtm, thl, thu, wi, wp, wt); if(global_verbose_flag) printf("Setubv MPI end\n"); break; #endif default: setubv_make_aa_bb_cc_dd(ndim, na, ncol, nint, #ifdef MANIFOLD nalc, #endif ncb, nrc, nra, funi, icni, iap, rap, par, icp, aa, bb, cc, dd, fa, fc, ups, uoldps, udotps, upoldp, dtm, thu, wi, wp, wt); break; } free(wi ); free_dmatrix(wp); free_dmatrix(wt); return 0; }
static void winteger(struct wcontext* context, size_t value) { wchar(context, 'i'); wint(context, value); wchar(context, 'e'); }