fydottable.c

Go to the documentation of this file.
00001 /*-----------------------------------------------------------------------------------*/
00002 /* INRIA */
00003 /*-----------------------------------------------------------------------------------*/
00004 #include "FTables.h"
00005 
00006         /***********************************
00007         * ode   (fydot and fjac ) 
00008         ***********************************/
00009 
00010 #define ARGS_fydot integer*,double *,double *,double *
00011         typedef void (*fydotf)(ARGS_fydot);
00012 
00013 #define ARGS_fjac integer*,double *,double *,integer*,integer*,double*,integer*
00014         typedef void (*fjacf)(ARGS_fjac);
00015 
00016 /**************** fydot ***************/
00017 extern void C2F(fex)(ARGS_fydot);
00018 extern void C2F(fex2)(ARGS_fydot);
00019 extern void C2F(fex3)(ARGS_fydot);
00020 extern void C2F(fexab)(ARGS_fydot);
00021 extern void C2F(loren)(ARGS_fydot);
00022 extern void C2F(arnol)(ARGS_fydot);
00023 extern void C2F(bcomp)(ARGS_fydot);
00024 extern void C2F(lcomp)(ARGS_fydot);
00025 void C2F(fydot)(ARGS_fydot);
00026 void C2F(setfydot)(char *name, int *rep);
00027 
00028 FTAB FTab_fydot[] ={
00029         {"arnol", (voidf)  C2F(arnol)},
00030         {"bcomp", (voidf)  C2F(bcomp)},
00031         {"fex", (voidf)  C2F(fex)},
00032         {"fex2", (voidf)  C2F(fex2)},
00033         {"fex3", (voidf)  C2F(fex3)},
00034         {"fexab", (voidf)  C2F(fexab)},
00035         {"lcomp", (voidf)  C2F(lcomp)},
00036         {"loren", (voidf)  C2F(loren)},
00037         {(char *) 0, (voidf) 0}};
00038 
00039 /**************** fjac ***************/
00040 extern void C2F(jex)(ARGS_fjac);
00041 void C2F(fjac)(ARGS_fjac);
00042 void C2F(setfjac)(char *name, int *rep);
00043 FTAB FTab_fjac[] =
00044 {
00045         {"jex", (voidf)  C2F(jex)},
00046         {(char *) 0, (voidf) 0}
00047 };
00048 
00049 /***********************************
00050 * Search Table for fydot 
00051 ***********************************/
00052 
00055 static fydotf fydotfonc ;
00056 
00059 void C2F(fydot)(integer *n, double *t, double *y, double *ydot)
00060 {
00061         (*fydotfonc)(n,t,y,ydot);
00062 }
00063 
00066 void C2F(setfydot)(char *name, int *rep)
00067 {
00068         fydotfonc = (fydotf) SetFunction(name,rep,FTab_fydot);
00069 }
00070 
00071 
00074 static fjacf fjacfonc ;
00075 
00078 void C2F(fjac)(integer *neq, double *t, double *y, integer *ml, integer *mu, double *pd, integer *nrpd)
00079 {
00080         (*fjacfonc)(neq, t, y, ml, mu, pd, nrpd);
00081 }
00082 
00085 void C2F(setfjac)(char *name, int *rep)
00086 {
00087         fjacfonc = (fjacf) SetFunction(name,rep,FTab_fjac);
00088 }

Generated on Sun Mar 4 15:03:48 2007 for Scilab [trunk] by  doxygen 1.5.1