/* $Id: refract.c,v 1.3 2004/02/26 01:12:07 grog Exp $ */ /* Print a table of refractive index against Brix/Plato */ #include #include #include #include #include #include #include #include #include #include #include #include "beer.h" int main (int argc, char *argv []) { double brix; double ri; double sg; double attenuation; int verbose = 0; /* for later development */ if (argc > 1) { fprintf (stderr, "No arguments, please\n"); return 1; } printf ("
\nBrix\tSpecific Refractive\t--  Potential alcohol (v/v) --\n"
	  "\tGravity\t Index\t\t70%%\t72%%\t74%%\t76%%\t78%% attenuation\n\n");
  for (brix = 0; brix < 30; brix += 0.1)
    {
    sg = Plato_to_SG (brix);
    ri = brix_to_ri (brix);
    printf ("%6.1f\t%6.4f\t%6.5f\t",
	    brix,
	    sg,
	    ri );
    for (attenuation = 0.7; attenuation < .8; attenuation += 0.02)
      {
      double fg = (sg - 1) * (1 - attenuation) + 1;

      if (verbose)
	printf ("\t%3.2f%%\t%6.4f", abw_to_abv (alcohol_by_weight_fix (sg, fg)), fg);
      else
	printf ("\t%3.2f%%", abw_to_abv (alcohol_by_weight_fix (sg, fg)));
      }
    printf ("\n");
/* abw is not this:  brix_to_abw (0, brix ) ); */
    }
  printf ("
\n"); return 0; }