Show
Ignore:
Timestamp:
02/18/05 14:27:34 (4 years ago)
Author:
kstemen
Message:

Set page encoding to UTF8 (some of the data from the MatML files is in UTF8, not ANSI).

Changed heat capacity so it uses Kelvin, like Thermal Conductivity.

Categorization color key is fixed for IE.

The extra 1's in unit descriptions have been removed, e.g. W-1-1/1-1-m-K is now W/m-K.

The unit conversion code now converts between degrees Fahrenheit, degrees Celcius, and Kelvin by only multiplying or dividing if those units appear with negative powers. I think this means I am treating all degrees Fahrenheit with negative powers as Rankin.

Upon Laura's request, the page title has been switched back to MatDL: MatML and Material Grapher.

Location:
trunk/matml/webselector/php
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • trunk/matml/webselector/php/dbquery.php.inc

    r152 r155  
    1616        $ret=explode("/",$this->name); 
    1717        if(!isset($ret[1])) 
    18             $ret[1]=""; 
     18            $ret[1]='1'; 
    1919        return $ret; 
     20    } 
     21    function name_mul($a,$b) 
     22    { 
     23        if($a=='1') 
     24            return $b; 
     25        else if($b=='1') 
     26            return $a; 
     27        return "$a-$b"; 
    2028    } 
    2129    function div($other) 
     
    2331        $mine=$this->name_split(); 
    2432        $eirs=$other->name_split(); 
    25         if($mine[0]&&$eirs[1]) 
    26             $mine[0].="-$eirs[1]"; 
    27         else 
    28             $mine[0].=$eirs[1]; 
    29         if($mine[1]&&$eirs[0]) 
    30             $mine[1].="-$eirs[0]"; 
    31         else 
    32             $mine[1].=$eirs[0]; 
    33         if(!$mine[1]) 
     33        $mine[0]=$this->name_mul($mine[0],$eirs[1]); 
     34        $mine[1]=$this->name_mul($mine[1],$eirs[0]); 
     35 
     36        if($mine[1]=='1') 
    3437            $name=$mine[0]; 
    3538        else 
     
    4649        $mine=$this->name_split(); 
    4750        $eirs=$other->name_split(); 
    48         if($mine[0]&&$eirs[0]) 
    49             $mine[0].="-$eirs[0]"; 
    50         else 
    51             $mine[0].=$eirs[0]; 
    52         if($mine[1]&&$eirs[1]) 
    53             $mine[1].="-$eirs[1]"; 
    54         else 
    55             $mine[1].=$eirs[1]; 
    56         if(!$mine[1]) 
     51        $mine[0]=$this->name_mul($mine[0],$eirs[0]); 
     52        $mine[1]=$this->name_mul($mine[1],$eirs[1]); 
     53 
     54        if($mine[1]=='1') 
    5755            $name=$mine[0]; 
    5856        else 
     
    7371 
    7472 
    75       if( $power > 1){ 
    76         if($mine[0]) 
    77           { 
    78             $mine[0].="^$power"; 
    79           } 
    80         if($mine[1]) 
    81           { 
    82             $mine[1].="^$power"; 
    83           } 
    84       } 
    85       elseif($power == 1){ 
    86         //Do nothing 
    87       } 
    88       elseif( $power == 0){ 
    89  
    90         if($mine[0]) 
    91           { 
    92             $mine[0]="1"; 
    93           } 
    94         if($mine[1]) 
    95           { 
    96             $mine[1]="1"; 
    97           } 
    98       } 
    99       elseif($power == -1){ 
    100  
    101         if($mine[0]&&$mine[1]) 
    102           { 
     73      if($power < 0){ 
    10374            $temp   = $mine[0]; 
    10475            $mine[0]= $mine[1]; 
    10576            $mine[1]= $temp; 
     77            $namepower=-$power; 
     78      } 
     79      else 
     80            $namepower=$power; 
     81 
     82      if( $namepower > 1){ 
     83        if($mine[0]!='1') 
     84          { 
     85            $mine[0].="^$namepower"; 
    10686          } 
    107         elseif($mine[1]&&!$mine[0]) 
     87        if($mine[1]!='1') 
    10888          { 
    109             $mine[0]=$mine[1]; 
    110             $mine[1]=""; 
     89            $mine[1].="^$namepower"; 
    11190          } 
    112         elseif($mine[0]&&!$mine[1]) 
    113           { 
    114             $mine[1]=$mine[0]; 
    115             $mine[0]=1; 
    116           } 
    117  
    118       } 
    119       elseif($power < -1){       
    120  
    121  
    122                 if($mine[0]&&$mine[1]) 
    123           { 
    124             $temp   = $mine[0]; 
    125             $mine[0]= "$mine[1]^".abs($power); 
    126             $mine[1]= "$temp^".abs($power); 
    127           } 
    128         elseif($mine[1]&&!$mine[0]) 
    129           { 
    130             $mine[0]="$mine[1]^".abs($power); 
    131             $mine[1]=""; 
    132           } 
    133         elseif($mine[0]&&!$mine[1]) 
    134           { 
    135             $mine[1]="$mine[0]^".abs($power); 
    136             $mine[0]=1; 
    137           } 
    138  
    139       } 
    140  
    141  
    142         if(!$mine[1]) 
     91      } 
     92      elseif($namepower == 1){ 
     93        //Do nothing 
     94      } 
     95      elseif( $namepower == 0){ 
     96            $mine[0]="1"; 
     97            $mine[1]="1"; 
     98      } 
     99 
     100        if($mine[1]=='1') 
    143101            $name=$mine[0]; 
    144102        else 
     
    384342    $property_data->avg_value*=pow( 
    385343        $BTUs_to_Joules->scale,$power); 
     344 
     345    //Convert all negative powers of degree F and degree C to Kelvin 
     346    $degreeF_to_Kelvin=$unit_infos['K']->div($unit_infos['°F']); 
     347    $degreeF_to_Kelvin->scale=5.0/9.0; 
     348    $degreeC_to_Kelvin=$unit_infos['K']->div($unit_infos['°C']); 
     349    $degreeC_to_Kelvin->scale=1; 
     350 
     351    $power=get_factor_power($property_data->unit->num_name,$unit_infos['°F']->num_name); 
     352    if($power>0) 
     353        $power=0; 
     354    $property_data->unit=$property_data->unit->mul($degreeF_to_Kelvin->pow($power)); 
     355    $property_data->avg_value*=pow( 
     356        $degreeF_to_Kelvin->scale,$power); 
     357         
     358    $power=get_factor_power($property_data->unit->num_name,$unit_infos['°C']->num_name); 
     359    if($power>0) 
     360        $power=0; 
     361    $property_data->unit=$property_data->unit->mul($degreeC_to_Kelvin->pow($power)); 
     362    $property_data->avg_value*=pow( 
     363        $degreeC_to_Kelvin->scale,$power); 
     364     
     365    //Now convert negative powers of Kelvin to degree C and degree F as needed 
     366    $power=get_factor_power($unit->num_name,$unit_infos['°F']->num_name); 
     367    if($power>0) 
     368        $power=0; 
     369    $property_data->unit=$property_data->unit->div($degreeF_to_Kelvin->pow($power)); 
     370    $property_data->avg_value/=pow( 
     371        $degreeF_to_Kelvin->scale,$power); 
     372 
     373    $power=get_factor_power($unit->num_name,$unit_infos['°C']->num_name); 
     374    if($power>0) 
     375        $power=0; 
     376    $property_data->unit=$property_data->unit->div($degreeC_to_Kelvin->pow($power)); 
     377    $property_data->avg_value/=pow( 
     378        $degreeC_to_Kelvin->scale,$power); 
    386379 
    387380    if(!$unit->equals($property_data->unit)) 
     
    608601                         "Youngs Modulus"       => $unit_infos["MPa"], 
    609602                         "Yield Strength"      => $unit_infos["MPa"], 
    610                          "Heat Capacity"      => $unit_infos["J"]->div($unit_infos["g"]->mul($unit_infos["°C"])), 
     603                         "Heat Capacity"      => $unit_infos["J"]->div($unit_infos["g"]->mul($unit_infos["K"])), 
    611604                         "Thermal Conductivity"      => $unit_infos["W"]->div($unit_infos["m"]->mul($unit_infos["K"])), 
    612605                         ); 
  • trunk/matml/webselector/php/select.php

    r152 r155  
    11<?php 
     2header("Content-Type: text/html; charset=utf-8");  
    23include("dbquery.php.inc"); 
    34include "setvars.inc.php"; 
     
    78<html> 
    89<head> 
    9    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     10   <!--<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">--> 
    1011   <meta name="Author" content="MatDL Team"> 
    1112   <meta name="Description" content="MatDL Simple Selector"> 
     
    5152echo "<td>\n"; 
    5253$color=$category_raw_colors[$number]; 
    53 echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X></table>\n",$color[0],$color[1],$color[2]); 
     54echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X><tr><td></td></tr></table>\n",$color[0],$color[1],$color[2]); 
    5455echo "</td>\n"; 
    5556echo "<td>\n"; 
     
    6970    echo "<tr>\n"; 
    7071    echo "<td>\n"; 
    71     echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X></table>\n",$color[0],$color[1],$color[2]); 
     72    echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X><tr><td></td></tr></table>\n",$color[0],$color[1],$color[2]); 
    7273    echo "</td>\n"; 
    7374    echo "<td>\n&nbsp;&nbsp;"; 
  • trunk/matml/webselector/php/select_other.php

    r152 r155  
    11<?php 
     2header("Content-Type: text/html; charset=utf-8");  
    23include("dbquery.php.inc"); 
    34include "setvars.inc.php"; 
     
    78<html> 
    89<head> 
    9    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     10   <!--<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">--> 
    1011   <meta name="Author" content="MatDL Team"> 
    1112   <meta name="Description" content="MatDL Simple Selector"> 
     
    1920    <th width="24%" bordercolor="#BDB583" bgcolor="#BDB583" scope="col"><div align="center"><img src="images/MATDL-LOGO.JPG" width="240" height="85" border="0" usemap="#Map" /></div></th> 
    2021    <th width="49%" height="84" bordercolor="#BDB583" bgcolor="#BDB583" scope="col"><p> 
    21 <b><em style="font-size: 40px">MatDL: MatML and Ashby Plots Selector</em></b> 
     22<b><em style="font-size: 40px">MatDL: MatML and Material Grapher</em></b> 
    2223</p>    </th> 
    2324    <th width="27%" colspan="2" bordercolor="#BDB583" bgcolor="#BDB583" scope="col"><div align="center"><img src="images/NSF+NSDL-LOGO.JPG" width="256" height="77" border="0" usemap="#Map3Map" /> 
     
    5051echo "<td>\n"; 
    5152$color=$category_raw_colors[$number]; 
    52 echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X></table>\n",$color[0],$color[1],$color[2]); 
     53echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X><tr><td></td></tr></table>\n",$color[0],$color[1],$color[2]); 
    5354echo "</td>\n"; 
    5455echo "<td>\n"; 
     
    6869    echo "<tr>\n"; 
    6970    echo "<td>\n"; 
    70     echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X></table>\n",$color[0],$color[1],$color[2]); 
     71    echo sprintf("<table border=1 width=8 height=8 bgcolor=#%02X%02X%02X><tr><td></td></tr></table>\n",$color[0],$color[1],$color[2]); 
    7172    echo "</td>\n"; 
    7273    echo "<td>\n&nbsp;&nbsp;";