Print

Print


Commit in GeomConverter on MAIN
src/org/lcsim/material/Material.java+22-181.15 -> 1.16
                      /MaterialCalculator.java+34-371.4 -> 1.5
test/org/lcsim/material/XMLMaterialManagerTest.java+39-111.3 -> 1.4
                       /test.xml+199-1791.2 -> 1.3
+294-245
4 modified files
Fix GC-45. G10 lambda looks ok, now.

GeomConverter/src/org/lcsim/material
Material.java 1.15 -> 1.16
diff -u -r1.15 -r1.16
--- Material.java	20 Jul 2005 01:01:28 -0000	1.15
+++ Material.java	22 Jul 2005 00:11:32 -0000	1.16
@@ -23,11 +23,11 @@
     
     /* Default pressure in atmospheres = 1.0 */
     public static final double DEFAULT_PRESSURE = 1.0;
-
+    
     /* Maximum RL and NIL */
     public static final double MAX_RADIATION_LENGTH = java.lang.Double.MAX_VALUE;
     public static final double MAX_NUCLEAR_INTERACTION_LENGTH = java.lang.Double.MAX_VALUE;
-
+    
     /* temperature in Kelvin */
     double _temp;
     
@@ -37,7 +37,7 @@
     /* density in g/cm3 */
     double _density;
     
-    /* corresponds to single MaterialElement? */   
+    /* corresponds to single MaterialElement? */
     boolean _isElement;
     
     /* Z value */
@@ -54,10 +54,10 @@
     
     /* chemical formula */
     String _formula;
- 
+    
     int _nComponents;
-    int _nComponentsMax;
-
+    int _nComponentsMax;    
+    
     /* number of elements in mass fraction list */
     int _nElements;
     
@@ -244,7 +244,7 @@
     }
     
     private void computeDerivedQuantities()
-    {
+    {        
         computeRadiationLength();
         computeNuclearInteractionLength();
     }
@@ -294,8 +294,6 @@
     public void addElement(MaterialElement element,
             int nAtoms)
     {
-        //System.out.println("Material.addElement() - composite add " + element.getName() + " to " + getName() );
-        
         if ( _nElements < _nComponentsMax )
         {
             _elements.add(element);
@@ -311,6 +309,7 @@
         
         if ( isFilled() )
         {
+            //System.out.println(getName() + " is filled");
             //System.out.println("setting mass fractions");
             
             double Zmol = 0;
@@ -338,7 +337,8 @@
     public void addElement(MaterialElement element,
             double fraction)
     {
-        //System.out.println("Material.addElement() - fraction add " + element.getName() + " to " + getName() );
+
+//        System.out.println("Material.addElement() - fraction add " + element.getName() + " to " + getName() );
         
         if ( _nComponents < _nComponentsMax )
         {
@@ -368,6 +368,7 @@
         
         if ( isFilled() )
         {
+            //System.out.println(getName() + " is filled");
             checkMassSum();
             computeDerivedQuantities();
         }
@@ -377,7 +378,8 @@
     public void addMaterial(Material material,
             double fraction)
     {
-        //System.out.println("Material.addElement() - fraction add " + material.getName() + " to " + getName() );
+
+//        System.out.println("Material.addElement() - fraction add " + material.getName() + " to " + getName() );
         
         if ( _atoms.size() > 0 )
         {
@@ -429,10 +431,12 @@
         if ( isFilled() )
         {
             checkMassSum();
+            computeDerivedQuantities();
         }
     }
     
-    private boolean isFilled()
+    /** @return true if all sub-materials have been added (externally); false if not */
+    public boolean isFilled()
     {
         return (_nComponents == _nComponentsMax);
     }
@@ -455,11 +459,11 @@
     public String toString()
     {
         return "Material=" + getName() + "; nComponents=" + _nComponents +
-                "; nElements=" + _nElements + "; temp(K)=" + _temp + "\t\n" +
-                "pressure(atmos)=" + _pressure + "; density(g/cm3)=" + _density +
-                "; state=" + _state.toString() + "\t\n" + "NIL(gcm2)=" +
-                _nuclearInteractionLength + "; RL(gcm2)=" + _radiationLength +
-                "; NIL(cm)" + getNuclearInteractionLengthWithDensity() +
-                "; RL(cm)" + getRadiationLengthWithDensity();
+                "; nComponentsMax=" + _nComponentsMax + "; nElements=" + _nElements +
+                "; temp(K)=" + _temp + "\n\t" + "pressure(atmos)=" + _pressure +
+                "; density(g/cm3)=" + _density + "; state=" + _state.toString() +
+                "\n\t" + "lambda(gcm2)=" + _nuclearInteractionLength +
+                "; X0(gcm2)=" + _radiationLength + "; lambda(cm)=" + getNuclearInteractionLengthWithDensity() +
+                "; X0(cm)=" + getRadiationLengthWithDensity();
     }
 }
\ No newline at end of file

GeomConverter/src/org/lcsim/material
MaterialCalculator.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- MaterialCalculator.java	2 Jul 2005 00:49:47 -0000	1.4
+++ MaterialCalculator.java	22 Jul 2005 00:11:32 -0000	1.5
@@ -14,25 +14,16 @@
  * @author jeremym
  */
 abstract public class MaterialCalculator
-{
-    /* Coulomb correction factors from G4Element via Phys Rev. D50 3-1 (1994) page 1254 */
-    //public static final double[] COULOMB_CORRECTIONS = { 0.0083, 0.20206, 0.0020, 0.0369 };
-        
+{        
     /* Fine structure constant from PDG July 2004 */
     public static final double FINE_STRUCTURE_CONSTANT = 1 / 137.03599911;
     
-    /* Tsai constants from G4Element::ComputeLradTsaiFactor() via Phys Rev. D50 3-1 (1994) page 1254 */
-    //public static final double[] TSAI_LRAD_LIGHT = { 5.31, 4.79, 4.74, 4.71 };
-    //public static final double[] TSAI_LPRAD_LIGHT = { 6.144, 5.621, 5.805, 5.924 };
-        
-
-    
     public static double computeRadiationLengthEstimate(double A, double Z)
     {
         return (180.0 * A / ( Z * Z));
-    }    
+    }
     
-    /** 
+    /**
      * Compute radiation length using Tsai formula
      *
      * Based on LELAPS CEPack/ceelement::setIntLength()
@@ -42,7 +33,7 @@
     {
         double azsq = FINE_STRUCTURE_CONSTANT * Z;
         azsq *= azsq;
-        double f = azsq * ( 1.0 / (1.0 + azsq) + 0.20206 - 0.0369 * azsq + 0.0083 * azsq * azsq 
+        double f = azsq * ( 1.0 / (1.0 + azsq) + 0.20206 - 0.0369 * azsq + 0.0083 * azsq * azsq
                 - 0.002 * azsq * azsq * azsq);
         
         double Lrad, LradP;
@@ -61,21 +52,21 @@
             Lrad = 4.74;
             LradP = 5.805;
         }
-        else if (Z==4) 
+        else if (Z==4)
         {
             Lrad = 4.71;
             LradP = 5.924;
-        }            
+        }
         else
         {
             Lrad = log(184.15 / pow(Z, 0.333333333));
-            LradP = log(1194.0 / pow (Z, 0.666666667));
+            LradP = log(1194.0 / pow(Z, 0.666666667));
         }
         double rlen = 716.408 * A / ((Z * Z * (Lrad - f) + Z * LradP));
         return rlen;
-    }        
+    }
     
-    /**  
+    /**
      * Compute NIL, using hard-coded values for Z <= 2 from PDG.
      *
      * Above helium, use a simple fit.
@@ -83,16 +74,16 @@
      * Base on LELAPS CEPack/ceelement::setIntLength()
      *
      */
-    public static double computeNuclearInteractionLength(double A, double Z)   
+    public static double computeNuclearInteractionLength(double A, double Z)
     {
-        double NIL = 0;        
+        double NIL = 0;
         if (Z==1)
         {
             if (A<1.5)
             {
                 NIL = 50.8;
             }
-            else 
+            else
             {
                 NIL = 54.7;
             }
@@ -109,7 +100,7 @@
         return NIL;
     }
 }
-
+   
     /*
     public static double computeCoulombCorrection(double Z)
     {
@@ -117,23 +108,23 @@
         {
             throw new IllegalArgumentException("Z cannot be <= 0.");
         }
-        
+     
         double az2 = (FINE_STRUCTURE_CONSTANT * Z) * (FINE_STRUCTURE_CONSTANT * Z);
         double az4 = az2 * az2;
-        
-        double coulomb = (COULOMB_CORRECTIONS[0] * az4 + COULOMB_CORRECTIONS[1] + 
+     
+        double coulomb = (COULOMB_CORRECTIONS[0] * az4 + COULOMB_CORRECTIONS[1] +
                 1.0/(1.0 + az2)) * az2 - (COULOMB_CORRECTIONS[2] * az4 + COULOMB_CORRECTIONS[3]) * az4;
-        
+     
         return coulomb;
     }
      */
-    
+
     /*
     public static double computeTsaiFactor(double Z, double coulombCorrection)
     {
         double logZ3 = log(Z) / 3.0;
         int iz = (int) (Z + 0.5) - 1;
-        
+     
         double lrad, lprad;
         if ( iz <= 3)
         {
@@ -146,20 +137,26 @@
             lprad = log(1194.0) - 2 * logZ3;
         }
      */
-        
-        /**
-         * FINE_STRUCTURE_CONSTANT is actually 'alpha_rcl2' in G4Element but this is same as F.S.C. in CLHEP. 
-         */
+
+/**
+ * FINE_STRUCTURE_CONSTANT is actually 'alpha_rcl2' in G4Element but this is same as F.S.C. in CLHEP.
+ */
 //        double tsai = 4 * FINE_STRUCTURE_CONSTANT * Z * ( Z * (lrad * coulombCorrection) + lprad);
 //        return tsai;
 //    }
-    
+
 //    public static double computeTsaiFactor(double Z)
 //    {
 //        return computeTsaiFactor(Z, computeCoulombCorrection(Z) );
-//    }    
-    
+//    }
+
 //    public static double computeNuclearInteractionLengthEstimate(double A)
-//    {        
+//    {
 //        return ( Material.LAMBDA0 * pow(A, 0.33333));
-//    }
\ No newline at end of file
+//    }
+
+/* Coulomb correction factors from G4Element via Phys Rev. D50 3-1 (1994) page 1254 */
+//public static final double[] COULOMB_CORRECTIONS = { 0.0083, 0.20206, 0.0020, 0.0369 };
+/* Tsai constants from G4Element::ComputeLradTsaiFactor() via Phys Rev. D50 3-1 (1994) page 1254 */
+//public static final double[] TSAI_LRAD_LIGHT = { 5.31, 4.79, 4.74, 4.71 };
+//public static final double[] TSAI_LPRAD_LIGHT = { 6.144, 5.621, 5.805, 5.924 };
\ No newline at end of file

GeomConverter/test/org/lcsim/material
XMLMaterialManagerTest.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- XMLMaterialManagerTest.java	1 Jul 2005 00:12:25 -0000	1.3
+++ XMLMaterialManagerTest.java	22 Jul 2005 00:11:33 -0000	1.4
@@ -20,9 +20,10 @@
 
 public class XMLMaterialManagerTest extends TestCase
 {
-    static public final String materialName = "Aluminum";
-    static public final String formula = "Al";
-    public static URL defURL = XMLMaterialManagerTest.class.getResource("test.xml");
+    //static public final String materialName = "Aluminum";
+    //static public final String formula = "Al";
+    private static URL defURL = XMLMaterialManagerTest.class.getResource("test.xml");
+    XMLMaterialManager mgr;
     
     public XMLMaterialManagerTest(String testName)
     {
@@ -34,10 +35,37 @@
         return new TestSuite(XMLMaterialManagerTest.class);
     }
     
-    public void test_basic() throws JDOMException, IOException
+    protected void setUp()
     {
-        XMLMaterialManager f = XMLMaterialManager.create(defURL);
+        try {
+            mgr = XMLMaterialManager.create(defURL);
+        }
+        catch ( Exception e)
+        {
+            throw new RuntimeException("Error creating XMLMaterialManager.", e);
+        }
+    }
+    
+    public static void testLambdaNonzero() throws org.lcsim.material.MaterialNotFoundException
+    {
+        Material quartz = MaterialManager.instance().findMaterial("Quartz");
+        Material epoxy = MaterialManager.instance().findMaterial("Epoxy");
+        Material g10 = MaterialManager.instance().findMaterial("G10");        
+        
+        double quartzNIL, epoxyNIL, g10NIL;
+        quartzNIL = quartz.getNuclearInteractionLength();
+        epoxyNIL = epoxy.getNuclearInteractionLength();
+        g10NIL = g10.getNuclearInteractionLength(); 
+        
+        assert(quartzNIL != 0);
+        assert(epoxyNIL != 0);
+        assert(g10NIL != 0);
         
+        //System.out.println(g10.toString() );       
+    }
+    
+    public void testBasic() throws JDOMException, IOException
+    {
         /* Test materials element. */
         //assertTrue(f.getMaterialsRoot() != null);
         
@@ -51,12 +79,12 @@
         //assertTrue(em != null);
         
         /* Test resetMaps() method. */
-        f.resetMaps();
-        assertEquals(f.getNumberOfElements(), 0);
-        assertEquals(f.getNumberOfMaterials(), 0);
+        //f.resetMaps();
+        //assertEquals(f.getNumberOfElements(), 0);
+        //assertEquals(f.getNumberOfMaterials(), 0);
     }
     
-    public void test_reference() throws MalformedURLException, IOException, JDOMException
+    public void testReference() throws MalformedURLException, IOException, JDOMException
     {
         //XMLMaterialManager f = XMLMaterialManager.create();
         
@@ -82,10 +110,10 @@
         assertTrue(f.getElement("O") != null);
         assertTrue(f.getElement("Hydrogen_e") != null);
         assertTrue(f.getElement("C") != null);
-         */ 
+         */
     }
     
-    public void test_loadElements() throws IOException, JDOMException
+    public void testLoadElements() throws IOException, JDOMException
     {
         /*
         XMLMaterialManager m = XMLMaterialManager.create();

GeomConverter/test/org/lcsim/material
test.xml 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- test.xml	1 Jul 2005 00:11:00 -0000	1.2
+++ test.xml	22 Jul 2005 00:11:33 -0000	1.3
@@ -2,202 +2,222 @@
 
 <materials>
 
-      <!-- elements -->
-      <element name="Al" formula="Al" Z="13.0">
-	<atom type="A" unit="g/mole" value="26.98" />
-      </element>
-      
-      <material name="Aluminum">
-	<D type="density" unit="g/cm3" value="2.70" />
-	<composite n="1" ref="Al" />
-      </material>
+  <!-- elements -->
+  <element name="Al" formula="Al" Z="13.0">
+    <atom type="A" unit="g/mole" value="26.98" />
+  </element>
+
+  <material name="Aluminum">
+    <D type="density" unit="g/cm3" value="2.70" />
+    <composite n="1" ref="Al" />
+  </material>
 
-      <!--
+  <!--
       <element name="Ar" Z="18.0" N="40" >
-	<atom type="A" unit="g/mol" value="39.9480" />
+      <atom type="A" unit="g/mol" value="39.9480" />
       </element>
 
-      <element name="Beryllium_e" formula="Be" Z="4.0">
-	<atom type="A" unit="g/mol" value="9.012182" />
-      </element>
+<element name="Beryllium_e" formula="Be" Z="4.0">
+<atom type="A" unit="g/mol" value="9.012182" />
+</element>
 
-      <element name="Bromine_e" formula="Br" Z="35.">
-	<atom value="79.905"/>
-      </element>
+<element name="Bromine_e" formula="Br" Z="35.">
+<atom value="79.905"/>
+</element>
 
-      <element name="B" formula="B" Z="5.">
-	<atom value="10.811"/>
-      </element>
-      
-      <element name="C" formula="C" Z="6.">
-	<atom value="12.01" />
-      </element>
-      
-      <element name="Fluorine_e" formula="F" Z="9.">
-	<atom value="18.998" />
-      </element>    
+<element name="B" formula="B" Z="5.">
+<atom value="10.811"/>
+</element>
 
-      <element name="Cl" formula="Cl" Z="17.">
-	<atom value="35.45" />
-      </element>
+<element name="C" formula="C" Z="6.">
+<atom value="12.01" />
+</element>
 
-      <element name="H" formula="H" Z="1.">
-	<atom value="1.01" />
-      </element>
+<element name="Fluorine_e" formula="F" Z="9.">
+<atom value="18.998" />
+</element>
 
-      <element name="Fe" formula="Fe" Z="26.">
-	<atom value="55.85" />
-      </element>
+<element name="Cl" formula="Cl" Z="17.">
+<atom value="35.45" />
+</element>
 
-      <element  name="N"  Z="7.0"  N="14" >
-	<atom type="A" unit="g/mol" value=" 14.0100" />
-      </element>
+<element name="H" formula="H" Z="1.">
+<atom value="1.01" />
+</element>
 
-      <element  name="O"  Z="8.0"  N="16" >
-	<atom type="A" unit="g/mol" value=" 16.0000" />
-      </element>
+<element name="Fe" formula="Fe" Z="26.">
+<atom value="55.85" />
+</element>
 
-      <element name="Si" formula="Si" Z="14.">
-	<atom value="28.09" />
-      </element>
+<element  name="N"  Z="7.0"  N="14" >
+<atom type="A" unit="g/mol" value=" 14.0100" />
+</element>
 
-      <element name="Na" formula="Na" Z="11.">
-	<atom value="22.989770" />
-      </element>
-      
-      <element name="Tungsten_e" formula="W" Z="74.">
-	<atom value="183.84" />
-      </element>
+<element  name="O"  Z="8.0"  N="16" >
+<atom type="A" unit="g/mol" value=" 16.0000" />
+</element>
 
-      <element name="Titanium_e" formula="Ti" Z="22.">
-	<atom value="47.867" />
-      </element>
-      -->
+<element name="Si" formula="Si" Z="14.">
+<atom value="28.09" />
+</element>
 
-      <!-- materials -->
-      <!--
-      <material  name="Air"  >
-	<D type="density" unit="g/cm3" value="0.0012"/>
-	<fraction n="0.7803"  ref="N"/>
-	<fraction n="0.2103"  ref="O"/>
-	<fraction n="0.0094"  ref="Ar"/>
-      </material>
-     
+<element name="Na" formula="Na" Z="11.">
+<atom value="22.989770" />
+</element>
 
-      <material name="Beryllium">
-	<D type="density" unit="g/cm3" value="1.848" />
-	<composite n="1" ref="Beryllium_e" />
-      </material>
+<element name="Tungsten_e" formula="W" Z="74.">
+<atom value="183.84" />
+</element>
 
-      <material name="Epoxy">
-	<D type="density" value="1.3" unit="g/cm3"/>
-	<composite n="44" ref="H"/>
-	<composite n="15" ref="C"/>
-	<composite n="7" ref="O"/>
-      </material>
+<element name="Titanium_e" formula="Ti" Z="22.">
+<atom value="47.867" />
+</element>
+  -->
 
-      <material name="Quartz">
-	<D type="density" value="2.2" unit="g/cm3"/>
-	<composite n="1" ref="Si"/>
-	<composite n="2" ref="O"/>
-      </material>
-
-      <material name="G10">
-	<D type="density" value="1.7" unit="g/cm3" />
-	<fraction n="0.08" ref="Cl" />
-	<fraction n="0.773" ref="Quartz" />
-	<fraction n="0.147" ref="Epoxy" />
-      </material>
-
-      <material name="Iron">
-	<D type="density" value="7.87" unit="g/cm3" />
-	<composite n="1" ref="Fe" />
-      </material>
-
-      <material name="Polystyrene">
-	<D value="1.032" unit="g/cm3" />
-	<composite n="19" ref="C"/>
-	<composite n="21" ref="H" />
-      </material>
-
-      <material name="Silicon">
-	<D type="density" value="2.33" unit="g/cm3" />
-	<composite n="1" ref="Si" />
-      </material>
-
-      <material name="Tungsten">
-	<D type="density" value="19.3" unit="g/cm3"/>
-	<composite n="1" ref="Tungsten_e" />
-      </material>
+  <!-- materials -->
+  <!--
+      <material  name="Air"  >
+      <D type="density" unit="g/cm3" value="0.0012"/>
+      <fraction n="0.7803"  ref="N"/>
+      <fraction n="0.2103"  ref="O"/>
+      <fraction n="0.0094"  ref="Ar"/>
+      </material>
+
+
+<material name="Beryllium">
+<D type="density" unit="g/cm3" value="1.848" />
+<composite n="1" ref="Beryllium_e" />
+</material>
+
+<material name="Epoxy">
+<D type="density" value="1.3" unit="g/cm3"/>
+<composite n="44" ref="H"/>
+<composite n="15" ref="C"/>
+<composite n="7" ref="O"/>
+</material>
+
+<material name="Quartz">
+<D type="density" value="2.2" unit="g/cm3"/>
+<composite n="1" ref="Si"/>
+<composite n="2" ref="O"/>
+</material>
+
+<material name="G10">
+<D type="density" value="1.7" unit="g/cm3" />
+<fraction n="0.08" ref="Cl" />
+<fraction n="0.773" ref="Quartz" />
+<fraction n="0.147" ref="Epoxy" />
+</material>
+
+<material name="Iron">
+<D type="density" value="7.87" unit="g/cm3" />
+<composite n="1" ref="Fe" />
+</material>
+
+<material name="Polystyrene">
+<D value="1.032" unit="g/cm3" />
+<composite n="19" ref="C"/>
+<composite n="21" ref="H" />
+</material>
+
+<material name="Silicon">
+<D type="density" value="2.33" unit="g/cm3" />
+<composite n="1" ref="Si" />
+</material>
+
+<material name="Tungsten">
+<D type="density" value="19.3" unit="g/cm3"/>
+<composite n="1" ref="Tungsten_e" />
+</material>
+
+<material name="Titanium">
+<D type="density" value="4.5" unit="g/cm3"/>
+<composite n="1" ref="Titanium_e" />
+</material>
+
+<material name="Steel235">
+<D value="7.85" unit="g/cm3" />
+<fraction n="0.998" ref="Fe" />
+<fraction n=".002" ref="C" />
+</material>
+
+<material name="SiliconOxide">
+<D type="density" value="2.65" unit="g/cm3"/>
+<composite n="1" ref="Si" />
+<composite n="2" ref="O" />
+</material>
+
+<material name="BoronOxide">
+<D type="density" value="2.46" unit="g/cm3"/>
+<composite n="2" ref="B" />
+<composite n="3" ref="O" />
+</material>
+
+<material name="SodiumOxide">
+<D type="density" value="2.65" unit="g/cm3"/>
+<composite n="2" ref="Na" />
+<composite n="1" ref="O" />
+</material>
+
+<material name="AluminumOxide">
+<D type="density" value="3.89" unit="g/cm3"/>
+<composite n="2" ref="Al" />
+<composite n="3" ref="O" />
+</material>
+
+<material name="PyrexGlass">
+<D type="density" value="2.23" unit="g/cm3"/>
+<fraction n="0.806" ref="SiliconOxide" />
+<fraction n="0.130" ref="BoronOxide" />
+<fraction n="0.040" ref="SodiumOxide" />
+<fraction n="0.023" ref="AluminumOxide" />
+</material>
+
+<material name="CarbonFiber">
+<D type="density" value="1.5" unit="g/cm3"/>
+<fraction n="0.65" ref="C" />
+<fraction n="0.35" ref="Epoxy" />
+</material>
+
+<material name="Rohacell31">
+<D type="density" value="0.032" unit="g/cm3"/>
+<composite n="9"  ref="C" />
+<composite n="13" ref="H" />
+<composite n="2"  ref="O" />
+<composite n="1"  ref="N" />
+</material>
+
+<material name="RPCGas">
+<D type="density" value="0.0037" unit="g/cm3"/>
+<composite n="209"  ref="C" />
+<composite n="239" ref="H" />
+<composite n="381"  ref="Fluorine_e" />
+</material>
+
+<material name="PolystyreneFoam">
+<D type="density" value="0.0056" unit="g/cm3"/>
+<fraction n="1.0"  ref="Polystyrene" />
+</material>
+  -->
+
+  <material name="Epoxy">
+    <D type="density" value="1.3" unit="g/cm3"/>
+    <composite n="44" ref="H"/>
+    <composite n="15" ref="C"/>
+    <composite n="7" ref="O"/>
+  </material>
+
+  <material name="Quartz">
+    <D type="density" value="2.2" unit="g/cm3"/>
+    <composite n="1" ref="Si"/>
+    <composite n="2" ref="O"/>
+  </material>
+
+  <material name="G10">
+    <D type="density" value="1.7" unit="g/cm3"/>
+    <fraction n="0.08" ref="Cl"/>
+    <fraction n="0.773" ref="Quartz"/>
+    <fraction n="0.147" ref="Epoxy"/>
+  </material>
 
-      <material name="Titanium">
-	<D type="density" value="4.5" unit="g/cm3"/>
-	<composite n="1" ref="Titanium_e" />
-      </material>
-      
-     <material name="Steel235">
-	<D value="7.85" unit="g/cm3" />
-	<fraction n="0.998" ref="Fe" />
-	<fraction n=".002" ref="C" />
-      </material>
-     
-      <material name="SiliconOxide">
-      <D type="density" value="2.65" unit="g/cm3"/>
-	<composite n="1" ref="Si" />
-        <composite n="2" ref="O" />
-      </material>
-      
-      <material name="BoronOxide">
-      <D type="density" value="2.46" unit="g/cm3"/>
-	<composite n="2" ref="B" />
-        <composite n="3" ref="O" />
-      </material>
-     
-      <material name="SodiumOxide">
-      <D type="density" value="2.65" unit="g/cm3"/>
-	<composite n="2" ref="Na" />
-        <composite n="1" ref="O" />
-      </material>
-      
-      <material name="AluminumOxide">
-      <D type="density" value="3.89" unit="g/cm3"/>
-	<composite n="2" ref="Al" />
-        <composite n="3" ref="O" />
-      </material>
-                         
-      <material name="PyrexGlass">
-       <D type="density" value="2.23" unit="g/cm3"/>
-	<fraction n="0.806" ref="SiliconOxide" />
-	<fraction n="0.130" ref="BoronOxide" />
-        <fraction n="0.040" ref="SodiumOxide" />
-        <fraction n="0.023" ref="AluminumOxide" />        
-      </material>
-      
-      <material name="CarbonFiber">
-       <D type="density" value="1.5" unit="g/cm3"/>
-	<fraction n="0.65" ref="C" />
-	<fraction n="0.35" ref="Epoxy" />    
-      </material>
-      
-      <material name="Rohacell31">
-       <D type="density" value="0.032" unit="g/cm3"/>
-	<composite n="9"  ref="C" />
-	<composite n="13" ref="H" />
-	<composite n="2"  ref="O" />
-	<composite n="1"  ref="N" />
-      </material> 
-      
-      <material name="RPCGas">
-       <D type="density" value="0.0037" unit="g/cm3"/>
-	<composite n="209"  ref="C" />
-	<composite n="239" ref="H" />
-	<composite n="381"  ref="Fluorine_e" />
-      </material> 
-      
-      <material name="PolystyreneFoam">
-       <D type="density" value="0.0056" unit="g/cm3"/>
-	<fraction n="1.0"  ref="Polystyrene" />
-      </material> 
-      -->
-         
 </materials>
CVSspam 0.2.8