Aller au contenu

Mathc initiation/Fichiers h : c61fc

Un livre de Wikilivres.


Sommaire


Installer ce fichier dans votre répertoire de travail.

kgt_c.h
/* --------------------------------- */
/* save as kgt_c.h                   */
/* --------------------------------- */
void eq_Tan(
double (*P_f) (double t),
double (*P_g) (double t),
double (*PDgDf)(double t),
double t
)
{
double a =  (*PDgDf)(t);
double b =(-(*PDgDf)(t)*(*P_f)(t)+(*P_g)(t));

 printf(" %0.3f*x %+0.3f", a, b);
}
/* --------------------------------- */
void G_TanLy(
CTRL_splot w,

double (*P_f) (double t),
double (*P_g) (double t),
double (*PDgDf)(double t),

tvalue t
)
{
double a =  (*PDgDf)(t.value);
double b =(-(*PDgDf)(t.value)*(*P_f)(t.value)+(*P_g)(t.value));

FILE   *fp = fopen("a_main.plt","w");

 fprintf(fp," reset\n"
            " set size ratio -1\n"
            " set zeroaxis lt 8\n" 
            " plot [%0.3f:%0.3f] [%0.3f:%0.3f]\\\n"
            " \"a_curv\" with line lt  6 lw 3,\\\n"
            " %0.6f*x %+0.6f,\\\n"
            " \"ayP\" with linesp lt 7 lw 3\n", 
              w.xmin,w.xmax,w.ymin,w.ymax, 
             a,b);
 fclose(fp);

 fp = fopen("ayP","w");
 fprintf(fp," %0.6f   %0.6f\n" 
            "    0.   %0.6f\n", 
            (*P_f)(t.value), (*P_g)(t.value),
            (*P_g)(t.value)- (*PDgDf)(t.value)*(*P_f)(t.value));
 fclose(fp);
 
 fp = fopen("a_curv","w");
 for(t.value=t.min; t.value<=t.max; t.value+=t.step)
     fprintf(fp," %6.6f   %6.6f\n",(*P_f)(t.value),(*P_g)(t.value));
 fclose(fp);
}
/* --------------------------------- */
/* --------------------------------- */