Note : Some parts of the source code are omitted from these listings (mainly functions for debugging the code)..
Globals: fake_rossi_ecat_global_v305.php
<?php // php energy calculator globals v3 110305 global $dbg; global $observed_power,$observed_runtime; // KWH, hrs global $section_max, $section_volume, $section_name, $section_abrv,$section_mass; global $material_max, $material_name, $material_abrv, $material_mj_per_l, $material_mj_per_kg, $material_kwh_per_l, $material_kwh_per_kg, $material_sp_heat; global $rad_max, $rad_name, $rad_abrv, $rad_kw_per_kg, $rad_kw_per_l, $rad_sp_gravity; global $expt_max, $expt_name, $expt_abrv, $expt_power, $expt_time, $expt_comment, $expt_sec_from, $expt_sec_to, $expt_sec_max, $expt_sec, $expt_mat; global $g_expt; // current experiment global $color_real, $color_fake; global $unknown_val; global $pKW,$pKWH,$pMJ,$pH,$pL,$pKG,$pMJpKG,$pMJpL,$pKWHpKG,$pKWHpL,$pSPH; // print spans global $paH, $paH2, $paO, $paO2, $paO3, $paH2O; // common molecules global $paB, $paB2; // stuff for element/molecular calculations global $am; // atomic/molecular mass global $dkgL; // density[] // AB reactions ['AB'] global $mab_ab_title,$mab_ab_formula,$mab_a_name,$mab_b_name; global $mab_a_pa, $mab_b_pa; // pATOM formats global $mab_a_m, $mab_b_m, $mab_tot_m, $mab_a_mfac, $mab_b_mfac; global $mab_a_dens, $mab_b_dens; global $mab_a_num, $mab_b_num; global $mab_a_elt, $mab_b_elt; global $mab_a_v, $mab_b_v, $mab_tot_v, $mab_a_vfac, $mab_b_vfac; global $table_bgcolor; ?>
Functions: fake_rossi_ecat_calc_v305.php
<?php // php energy calculator include("fake_rossi_ecat_global_v305.php"); define('AF_MJ2KWH','0.27778'); $dbg = 3; $material_max = 0; $rad_max = 0; $section_max = 0; $expt_max = 0; function pUNIT($a_string) // print the UNIT in a span, with its own class { include("fake_rossi_ecat_global_v305.php"); $r = <<< PRINT_UNITS <span class="afUnits">{$a_string}</span> PRINT_UNITS; return $r; } // Pre-format all the common units : the names are picture-coded $pKW = pUNIT("kW"); $pKWH = pUNIT("kWH"); $pMJ = pUNIT("MJ"); $pH = pUNIT("Hrs"); $pL = pUNIT("L"); $pKG = pUNIT("kg"); $pMJpKG = pUNIT("MJ/kg"); $pMJpL = pUNIT("MJ/L"); $pKWHpKG = pUNIT("kWH/kg"); $pKWHpL = pUNIT("kWH/L"); $pSPH = pUNIT("MJ/kg.K"); function print_val_fmt($a_val) { include("fake_rossi_ecat_global_v305.php"); if ( $a_val <= 0.00000000001 ) { $r = ""; } else if ( $a_val < 0.0001 ) { $r = sprintf("%4.7f",$a_val); } else if ( $a_val < 0.001 ) { $r = sprintf("%4.6f",$a_val); } else if ( $a_val < 0.01 ) { $r = sprintf("%4.5f",$a_val); } else if ( $a_val < 0.1 ) { $r = sprintf("%4.4f",$a_val); } else if ( $a_val < 1.0 ) { $r = sprintf("%4.3f",$a_val); } else if ( $a_val < 10.0 ) { $r = sprintf("%4.2f",$a_val); } else if ( $a_val < 100.0 ) { $r = sprintf("%4.1f",$a_val); } else { $r = sprintf("%4.0f",$a_val); } return $r; } function pV($a_val) // shorthand { return print_val_fmt($a_val); } function print_unit_fmt($a_val,$a_unit) // changes format to three significant digits { include("fake_rossi_ecat_global_v305.php"); if ( $a_val <= 0.00000000001 ) { $r = ""; } else { $v = print_val_fmt($a_val); $r = sprintf("%s %s",$v,$a_unit); } return $r; } function td_fmt3($v,$z,$f,$u,$s) // val, formats for zero,float,unknown style { if ($v==0) { $r = '<td align="center" valign="top"' . $s . '>' . $z . '</td>'; } else if ( $v >= 999 ) { $r = '<td align="center" valign="top"' . $s . '>' . $u . '</td>'; } else { $r = '<td align="right" valign="top"' . $s . '>' . sprintf($f,$v) . '</td>'; } return $r; } function pATOM($a,$s) // Print an Atom with subscript { include("fake_rossi_ecat_global_v305.php"); $r = "<span class=\"afAtom\">$a</span>"; if($s>1) { $r .= "<span class=\"afSubs\">$s</span>"; } return $r; } $paH = pATOM('H',1); $paH2 = pATOM('H',2); $paO = pATOM('O',1); $paO2 = pATOM('O',2); $paO3 = pATOM('O',3); $paH2O = $paH2 . $paO; $paB = pATOM('B',1); $paB2 = pATOM('B',2); $paB3 = pATOM('B',3); function print_direct_energy_mass($a_mass,$a_mj_per_kg) { include("fake_rossi_ecat_global_v305.php"); $l_mj = $a_mass *$a_mj_per_kg; $l_kwh = AF_MJ2KWH * $l_mj; $l_mj_str = print_unit_fmt($l_mj,"MJ"); $l_kwh_str = print_unit_fmt($l_kwh,"kWH"); echo <<< ENERGY_MASS {$l_mj_str} ({$l_kwh_str}) ENERGY_MASS; } function set_section($a_section,$a_name,$a_abrv,$a_volume,$a_mass) { include("fake_rossi_ecat_global_v305.php"); if($section_max < $a_section ) { $section_max = $a_section; } $section_name[$a_section] = $a_name; $section_abrv[$a_section] = $a_abrv; $section_volume[$a_section] = $a_volume; $section_mass[$a_section] = $a_mass; } function print_section_table_row($a_sec) { include("fake_rossi_ecat_global_v305.php"); if($dbg>9) { printf("<br/>DBG sec %d name $s </br>",$a_mat,$section_name[$a_sec]); } $fmt1 = 'valign="top"'; $fmt2 = 'align="right" valign="top"'; if ( isset($section_name[$a_sec]) ) { printf("<tr>"); printf("<td %s>%s</td>",$fmt1, $section_name[$a_sec]); printf("<td %s>%s</td>",$fmt1, $section_abrv[$a_sec]); echo td_fmt3($section_mass[$a_sec],"-","%6.3f","???",''); echo td_fmt3($section_volume[$a_sec],"-","%6.3f","???",''); printf("</tr>"); } } function print_section_table($a_sec_from,$a_sec_to) { include("fake_rossi_ecat_global_v305.php"); echo <<< SEC_TABLE_HEAD <table width="400" border="1" class="afTable" style="background-color: $table_bgcolor[0];"> <tr> <th width="189" scope="col" rowspan="2">Section</th> <th width="189" scope="col" rowspan="2">Abrev</th> <th width="80" scope="col" align="right" style="border-bottom: 0px;">Mass</th> <th width="80" scope="col" align="right" style="border-bottom: 0px;">Volume</th> </tr> <tr><td align="right">$pKG</td><td align="right">$pL</td> </tr> SEC_TABLE_HEAD; for($l_sec=$a_sec_from;$l_sec<=$a_sec_to;$l_sec++) { if( isset($section_name[$l_sec]) ) { print_section_table_row($l_sec); } } echo <<< SEC_TABLE_TAIL </table> SEC_TABLE_TAIL; } function set_material($a_mat,$a_mat_name,$a_mat_abrv,$a_mat_mj_per_kg,$a_mat_mj_per_l,$a_mat_sp_heat) { include("fake_rossi_ecat_global_v305.php"); if($material_max < $a_mat ) { $material_max = $a_mat; } $material_name[$a_mat] = $a_mat_name; $material_abrv[$a_mat] = $a_mat_abrv; $material_mj_per_l[$a_mat] = $a_mat_mj_per_l; $material_kwh_per_l[$a_mat] = $a_mat_mj_per_l == $unknown_val? $unknown_val : $a_mat_mj_per_l * AF_MJ2KWH; $material_mj_per_kg[$a_mat] = $a_mat_mj_per_kg; $material_kwh_per_kg[$a_mat] = $a_mat_mj_per_kg == $unknown_val? $unknown_val : $a_mat_mj_per_kg * AF_MJ2KWH; $material_sp_heat[$a_mat] = $a_mat_sp_heat; } function print_material_table_row($a_mat) { include("fake_rossi_ecat_global_v305.php"); if($dbg>9) { printf("<br/>DBG mat %d name $s </br>",$a_mat,$material_name[$a_mat]); } $fmt1 = 'valign="top"'; $fmt2 = 'align="right" valign="top"'; if ( isset($material_name[$a_mat]) ) { printf("<tr>"); printf("<td %s>%s</td>",$fmt1, $material_name[$a_mat]); printf("<td %s>%s</td>",$fmt1, $material_abrv[$a_mat]); echo td_fmt3($material_mj_per_kg[$a_mat],"-","%6.3f","???",'style="border-right:0px;"' ); echo td_fmt3($material_kwh_per_kg[$a_mat],"-","%6.3f","???",''); echo td_fmt3($material_mj_per_l[$a_mat],"-","%6.3f","???",'style="border-right:0px;"'); echo td_fmt3($material_kwh_per_l[$a_mat],"-","%6.3f","???",''); echo td_fmt3($material_mj_sp_heat[$a_mat],"-","%6.3f","???",''); printf("</tr>"); } } function print_material_table($a_mat_from,$a_mat_to) { include("fake_rossi_ecat_global_v305.php"); echo <<< MAT_TABLE_HEAD <table width="600" border="1" class="afTable" style="background-color: $table_bgcolor[0];"> <tr> <th scope="col" valign="top" rowspan="2" style="width: 150px;">Material</th> <th scope="col" valign="top" rowspan="2" style="width: 100px;">Abrev</th> <th scope="col" valign="top" colspan="2" style="width: 100px;">Energy<br />by Mass</th> <th scope="col" valign="top" colspan="2" style="width: 100px;">Energy<br />by Volume</th> <th scope="col" valign="top" style="width: 80px;">Specific<br />Heat</th> </tr> <td style="width: 100px; border-top: 0px; border-right: 0px;" align="right" >$pMJpKG</td> <td style="width: 100px; border-top: 0px;" align="right" >$pKWHpKG</td> <td style="width: 100px; border-top: 0px; border-right: 0px;" align="right" >$pMJpL</td> <td style="width: 100px; border-top: 0px;" align="right" >$pKWHpL</td> <td style="width: 80px; border-top: 0px;" align="right">$pSPH</td> </tr> MAT_TABLE_HEAD; for($l_mat=$a_mat_from;$l_mat<=$a_mat_to;$l_mat++) { if( isset($material_name[$l_mat]) ) { print_material_table_row($l_mat); } } echo <<< MAT_TABLE_TAIL </table> MAT_TABLE_TAIL; } function set_expt($a_expt,$a_name,$a_abrv,$a_power,$a_time,$a_cmnt) { include("fake_rossi_ecat_global_v305.php"); $g_expt = $a_expt; if($expt_max < $a_expt ) { $expt_max = $a_expt; } $expt_name[$a_expt] = $a_name; $expt_abrv[$a_expt] = $a_abrv; $expt_power[$a_expt] = $a_power; $expt_time[$a_expt] = $a_time; $expt_comment[$a_expt] = $a_cmnt; $expt_sec_max[$a_expt] = 0; $expt_sec_from[$a_expt] = 999999999; $expt_sec_to[$a_expt] = -999999999; } function set_expt_sec($a_sec,$a_mat) { include("fake_rossi_ecat_global_v305.php"); $l_sec = ++$expt_sec_max[$g_expt]; $expt_sec[$g_expt][$l_sec] = $a_sec; $expt_mat[$g_expt][$l_sec] = $a_mat; if ( $expt_sec_from[$g_expt] < $l_sec ) { $expt_sec_from[$g_expt] = $l_sec; } if ( $expt_sec_to[$g_expt] > $l_sec ) { $expt_sec_to[$g_expt] = $l_sec; } } function print_expt_table_row_v3($a_expt) { include("fake_rossi_ecat_global_v305.php"); $l_tot_energy = 0; $l_prt_sec_num = 0; for($l_sec_num=1;$l_sec_num<= $expt_sec_max[$a_expt];$l_sec_num++) { $l_mat = $expt_mat[$a_expt][$l_sec_num]; $l_sec = $expt_sec[$a_expt][$l_sec_num]; $l_energy_kwh = $section_volume[$l_sec]*$material_kwh_per_l[$l_mat]; $l_tot_energy += $l_energy_kwh; $l_prt_sec_num++; $l_sec_abrv[$l_prt_sec_num] = $section_abrv[$l_sec]; $l_mat_abrv[$l_prt_sec_num] = $material_abrv[$l_mat]; $l_sec_kwh[$l_prt_sec_num] = print_unit_fmt($l_energy_kwh,$pKWH); } $l_runtime = $l_tot_energy/$expt_power[$a_expt]; if ( $l_runtime <= $expt_time[$a_expt] ) { $time_color = $color_real; $result = "REAL"; } else { $time_color = $color_fake; $result= "FAKE?"; } $l_hrs_expt = print_unit_fmt($expt_time[$a_expt],$pH); $l_hrs_fake = print_unit_fmt($l_runtime,$pH); $l_kw_expt = print_unit_fmt($expt_power[$a_expt],$pKW); $l_kwh_fake = print_unit_fmt($l_tot_energy,$pKWH); echo <<< EXPT_ROW_V3 <tr> <th width="110" rowspan="4" align="left" valign="top">{$expt_abrv[$a_expt]}</th> <th width="70" align="left" style="border-bottom: 0px; border-right: 0px;">Section</th> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[1]} </td> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[2]}</td> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[3]}</td> <th width="70" rowspan="2" valign="top" style="border-bottom: 0px;">Fake<br /> Energy</th> <th width="70" rowspan="2" valign="top" style="border-bottom: 0px; ">Expt<br /> Power</th> <td valign="top" colspan="2" style="background-color:$time_color;">$result</td> </tr> <tr> <th height="19" align="left" style="border-bottom: 0px; border-right: 0px;">Material</th> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[1]}</td> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[2]}</td> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[3]}</td> <th width="65" style="border-bottom: 0px red ; border-right: 0px; background-color:$time_color;">Fake</th> <th width="65" style="border-bottom: 0px; background-color:$time_color;">Expt</th> </tr> <tr> <th align="left" style="border-right: 0px;">Energy</th> <td align="right" style="border-right: 0px;">{$l_sec_kwh[1]}</td> <td align="right" style="border-right: 0px;">{$l_sec_kwh[2]}</td> <td align="right" style="border-right: 0px;">{$l_sec_kwh[3]}</td> <td>$l_kwh_fake</td> <td>$l_kw_expt</td> <td align="right" style="border-right: 0px; border-top: 0px red; background-color:$time_color;">{$l_hrs_fake}</td> <td align="right" style="border-top: 0px; background-color:$time_color;">{$l_hrs_expt}</td> </tr> <tr> <td height="28" colspan="8" align="left" valign="top">$expt_comment[$a_expt]</td> </tr> EXPT_ROW_V3; } function print_expt_table_v3($a_expt_from,$a_expt_to) { include("fake_rossi_ecat_global_v305.php"); echo <<< EXPT_TABLE_HEAD3 <table width="700" border="1" class="afTable"> EXPT_TABLE_HEAD3; for($l_expt=$a_expt_from;$l_expt<=$a_expt_to;$l_expt++) { if($dbg>3) { printf("<tr><td>EXPT {$l_expt} NAME {$expt_name[$l_expt]} </td></tr>\n"); } if (isset($expt_name[$l_expt]) ){ print_expt_table_row_v3($l_expt); } } echo <<< EXPT_TABLE_TAIL3 </table> EXPT_TABLE_TAIL3; // <tr><td colspan="7">Units<br />Power: kW Energy: kWH Time: Hours Mass: kg Volume : Liters </td></tr> } function print_expt_table_row_v4($a_expt,$bgcolor) { include("fake_rossi_ecat_global_v305.php"); $l_tot_energy = 0; $l_prt_sec_num = 0; for($l_sec_num=1;$l_sec_num<= $expt_sec_max[$a_expt];$l_sec_num++) { $l_mat = $expt_mat[$a_expt][$l_sec_num]; $l_sec = $expt_sec[$a_expt][$l_sec_num]; $l_energy_kwh = $section_volume[$l_sec]*$material_kwh_per_l[$l_mat]; $l_tot_energy += $l_energy_kwh; $l_prt_sec_num++; $l_sec_abrv[$l_prt_sec_num] = $section_abrv[$l_sec]; $l_mat_abrv[$l_prt_sec_num] = $material_abrv[$l_mat]; $l_sec_kwh[$l_prt_sec_num] = print_unit_fmt($l_energy_kwh,$pKWH); } $l_runtime = $l_tot_energy/$expt_power[$a_expt]; if ( $l_runtime <= $expt_time[$a_expt] ) { $time_color = $color_real; $result = "REAL"; } else { $time_color = $color_fake; $result= "FAKE?"; } $l_hrs_expt = print_unit_fmt($expt_time[$a_expt],$pH); $l_hrs_fake = print_unit_fmt($l_runtime,$pH); $l_kw_expt = print_unit_fmt($expt_power[$a_expt],$pKW); $l_kwh_fake = print_unit_fmt($l_tot_energy,$pKWH); echo <<< EXPT_ROW_V4 <tr style="background-color: $bgcolor;"> <th colspan="8" align="left" valign="top" >{$expt_name[$a_expt]}</th> </tr> <tr style="background-color: $bgcolor;"> <th width="70" align="left" style="border-bottom: 0px; border-right: 0px; ">Section</th> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[1]} </td> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[2]}</td> <td width="70" align="center" style="border-bottom: 0px; border-right: 0px;">{$l_sec_abrv[3]}</td> <th width="70" rowspan="2" valign="top" style="border-bottom: 0px;">Fake<br /> Energy</th> <th width="70" rowspan="2" valign="top" style="border-bottom: 0px; ">Expt<br /> Power</th> <td valign="top" colspan="2" style="background-color:$time_color;">$result</td> </tr> <tr style="background-color: $bgcolor;"> <th height="19" align="left" style="border-bottom: 0px; border-right: 0px;">Material</th> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[1]}</td> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[2]}</td> <td align="center" style="border-bottom: 0px; border-right: 0px;">{$l_mat_abrv[3]}</td> <th width="65" style="border-bottom: 0px red ; border-right: 0px; background-color:$time_color;">Fake</th> <th width="65" style="border-bottom: 0px; background-color:$time_color;">Expt</th> </tr> <tr style="background-color: $bgcolor;"> <th align="left" style="border-right: 0px;">Energy</th> <td align="right" style="border-right: 0px;">{$l_sec_kwh[1]}</td> <td align="right" style="border-right: 0px;">{$l_sec_kwh[2]}</td> <td align="right" style="border-right: 0px;">{$l_sec_kwh[3]}</td> <td>$l_kwh_fake</td> <td>$l_kw_expt</td> <td align="right" style="border-right: 0px; border-top: 0px red; background-color:$time_color;">{$l_hrs_fake}</td> <td align="right" style="border-top: 0px; background-color:$time_color;">{$l_hrs_expt}</td> </tr> <tr style="background-color: $bgcolor;"> <td height="28" colspan="8" align="left" valign="top">$expt_comment[$a_expt]</td> </tr> EXPT_ROW_V4; } function print_expt_table_v4($a_expt_from,$a_expt_to,$send_table) { include("fake_rossi_ecat_global_v305.php"); $bgindx = 0; if($send_table) { echo <<< EXPT_TABLE_HEAD4A <table width="700" border="1" class="afTable"> EXPT_TABLE_HEAD4A; } for($l_expt=$a_expt_from;$l_expt<=$a_expt_to;$l_expt++) { if (isset($expt_name[$l_expt]) ) { if($send_table) { $bgindx = $bgindx==0?1:0; } if(!$send_table) { echo <<< EXPT_TABLE_HEAD4B <table width="700" border="1" class="afTable" > EXPT_TABLE_HEAD4B; } print_expt_table_row_v4($l_expt,$table_bgcolor[$bgindx]); if(!$send_table) { echo <<< EXPT_TABLE_TAIL4B </table><br /> EXPT_TABLE_TAIL4B; } } } if($send_table) { echo <<< EXPT_TABLE_TAIL4A </table><br /> EXPT_TABLE_TAIL4A; } // <tr><td colspan="7">Units<br />Power: kW Energy: kWH Time: Hours Mass: kg Volume : Liters </td></tr> } // used for radioactive materials function set_rad($a_rad,$a_rad_name,$a_rad_abrv,$a_rad_kw_per_kg,$a_rad_kw_per_l,$a_rad_sp_gravity) { include("fake_rossi_ecat_global_v305.php"); if($rad_max < $a_rad ) { $rad_max = $a_rad; } $rad_name[$a_rad] = $a_rad_name; $rad_abrv[$a_rad] = $a_rad_abrv; $rad_kw_per_l[$a_rad] = $a_rad_kw_per_l; $rad_kw_per_kg[$a_rad] = $a_rad_kw_per_kg; $rad_sp_gravity[$a_rad] = $a_rad_sp_gravity; } function print_rad_table_row($a_rad) { include("fake_rossi_ecat_global_v305.php"); if($dbg>9) { printf("<br/>DBG rad %d name $s </br>",$a_rad,$rad_name[$a_rad]); } $fmt1 = 'valign="top"'; $fmt2 = 'align="right" valign="top"'; if ( isset($rad_name[$a_rad]) ) { printf("<tr>"); printf("<td %s>%s</td>",$fmt1, $rad_name[$a_rad]); printf("<td %s>%s</td>",$fmt1, $rad_abrv[$a_rad]); printf("<td %s>%6.3f</td>",$fmt2, $rad_kw_per_kg[$a_rad]); printf("<td %s>%6.3f</td>",$fmt2, $rad_kw_per_l[$a_rad]); printf("<td %s>%6.3f</td>",$fmt2, $rad_sp_gravity[$a_rad]); printf("</tr>"); } } function print_rad_table($a_rad_from,$a_rad_to) { include("fake_rossi_ecat_global_v305.php"); echo <<< RAD_TABLE_HEAD <table width="500" border="1" class="afTable" style="background-color: $table_bgcolor[0];"> <tr> <th width="100" scope="col" valign="top">Material</th> <th width="80" scope="col" valign="top">Abrev</th> <th width="80" scope="col" valign="top">Power<br />by<br />Mass<br>kW/kg</th> <th width="80" scope="col" valign="top">Power<br />by<br />Volume<br>kW/L</th> <th width="80" scope="col" valign="top">Specific<br />gravity</th> </tr> RAD_TABLE_HEAD; for($l_rad=$a_rad_from;$l_rad<=$a_rad_to;$l_rad++) { if( isset($rad_name[$l_rad]) ) { print_rad_table_row($l_rad); } } echo <<< RAD_TABLE_TAIL </table> RAD_TABLE_TAIL; } ?>
Set Values: fake_rossi_ecat_setvalues_v305.php
<?php // php energy calculator $color_real = "#66ff66"; $color_fake = "#ff6666"; // alternating colors for dense tables $table_bgcolor[0] = "#F0F0F0"; $table_bgcolor[1] = "#E0E0E0"; $unknown_val = 999; // sections define('AF_C',1); define('AF_H',2); define('AF_V',3); define('AF_R',4); define('AF_RCH',5); define('AF_DEMO',5); $mat_num = 0; $rad_num = 0; define('RAD_HF178',++$rad_num); define('RAD_PU238',++$rad_num); function set_ecat_values_031() { include("fake_rossi_ecat_global_v305.php"); // sections VOL-MASS set_section(AF_C,"Control Box","Ctrl",60,7); set_section(AF_H,"Horizontal Arm","Horz",22,0); set_section(AF_V,"Vertical Arm","Vert",9,0); set_section(AF_R,"Reactor","React",0.5*$section_volume[AF_H],30); set_section(AF_RCH,"Reactor Chamber","Chamber",1,0); set_section(AF_DEMO1,"Section Name 1","SEC-1",12,11); set_section(AF_DEMO2,"Section Name 2","SEC-2",22,21); set_section(AF_DEMO3,"Section Name 3","SEC-3",32,31); // materials mass,vol, sp-heat $mjkg_h = 143; $mjL_h = 5.6; $mjkg_b = 58.9; $mjL_b = 137.8; define('MAT_NONE',++$mat_num); set_material(MAT_NONE,"None","-",0,0,0); define('MAT_BAT_START',$mat_num+1); define('MAT_LEAD_BAT',++$mat_num); set_material(MAT_LEAD_BAT,"Lead-Acid Batteries","Lead B",0.14,0.36,0); define('MAT_LI_ION_BAT',++$mat_num); set_material(MAT_LI_ION_BAT,"Lithium-Ion Batteries","L-i B",0.72,3.6,0); define('MAT_BAT_FIN',$mat_num); define('MAT_FC_START',$mat_num+1); define('MAT_CHCO_FC',++$mat_num); set_material(MAT_CHCO_FC,"Compressed Hydrogen/External Air Fuel Cell","CH/Air-FC",$mjkg_h,$mjL_h,0); define('MAT_LHA_FC',++$mat_num); set_material(MAT_LHA_FC,"Liquid Hydrogen/External Air Fuel Cell","LH/Air-FC",143,10.1,0); define('MAT_CHCO_FC',++$mat_num); set_material(MAT_CHCO_FC,"Compressed Hydrogen/Compressed Oxygen Fuel Cell","CH/CO-FC",$mab_a_mfac['CH-CO']*$mjkg_h,$mab_a_vfac['CH-CO']*$mjL_h,0); define('MAT_LHLO_FC',++$mat_num); set_material(MAT_LHLO_FC,"Liquid Hydrogen/Liquid Oxygen Fuel Cell","LH/LO-FC",$mab_a_mfac['LH-LO']*$mjkg_h,$mab_a_vfac['LH-LO']*$mjL_h,0); define('MAT_FC_FIN',$mat_num); define('MAT_HO_START',$mat_num+1); define('MAT_CHA',++$mat_num); set_material(MAT_CHA,"Compressed Hydrogen/External Air","CH/Air",$mjkg_h,$mjL_h,0); define('MAT_LHA',++$mat_num); set_material(MAT_LHA,"Liquid Hydrogen/External Air","LH/Air",143,10.1,0); define('MAT_CHCO',++$mat_num); set_material(MAT_CHCO,"Compressed Hydrogen/Compressed Oxygen","CH/CO",$mab_a_mfac['CH-CO']*$mjkg_h,$mab_a_vfac['CH-CO']*$mjL_h,0); define('MAT_LHLO',++$mat_num); set_material(MAT_LHLO,"Liquid Hydrogen/Liquid Oxygen","LH/LO",$mab_a_mfac['LH-LO']*$mjkg_h,$mab_a_vfac['LH-LO']*$mjL_h,0); define('MAT_HO_FIN',$mat_num); define('MAT_BO_START',$mat_num+1); define('MAT_BO_AIR',++$mat_num); set_material(MAT_BO_AIR,"Boron/External Air","B/Air",$mjkg_b,$mjL_b,0); define('MAT_BO_CO',++$mat_num); set_material(MAT_BO_CO,"Boron/Compressed Oxygen","B/CO",$mab_a_mfac['B-CO']*$mjkg_b,$mab_a_vfac['B-CO']*$mjL_b,0); define('MAT_BO_LO',++$mat_num); set_material(MAT_BO_LO,"Boron/Liquid Oxygen","B/LO",$mab_a_mfac['B-LO']*$mjkg_b,$mab_a_vfac['B-LO']*$mjL_b,0); define('MAT_BO_FIN',$mat_num); define('MAT_DSL_AIR',++$mat_num); set_material(MAT_DSL_AIR,"Diesel/Air","Dsl/Air",46.2,37.3,0); define('MAT_MG_H2O',++$mat_num); set_material(MAT_MG_H2O,"Magnesium/Steam","Mg/Steam",$unknown_val,$unknown_val,0); define('MAT_BO_H2O',++$mat_num); set_material(MAT_BO_H2O,"Boron/Steam + Hydrogen/Air","B/St + H/Air",2*58.9,2*137.8,0); define('MAT_DEMO',++$mat_num); set_material(MAT_DEMO,"Material Name 1","MAT-1",12.3,45.6,0); set_rad(RAD_HF178,"Haffnium 178","Hf178",$unknown_val,0,0); set_rad(RAD_PU238,"Plutonium 238","Pu238",0.5,0,0); define('FLOW_JAN',17.5); // L/h define('FLOW_FEB',3000); $expt_num = 0; $cmt_feb_a = "February with ALL sections"; $cmt_feb_b = "February with ESTIMATED reactor volume"; $cmt_feb_c = "February with reactor CHAMBER volume"; // experiments define('EXPT_JAN_BAT',++$expt_num); define('EXPT_BAT_START',$expt_num); set_expt(EXPT_JAN_BAT,"All units contain Lithium-Ion batteries","All Secs Li/i",10,0.5,"January"); set_expt_sec(AF_C,MAT_LI_ION_BAT); // expt number is in a global set_expt_sec(AF_H,MAT_LI_ION_BAT); set_expt_sec(AF_V,MAT_LI_ION_BAT); define('EXPT_JAN_BAT_MAIN',++$expt_num); set_expt(EXPT_JAN_BAT_MAIN,"Main Unit contains Lithium-Ion batteries","Main Secs Li/i",10,0.5,"January: Excluding Control Box"); set_expt_sec(AF_C,MAT_NONE); // expt number is in a global set_expt_sec(AF_H,MAT_LI_ION_BAT); set_expt_sec(AF_V,MAT_LI_ION_BAT); define('EXPT_FEB_BAT_ALL',++$expt_num); set_expt(EXPT_FEB_BAT_ALL,"All units contain Lithium-Ion batteries","All Secs Li/i",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LI_ION_BAT); set_expt_sec(AF_H,MAT_LI_ION_BAT); set_expt_sec(AF_V,MAT_LI_ION_BAT); define('EXPT_FEB_BAT_RCT',++$expt_num); set_expt(EXPT_FEB_BAT_RCT,"Reactor contains Lithium-Ion batteries ","React Sec Li/i",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_LI_ION_BAT); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_BAT_RCH',++$expt_num); set_expt(EXPT_FEB_BAT_RCH,"Reactor chamber contains Lithium-Ion batteries ","React Sec Li/i",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_LI_ION_BAT); set_expt_sec(AF_V,MAT_NONE); define('EXPT_BAT_FIN',$expt_num); // experiments define('EXPT_LHA_START',$expt_num+1); define('EXPT_JAN_LHA_ALL',++$expt_num); set_expt(EXPT_JAN_LHA_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Liquid H/Air","H/Air Fuel Cell + H/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_LHA); set_expt_sec(AF_V,MAT_LHA); define('EXPT_JAN_LHA_MAIN',++$expt_num); set_expt(EXPT_JAN_LHA_MAIN,"Main Unit: Liquid H/Air","H/Air",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_LHA); set_expt_sec(AF_V,MAT_LHA); define('EXPT_FEB_LHA_ALL',++$expt_num); set_expt(EXPT_FEB_LHA_ALL,"Control Box: Liquid Hydrogen/Air Fuel Cell Main Unit: Liquid Hydrogen/Air","H/Air Fuel Cell, H/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_LHA); set_expt_sec(AF_V,MAT_LHA); define('EXPT_FEB_LHA_RCT',++$expt_num); set_expt(EXPT_FEB_LHA_RCT,"Reactor contains Liquid H/Air ","React H/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_LHA); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_LHA_RCH',++$expt_num); set_expt(EXPT_FEB_LHA_RCH,"Reactor Chamber contains Liquid H/Air ","React H/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_LHA); set_expt_sec(AF_V,MAT_NONE); define('EXPT_LHA_FIN',$expt_num); // experiments define('EXPT_CHA_START',$expt_num+1); define('EXPT_JAN_CHA_ALL',++$expt_num); set_expt(EXPT_JAN_CHA_ALL,"Control Box: Compressed H/Air Fuel Cell Main Unit: Compressed H/Air","H/Air Fuel Cell + H/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_CHA_FC); set_expt_sec(AF_H,MAT_CHA); set_expt_sec(AF_V,MAT_CHA); define('EXPT_JAN_CHA_MAIN',++$expt_num); set_expt(EXPT_JAN_CHA_MAIN,"Main Unit: Compressed H/Air","H/Air",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_CHA); set_expt_sec(AF_V,MAT_CHA); define('EXPT_FEB_CHA_ALL',++$expt_num); set_expt(EXPT_FEB_CHA_ALL,"Control Box: Compressed Hydrogen/Air Fuel Cell Main Unit: Compressed Hydrogen/Air","H/Air Fuel Cell, H/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_CHA_FC); set_expt_sec(AF_H,MAT_CHA); set_expt_sec(AF_V,MAT_CHA); define('EXPT_FEB_CHA_RCT',++$expt_num); set_expt(EXPT_FEB_CHA_RCT,"Reactor contains Compressed H/Air ","React H/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_CHA); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_CHA_RCH',++$expt_num); set_expt(EXPT_FEB_CHA_RCH,"Reactor Chamber contains Compressed H/Air ","React H/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_CHA); set_expt_sec(AF_V,MAT_NONE); define('EXPT_CHA_FIN',$expt_num); define('EXPT_CHCO_START',$expt_num+1); define('EXPT_JAN_CHCO_ALL',++$expt_num); set_expt(EXPT_JAN_CHCO_ALL,"Control Box: Compressed H/O Fuel Cell Main Unit: Compressed H/O","H/Air Fuel Cell + H/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_CHCO_FC); set_expt_sec(AF_H,MAT_CHCO); set_expt_sec(AF_V,MAT_CHCO); define('EXPT_JAN_CHCO_MAIN',++$expt_num); set_expt(EXPT_JAN_CHCO_MAIN,"Main Unit: Compressed H/O","H/Air",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_CHCO); set_expt_sec(AF_V,MAT_CHCO); define('EXPT_FEB_CHCO_ALL',++$expt_num); set_expt(EXPT_FEB_CHCO_ALL,"Control Box: Compressed Hydrogen/O Fuel Cell Main Unit: Compressed Hydrogen/O","H/Air Fuel Cell, H/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_CHCO_FC); set_expt_sec(AF_H,MAT_CHCO); set_expt_sec(AF_V,MAT_CHCO); define('EXPT_FEB_CHCO_RCT',++$expt_num); set_expt(EXPT_FEB_CHCO_RCT,"Reactor contains Compressed H/O ","React H/O",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_CHCO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_CHCO_RCH',++$expt_num); set_expt(EXPT_FEB_CHCO_RCH,"Reactor Chamber contains Compressed H/O ","React H/O",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_CHCO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_CHCO_FIN',$expt_num); define('EXPT_LHLO_START',$expt_num+1); define('EXPT_JAN_LHLO_ALL',++$expt_num); set_expt(EXPT_JAN_LHLO_ALL,"Control Box: Liquid H/O Fuel Cell Main Unit: Liquid H/Oxygen","H/Air Fuel Cell + H/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHLO_FC); set_expt_sec(AF_H,MAT_LHLO); set_expt_sec(AF_V,MAT_LHLO); define('EXPT_JAN_LHLO_MAIN',++$expt_num); set_expt(EXPT_JAN_LHLO_MAIN,"Main Unit: Liquid H/O","H/O",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_LHLO); set_expt_sec(AF_V,MAT_LHLO); define('EXPT_FEB_LHLO_ALL',++$expt_num); set_expt(EXPT_FEB_LHLO_ALL,"Control Box: Liquid H/O Fuel Cell Main Unit: Liquid Hydrogen/O","H/Air Fuel Cell, H/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHLO_FC); set_expt_sec(AF_H,MAT_LHLO); set_expt_sec(AF_V,MAT_LHLO); define('EXPT_FEB_LHLO_RCT',++$expt_num); set_expt(EXPT_FEB_LHLO_RCT,"Reactor contains Liquid H/O","React H/O",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_LHLO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_LHLO_RCH',++$expt_num); set_expt(EXPT_FEB_LHLO_RCH,"Reactor Chamber contains Liquid H/O ","React H/O",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_LHLO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_LHLO_FIN',$expt_num); // experiments define('EXPT_JAN_BOA_ALL',++$expt_num); define('EXPT_BOA_START',$expt_num); set_expt(EXPT_JAN_BOA_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Air","H/Air Fuel Cell, Boron/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_AIR); set_expt_sec(AF_V,MAT_BO_AIR); define('EXPT_JAN_BOA_MAIN',++$expt_num); set_expt(EXPT_JAN_BOA_MAIN,"Main Unit: Boron/Air","H/Air Fuel Cell, Boron/Air",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_BO_AIR); set_expt_sec(AF_V,MAT_BO_AIR); define('EXPT_FEB_BOA_ALL',++$expt_num); set_expt(EXPT_FEB_BOA_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Air","H/Air Fuel Cell, Boron/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_AIR); set_expt_sec(AF_V,MAT_BO_AIR); define('EXPT_FEB_BOA_RCT',++$expt_num); set_expt(EXPT_FEB_BOA_RCT,"Reactor contains Boron/Air","React Boron/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_BO_AIR); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_BOA_RCH',++$expt_num); set_expt(EXPT_FEB_BOA_RCH,"Reacor chamber contains Boron/Air ","Chamber Boron/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_BO_AIR); set_expt_sec(AF_V,MAT_NONE); define('EXPT_BOA_FIN',$expt_num); // experiments define('EXPT_JAN_BOCO_ALL',++$expt_num); define('EXPT_BOCO_START',$expt_num); set_expt(EXPT_JAN_BOCO_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Compressed O","H/Air Fuel Cell, Boron/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_CO); set_expt_sec(AF_V,MAT_BO_CO); define('EXPT_JAN_BOCO_MAIN',++$expt_num); set_expt(EXPT_JAN_BOCO_MAIN,"Main Unit: Boron/Compressed O","Boron/Air",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_BO_CO); set_expt_sec(AF_V,MAT_BO_CO); define('EXPT_FEB_BOCO_ALL',++$expt_num); set_expt(EXPT_FEB_BOCO_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Compressed O","H/Air Fuel Cell, Boron/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_CO); set_expt_sec(AF_V,MAT_BO_CO); define('EXPT_FEB_BOCO_RCT',++$expt_num); set_expt(EXPT_FEB_BOCO_RCT,"Reactor contains Boron/Compressed O ","React Boron/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_BO_CO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_BOCO_RCH',++$expt_num); set_expt(EXPT_FEB_BOCO_RCH,"Reactor chamber contains Boron/Compressed O","Chamber Boron/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_BO_CO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_BOCO_FIN',$expt_num); // experiments define('EXPT_JAN_BOLO_ALL',++$expt_num); define('EXPT_BOLO_START',$expt_num); set_expt(EXPT_JAN_BOLO_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Liquid O","H/Air Fuel Cell, Boron/LOX",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_LO); set_expt_sec(AF_V,MAT_BO_LO); define('EXPT_JAN_BOLO_MAIN',++$expt_num); set_expt(EXPT_JAN_BOLO_MAIN,"Main Unit: Boron/Liquid O","Boron/Liquid Oxygen",10,0.5,"January: Excluding the Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_BO_LO); set_expt_sec(AF_V,MAT_BO_LO); define('EXPT_FEB_BOLO_ALL',++$expt_num); set_expt(EXPT_FEB_BOLO_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: Boron/Liquid O","H/Air Fuel Cell, Boron/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_LO); set_expt_sec(AF_V,MAT_BO_LO); define('EXPT_FEB_BOLO_RCT',++$expt_num); set_expt(EXPT_FEB_BOLO_RCT,"Reactor contains Boron/Liquid O","React Boron/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_BO_LO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_BOLO_RCH',++$expt_num); set_expt(EXPT_FEB_BOLO_RCH,"Reactor chamber contains Boron/Liquid O ","Chamber Boron/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_BO_LO); set_expt_sec(AF_V,MAT_NONE); define('EXPT_BOLO_FIN',$expt_num); // experiments define('EXPT_JAN_BOS_ALL',++$expt_num); define('EXPT_BOS_START',$expt_num); set_expt(EXPT_JAN_BOS_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: B/Steam + H/Air","H/Air Fuel Cell, Boron/Steam + H/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_H2O); set_expt_sec(AF_V,MAT_BO_H2O); define('EXPT_JAN_BOS_MAIN',++$expt_num); set_expt(EXPT_JAN_BOS_MAIN,"Main Unit: B/Steam + H/Air","Boron/Steam + H/Air",10,0.5,"January: Excluding Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_BO_H2O); set_expt_sec(AF_V,MAT_BO_H2O); define('EXPT_FEB_BOS_ALL',++$expt_num); set_expt(EXPT_FEB_BOS_ALL,"Control Box: Liquid H/Air Fuel Cell Main Unit: B/Steam + H/Air","H/Air Fuel Cell, Boron/Steam + H/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_BO_H2O); set_expt_sec(AF_V,MAT_BO_H2O); define('EXPT_FEB_BOS_RCT',++$expt_num); set_expt(EXPT_FEB_BOS_RCT,"Reactor contains B/Steam + H/Air","React Boron/Steam + H/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_BO_H2O); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_BOS_RCH',++$expt_num); set_expt(EXPT_FEB_BOS_RCH,"Reactor chamber contains B/Steam + H/Air","Chamber Boron/Steam + H/LO",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_BO_H2O); set_expt_sec(AF_V,MAT_NONE); define('EXPT_BOS_FIN',$expt_num); // experiments define('EXPT_JAN_DFA_ALL',++$expt_num); define('EXPT_DFA_START',$expt_num); set_expt(EXPT_JAN_DFA_ALL,"Control Box: Liquid Hydrogen/Air Fuel Cell Main Unit: Diesel/Air ","H/Air Fuel Cell, Diesel/Air",10,0.5,"January"); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_DSL_AIR); set_expt_sec(AF_V,MAT_DSL_AIR); define('EXPT_JAN_DFA_MAIN',++$expt_num); set_expt(EXPT_JAN_DFA_MAIN," Main Unit: Diesel/Air","Diesel/Air",10,0.5,"January: Excluding Control Box"); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_H,MAT_DSL_AIR); set_expt_sec(AF_V,MAT_DSL_AIR); define('EXPT_FEB_DFA_ALL',++$expt_num); set_expt(EXPT_FEB_DFA_ALL,"Control Box: Liquid Hydrogen/Air Fuel Cell Main Unit: Diesel/Air","H/Air Fuel Cell, Diesel/Air",16,18,$cmt_feb_a); set_expt_sec(AF_C,MAT_LHA_FC); set_expt_sec(AF_H,MAT_DSL_AIR); set_expt_sec(AF_V,MAT_DSL_AIR); define('EXPT_FEB_DFA_RCT',++$expt_num); set_expt(EXPT_FEB_DFA_RCT,"Reactor: Diesel/Air","React Diesel/Air",16,18,$cmt_feb_b); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_R,MAT_DSL_AIR); set_expt_sec(AF_V,MAT_NONE); define('EXPT_FEB_DFA_RCH',++$expt_num); set_expt(EXPT_FEB_DFA_RCH,"Reactor Chamber: Diesel/Air ","React Diesel/Air",16,18,$cmt_feb_c); set_expt_sec(AF_C,MAT_NONE); set_expt_sec(AF_RCH,MAT_DSL_AIR); set_expt_sec(AF_V,MAT_NONE); define('EXPT_DFA_FIN',$expt_num); // experiments define('EXPT_JAN_DEMO_ALL',++$expt_num); define('EXPT_DEMO_START',$expt_num); set_expt(EXPT_JAN_DEMO_ALL,"Experiment 1 : All sections contain MAT-1","All sections contain MAT-1",10,0.5,"Fake can run longer than the experiment: fake is NOT eliminated"); set_expt_sec(AF_DEMO1,MAT_DEMO); set_expt_sec(AF_DEMO2,MAT_DEMO); set_expt_sec(AF_DEMO3,MAT_DEMO); define('EXPT_FEB_DEMO_ALL',++$expt_num); set_expt(EXPT_FEB_DEMO_ALL,"Experiment 2 : Only SEC-2 contain MAT-1","Only SEC-2 contains MAT-1",16,18,"Fake cannot run as long as the experiment -- Fake is eliminated"); set_expt_sec(AF_DEMO1,MAT_NONE); set_expt_sec(AF_DEMO2,MAT_DEMO); set_expt_sec(AF_DEMO3,MAT_NONE); define('EXPT_DEMO_FIN',$expt_num); } ?>
The body of the report also contains PHP function calls and expressions.
Samples of these calls are in
Caclulator Test pageFunction Calls: fake_rossi_ecat_calctest_v305.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <?php $version_num = 3.05; $version = "Version " . $version_num . ", March 18, 2011"; $title = "Calculator Test Page" ;?> <?php include_once("fake_rossi_ecat_includes_v305.php"); ?> <?php include_once("fake_rossi_ecat_v1_email.php"); ?> <?php include_once("fake_rossi_ecat_calc_v305.php"); ?> </head> <body class="oneColLiqCtrHdr"> <div id="container"> <div id="header"> <h1>How to Make and Detect a FAKE Rossi/Focardi eCAT LENR<br />Energy Calculator Test Page</h1> <p>Alan Fletcher <!-- end #header --> <br /> Version 305, March 18, 2011<br /> </p> </div> <div id="mainContent"> <h1><?php do_level_1(); ?> Calculator Test</h1> <p>Convert <?php printf("1 MJ = %5.4f KWH",AF_MJ2KWH); ?> Obtained from : <a href="http://www.convertworld.com/en/energy/kWh.html" target="_blank">convertworld.com</a> <!-- end #mainContent --> </p> <pre><?php set_section(AF_C,"Control Box","Ctrl",60,123); if($dbg>9) { print_section(AF_C); echo "<br />"; } set_section(AF_H,"Horizontal Arm","Horz",21,345); if ($dbg> 9 ) { print_section(AF_H); echo "<br />"; } set_section(AF_V,"Vertical Arm","Vert",9,34.56); if($dbg > 9) { print_section(AF_V); } echo "<br />"; set_section(AF_R,"Reactor","React",1,0); if($dbg > 9) { print_section(AF_R); } ?></pre> NOTE: These are just <strong>TEST</strong> values <p/>Sections: <p> <?php print_section_table(1,9); ?> </p> <pre><?php set_material(1,"None","-",0,0,0); set_material(2,"Lithium Ion Battery","Li/i Bat",12,34,56); set_material(3,"Compressed Hydrogen + Air Fuel Cell","H/Air FC",98,76,54); if($dbg>9) { print_material(1); echo "<br />"; print_material(2); echo "<br />"; print_material(3); echo "<br />"; print_material(4); echo "<br />"; } ?></pre> Materials <p> <?php print_material_table(1,$material_max); ?> <p>Experiments :</p> <?php IF($dbg>0) ECHO "<p>(Some debug switches are turned on )</p>\n"; set_expt(1,"Experiment 1","Expt-1",10,8,"January"); set_expt_sec(AF_C,1); set_expt_sec(AF_H,2); set_expt_sec(AF_V,3); if($dbg>3) { print_expt(1); } set_expt(3,"Experiment 2","Expt-2",16,18,"February"); set_expt_sec(AF_C,1); set_expt_sec(AF_R,2); set_expt_sec(AF_V,1); if($dbg>3) { print_expt(3); } ?> ?> <br />Version 4 <?php print_expt_table_v4(1,$expt_max,false); ?> <p>GREEN if ROSSI is confirmed, RED if it COULD be a fake.</p> <p> </p> </div> <div id="footer"> <p>Version 1, March 5, 2011 <?php send_email(); ?> <a href="http://lenr.qumbu.com/" target="_blank">Home</a></p> <!-- end #footer --></div> <!-- end #container --></div> </body> </html>