Aller au contenu

Mathc initiation/Fichiers h : c44a3

Un livre de Wikilivres.


Sommaire


Installer ce fichier dans votre répertoire de travail.


kg_curv2d.h
/* --------------------------------- */
/* save as kg_curv2d.h               */
/* --------------------------------- */
void G_Curve_tang_2d(
CTRL_splot w,
double (*P_f)(double t),
double (*P_g)(double t),
tvalue t,
tvalue L_tan
)
{
FILE   *fp = fopen("a_main.plt","w");

   fprintf(fp," set zeroaxis lt 8\n" 
              " set grid\n\n" 
              " plot [%0.3f:%0.3f] [%0.3f:%0.3f]\\\n"
              " \"a_curve\"     with linespoints lt 6,\\\n" 
              " \"a_vector\"    with linespoints lt 8 lw 3,\\\n" 
              " \"a_tan\"       with lines       lt 7 lw 3\n",               
                w.xmin,w.xmax,w.ymin,w.ymax);
   fclose(fp);

 fp = fopen("a_vector","w");
            fprintf(fp,"  0  0   \n %6.5f  %6.5f  \n",
                   (*P_f)(t.value),(*P_g)(t.value));
      fclose(fp);

 fp = fopen("a_tan","w");
      for( L_tan.value=L_tan.min; 
           L_tan.value<=L_tan.max+L_tan.step; 
           L_tan.value+=L_tan.step)
           
         fprintf(fp," %6.3f  %6.3f\n",
                (*P_f)(t.value)+fx_x((*P_f),t.value,H)*L_tan.value,
                (*P_g)(t.value)+fx_x((*P_g),t.value,H)*L_tan.value);
      fclose(fp);
      
 fp = fopen("a_curve","w");
      for(t.value=t.min; t.value<=t.max+t.step; t.value+=t.step)
          fprintf(fp," %6.3f  %6.3f\n",
                 (*P_f)(t.value),(*P_g)(t.value));
      fclose(fp);      
}
/* --------------------------------- */
/* --------------------------------- */