Пример #1
0
/*--------------------------------------------------------------------------*/
int gw_special_functions(void)
{
    Rhs = Max(0, Rhs);
    if (setjmp_slatec_jmp_env())
    {
        Scierror(999, "%s: Wrong value for input argument: Positive expected.\n", Tab[Fin - 1].name);
        return 0;
    }

    if (pvApiCtx == NULL)
    {
        pvApiCtx = (StrCtx*)MALLOC(sizeof(StrCtx));
    }

    pvApiCtx->pstName = (char*)Tab[Fin - 1].name;
    callFunctionFromGateway(Tab, SIZE_CURRENT_GENERIC_TABLE(Tab));
    return 0;
}
Пример #2
0
void  C2F(dassl)(void *res, int *neq, double *t, double *y, double *yprime, double *tout,
                 int *info, double *rtol, double *atol, int *idid, double *rwork,
                 int *lrw, int *iwork, int *liw, double *rpar, int *ipar, void *jac)
{
    int itemp[12], i;

    if (setjmp_slatec_jmp_env())
    {
        return;
    }

    /* Nest instruction is a patch for sun solaris 5.8,
    without this trick the call to ddassl hangs Scilab */
    for (i = 0; i < 11; i++)
    {
        itemp[i] = info[i];
    }

    C2F(ddassl)(res, neq, t, y, yprime, tout, itemp, rtol, atol, idid, rwork,
                lrw, iwork, liw, rpar, ipar, jac);
}