Last active
October 10, 2016 17:03
-
-
Save natl/97de820b5733aa0af6cf179986b74222 to your computer and use it in GitHub Desktop.
Updated G4BioChemicalMaterials() Method for G4NistMaterialBuilder class
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /* | |
| A note on sources: Prior to October 2016, the biomolecules in G4 had | |
| inconsistently set density and ionisation values. While NIST provides | |
| density and mean excitation energy values for Adenine and Guanine, | |
| these are not well-cited and of dubious reliability. In Oct. 2016, | |
| the materials were updated. Mean excitation energy is based of | |
| Sauer et al. (2011) Mean Excitation Energies for Biomolecules: | |
| Glycine to DNA, (Advances in Quantum Chemistry, vol 62) | |
| DOI: 10.1016/B978-0-12-386477-2.00011-5 | |
| The mean excitation energies used are | |
| Phosphate: 95.88 eV | |
| Cytosine: 69.60 eV | |
| Uracil: 73.13 eV | |
| Thymine: 70.00 eV | |
| Adenine: 69.06 eV | |
| Guanine: 71.58 eV | |
| For deoxyribose, a mean excitation energy of 70 eV is used, | |
| consistent with the mean excitation energy of the 5 nucleosides | |
| (ie. nucleobases bonded to ribose sugar). | |
| For density, we biomaterials use the predicted densities generated | |
| by the ACD/Labs Percepta Platform - PhysChem Module, accessed through | |
| ChemSpider, a tool provided by the Royal Society for Chemistry. | |
| The densities adopted are: | |
| Phosphate: 2.2 g/cm^3 (Phosphoric Acid, H3PO4) | |
| Deoxyribose: 1.5 g/cm^3 | |
| Cytosine: 1.6 g/cm^3 | |
| Uracil: 1.5 g/cm^3 | |
| Thymine: 1.4 g/cm^3 | |
| Adenine: 1.9 g/cm^3 | |
| Guanine: 2.2 g/cm^3 | |
| */ | |
| /** | |
| Build biochemical materials used in G4DNA Applications. | |
| Materials are defined in bonded and unbonded forms according to the | |
| following schema: | |
| G4_MATERIAL: Molecule in its free state | |
| G4_DNA_MATERIAL: Molecule, considering atoms lost in bonding | |
| */ | |
| void G4NistMaterialBuilder::BioChemicalMaterials() | |
| { | |
| // BEGIN MATERIALS IN THEIR UNBONDED FORM | |
| // G4_ADENINE, G4_GUANINE are defined in | |
| // G4NistMaterialBuilder::NistCompoundMaterials() | |
| AddMaterial("G4_CYTOSINE", 1.6, 0, 69.6, 4); | |
| AddElementByAtomCount("H", 5); | |
| AddElementByAtomCount("C", 4); | |
| AddElementByAtomCount("N", 3); | |
| AddElementByAtomCount("O", 1); | |
| AddMaterial("G4_THYMINE", 1.4, 0, 70., 4); | |
| AddElementByAtomCount("H", 6); | |
| AddElementByAtomCount("C", 5); | |
| AddElementByAtomCount("N", 2); | |
| AddElementByAtomCount("O", 2); | |
| AddMaterial("G4_URACIL", 1.5, 0, 73.13, 4); | |
| AddElementByAtomCount("H", 4); | |
| AddElementByAtomCount("C", 4); | |
| AddElementByAtomCount("N", 2); | |
| AddElementByAtomCount("O", 2); | |
| AddMaterial("G4_DEOXYRIBOSE", 1.5, 0, 70, 3); | |
| AddElementByAtomCount("H", 10); | |
| AddElementByAtomCount("C", 5); | |
| AddElementByAtomCount("O", 3); | |
| // END UNBONDED MATERIALS / BEGIN BONDED MATERIALS | |
| // Deoxyribose loses 3 OH groups in bonding to bond with PO4 and a base pair | |
| AddMaterial("G4_DNA_DEOXYRIBOSE", 1.5, 0, 70., 3); | |
| AddElementByAtomCount("H", 7); | |
| AddElementByAtomCount("C", 5); | |
| AddElementByAtomCount("O", 1); | |
| // Typically there are no H atoms considered in the Phosphate group | |
| AddMaterial("G4_DNA_PHOSPHATE", 2.2, 0, 95.88, 2); | |
| AddElementByAtomCount("P", 1); | |
| AddElementByAtomCount("O", 4); | |
| // GATCU bases bonded to a deoxyribose (they drop one H) | |
| AddMaterial("G4_DNA_ADENINE", 1.9, 0, 69.06, 3); | |
| AddElementByAtomCount("H",4 ); | |
| AddElementByAtomCount("C",5 ); | |
| AddElementByAtomCount("N",5 ); | |
| AddMaterial("G4_DNA_GUANINE", 2.2, 0, 71.58, 4); | |
| AddElementByAtomCount("H",4 ); | |
| AddElementByAtomCount("C",5 ); | |
| AddElementByAtomCount("N",5 ); | |
| AddElementByAtomCount("O",1 ); | |
| AddMaterial("G4_DNA_CYTOSINE", 1.6, 0, 69.6, 4); | |
| AddElementByAtomCount("H", 4); | |
| AddElementByAtomCount("C", 4); | |
| AddElementByAtomCount("N", 3); | |
| AddElementByAtomCount("O", 1); | |
| AddMaterial("G4_DNA_THYMINE", 1.4, 0, 70., 4); | |
| AddElementByAtomCount("H", 5); | |
| AddElementByAtomCount("C", 5); | |
| AddElementByAtomCount("N", 2); | |
| AddElementByAtomCount("O", 2); | |
| AddMaterial("G4_DNA_URACIL", 1.5, 0, 73.13, 4); | |
| AddElementByAtomCount("H", 3); | |
| AddElementByAtomCount("C", 4); | |
| AddElementByAtomCount("N", 2); | |
| AddElementByAtomCount("O", 2); | |
| // END BONDED MATERIALS | |
| /* | |
| // Complete 70 kg body of adult men from en.wikipedia.org/ see References there | |
| AddMaterial("G4_BODY", 1.8, 0, 78, 12); | |
| AddElementByWeightFraction( 8, 0.650); | |
| AddElementByWeightFraction( 6, 0.180); | |
| AddElementByWeightFraction( 1, 0.100); | |
| AddElementByWeightFraction( 7, 0.030); | |
| AddElementByWeightFraction(20, 0.015); | |
| AddElementByWeightFraction(15, 0.010); | |
| AddElementByWeightFraction(19, 0.0025); | |
| AddElementByWeightFraction(16, 0.0025); | |
| AddElementByWeightFraction(11, 0.0015); | |
| AddElementByWeightFraction(17, 0.0015); | |
| AddElementByWeightFraction(12, 0.0005); | |
| AddElementByWeightFraction(26, 0.00006); | |
| */ | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment