Mercurial > repos > deepakjadmin > mayatool3_test3
diff mayachemtools/docs/modules/html/Atom.html @ 0:73ae111cf86f draft
Uploaded
author | deepakjadmin |
---|---|
date | Wed, 20 Jan 2016 11:55:01 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mayachemtools/docs/modules/html/Atom.html Wed Jan 20 11:55:01 2016 -0500 @@ -0,0 +1,1569 @@ +<html> +<head> +<title>MayaChemTools:Documentation:Atom.pm</title> +<meta http-equiv="content-type" content="text/html;charset=utf-8"> +<link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css"> +</head> +<body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10"> +<br/> +<center> +<a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a> +</center> +<br/> +<div class="DocNav"> +<table width="100%" border=0 cellpadding=0 cellspacing=2> +<tr align="left" valign="top"><td width="33%" align="left"><a href="./AminoAcids.html" title="AminoAcids.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./AtomicDescriptors.html" title="AtomicDescriptors.html">Next</a></td><td width="34%" align="middle"><strong>Atom.pm</strong></td><td width="33%" align="right"><a href="././code/Atom.html" title="View source code">Code</a> | <a href="./../pdf/Atom.pdf" title="PDF US Letter Size">PDF</a> | <a href="./../pdfgreen/Atom.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a> | <a href="./../pdfa4/Atom.pdf" title="PDF A4 Size">PDFA4</a> | <a href="./../pdfa4green/Atom.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr> +</table> +</div> +<p> +</p> +<h2>NAME</h2> +<p>Atom</p> +<p> +</p> +<h2>SYNOPSIS</h2> +<p>use Atom;</p> +<p> +</p> +<h2>DESCRIPTION</h2> +<p><strong>Atom</strong> class provides the following methods:</p> +<p> <a href="#new">new</a>, <a href="#addhydrogens">AddHydrogens</a>, <a href="#copy">Copy</a>, <a href="#deleteatom">DeleteAtom</a>, <a href="#deletehydrogens">DeleteHydrogens</a>, <a href="#doesatomneighborhoodmatch">DoesAtomNeighborhoodMatch</a> +, <a href="#getatomicinvariantvalue">GetAtomicInvariantValue</a>, <a href="#getatomicweight">GetAtomicWeight</a>, <a href="#getbondtoatom">GetBondToAtom</a>, <a href="#getbonds">GetBonds</a> +, <a href="#getbondstoheavyatoms">GetBondsToHeavyAtoms</a>, <a href="#getbondstohydrogenatoms">GetBondsToHydrogenAtoms</a>, <a href="#getbondstononhydrogenatoms">GetBondsToNonHydrogenAtoms</a> +, <a href="#getexactmass">GetExactMass</a>, <a href="#getexplicithydrogens">GetExplicitHydrogens</a>, <a href="#getformalcharge">GetFormalCharge</a>, <a href="#getfreeradicalelectrons">GetFreeRadicalElectrons</a> +, <a href="#getgroupnumber">GetGroupNumber</a>, <a href="#getheavyatomneighbors">GetHeavyAtomNeighbors</a>, <a href="#getheavyatomneighborsatominformation">GetHeavyAtomNeighborsAtomInformation</a> +, <a href="#getheavyatomneighborsbondformation">GetHeavyAtomNeighborsBondformation</a>, <a href="#gethighestcommonvalence">GetHighestCommonValence</a> +, <a href="#gethydrogenatomneighbors">GetHydrogenAtomNeighbors</a>, <a href="#gethydrogens">GetHydrogens</a>, <a href="#getimplicithydrogens">GetImplicitHydrogens</a>, <a href="#getlargestbondorder">GetLargestBondOrder</a> +, <a href="#getlargestbondordertoheavyatoms">GetLargestBondOrderToHeavyAtoms</a>, <a href="#getlargestbondordertononhydrogenatoms">GetLargestBondOrderToNonHydrogenAtoms</a> +, <a href="#getlargestring">GetLargestRing</a>, <a href="#getlowestcommonvalence">GetLowestCommonValence</a>, <a href="#getmassnumber">GetMassNumber</a>, <a href="#getmissinghydrogens">GetMissingHydrogens</a> +, <a href="#getneighbors">GetNeighbors</a>, <a href="#getneighborsusingatomspecification">GetNeighborsUsingAtomSpecification</a>, <a href="#getnonhydrogenatomneighbors">GetNonHydrogenAtomNeighbors</a> +, <a href="#getnonhydrogenatomneighborsatominformation">GetNonHydrogenAtomNeighborsAtomInformation</a> +, <a href="#getnonhydrogenatomneighborsbondinformation">GetNonHydrogenAtomNeighborsBondInformation</a>, <a href="#getnonhydrogenneighborofhydrogenatom">GetNonHydrogenNeighborOfHydrogenAtom</a> +, <a href="#getnumofaromaticbondstoheavyatoms">GetNumOfAromaticBondsToHeavyAtoms</a>, <a href="#getnumofaromaticbondstononhydrogenatoms">GetNumOfAromaticBondsToNonHydrogenAtoms</a> +, <a href="#getnumofbondtypestoheavyatoms">GetNumOfBondTypesToHeavyAtoms</a>, <a href="#getnumofbondtypestononhydrogenatoms">GetNumOfBondTypesToNonHydrogenAtoms</a>, <a href="#getnumofbonds">GetNumOfBonds</a> +, <a href="#getnumofbondstoheavyatoms">GetNumOfBondsToHeavyAtoms</a>, <a href="#getnumofbondstohydrogenatoms">GetNumOfBondsToHydrogenAtoms</a> +, <a href="#getnumofbondstononhydrogenatoms">GetNumOfBondsToNonHydrogenAtoms</a>, <a href="#getnumofdoublebondstoheavyatoms">GetNumOfDoubleBondsToHeavyAtoms</a> +, <a href="#getnumofbondsavailableforheavyatoms">GetNumOfBondsAvailableForHeavyAtoms</a>, <a href="#getnumofbondsavailablefornonhydrogenatoms">GetNumOfBondsAvailableForNonHydrogenAtoms</a> +, <a href="#getnumofdoublebondstononhydrogenatoms">GetNumOfDoubleBondsToNonHydrogenAtoms</a>, <a href="#getnumofexplicithydrogens">GetNumOfExplicitHydrogens</a> +, <a href="#getnumofheavyatomneighbors">GetNumOfHeavyAtomNeighbors</a>, <a href="#getnumofhydrogenatomneighbors">GetNumOfHydrogenAtomNeighbors</a>, <a href="#getnumofhydrogens">GetNumOfHydrogens</a> +, <a href="#getnumofimplicithydrogens">GetNumOfImplicitHydrogens</a>, <a href="#getnumofmissinghydrogens">GetNumOfMissingHydrogens</a>, <a href="#getnumofneighbors">GetNumOfNeighbors</a> +, <a href="#getnumofnonhydrogenatomneighbors">GetNumOfNonHydrogenAtomNeighbors</a>, <a href="#getnumofrings">GetNumOfRings</a>, <a href="#getnumofringswithevensize">GetNumOfRingsWithEvenSize</a> +, <a href="#getnumofringswithoddsize">GetNumOfRingsWithOddSize</a>, <a href="#getnumofringswithsize">GetNumOfRingsWithSize</a>, <a href="#getnumofringswithsizegreaterthan">GetNumOfRingsWithSizeGreaterThan</a> +, <a href="#getnumofringswithsizelessthan">GetNumOfRingsWithSizeLessThan</a>, <a href="#getnumofsigmaandpibondstoheavyatoms">GetNumOfSigmaAndPiBondsToHeavyAtoms</a> +, <a href="#getnumofsigmaandpibondstononhydrogenatoms">GetNumOfSigmaAndPiBondsToNonHydrogenAtoms</a>, <a href="#getnumofsinglebondstoheavyatoms">GetNumOfSingleBondsToHeavyAtoms</a> +, <a href="#getnumofsinglebondstononhydrogenatoms">GetNumOfSingleBondsToNonHydrogenAtoms</a>, <a href="#getnumoftriplebondstoheavyatoms">GetNumOfTripleBondsToHeavyAtoms</a> +, <a href="#getnumoftriplebondstononhydrogenatoms">GetNumOfTripleBondsToNonHydrogenAtoms</a>, <a href="#getperiodnumber">GetPeriodNumber</a> +, <a href="#getpotentialtotalcommonvalence">GetPotentialTotalCommonValence</a>, <a href="#getrings">GetRings</a>, <a href="#getringswithevensize">GetRingsWithEvenSize</a> +, <a href="#getringswithoddsize">GetRingsWithOddSize</a>, <a href="#getringswithsize">GetRingsWithSize</a>, <a href="#getringswithsizegreaterthan">GetRingsWithSizeGreaterThan</a> +, <a href="#getringswithsizelessthan">GetRingsWithSizeLessThan</a>, <a href="#getsizeoflargestring">GetSizeOfLargestRing</a>, <a href="#getsizeofsmallestring">GetSizeOfSmallestRing</a> +, <a href="#getsmallestring">GetSmallestRing</a>, <a href="#getspinmultiplicity">GetSpinMultiplicity</a>, <a href="#getsumofbondorders">GetSumOfBondOrders</a> +, <a href="#getsumofbondorderstoheavyatoms">GetSumOfBondOrdersToHeavyAtoms</a>, <a href="#getsumofbondorderstohydrogenatoms">GetSumOfBondOrdersToHydrogenAtoms</a> +, <a href="#getsumofbondorderstononhydrogenatoms">GetSumOfBondOrdersToNonHydrogenAtoms</a>, <a href="#getvalence">GetValence</a>, <a href="#getvalenceelectrons">GetValenceElectrons</a> +, <a href="#getvalencefreeelectrons">GetValenceFreeElectrons</a>, <a href="#getx">GetX</a>, <a href="#getxyz">GetXYZ</a>, <a href="#getxyzvector">GetXYZVector</a>, <a href="#gety">GetY</a>, <a href="#getz">GetZ</a>, <a href="#isamidecarbon">IsAmideCarbon</a> +, <a href="#isamidenitrogen">IsAmideNitrogen</a>, <a href="#isaromatic">IsAromatic</a>, <a href="#isarsenic">IsArsenic</a>, <a href="#isbondedtoatom">IsBondedToAtom</a>, <a href="#isbromine">IsBromine</a>, <a href="#iscarbon">IsCarbon</a>, <a href="#iscarboxylcarbon">IsCarboxylCarbon</a> +, <a href="#iscarboxyloxygen">IsCarboxylOxygen</a>, <a href="#iscarboxylatecarbon">IsCarboxylateCarbon</a>, <a href="#iscarboxylateoxygen">IsCarboxylateOxygen</a>, <a href="#ischlorine">IsChlorine</a> +, <a href="#isfluorine">IsFluorine</a>, <a href="#isfunctionalclasstype">IsFunctionalClassType</a>, <a href="#isguadiniumcarbon">IsGuadiniumCarbon</a>, <a href="#isguadiniumnitrogen">IsGuadiniumNitrogen</a> +, <a href="#ishbondacceptor">IsHBondAcceptor</a>, <a href="#ishbonddonor">IsHBondDonor</a>, <a href="#ishalogen">IsHalogen</a>, <a href="#isheteroatom">IsHeteroAtom</a>, <a href="#ishydrogen">IsHydrogen</a> +, <a href="#ishydrogenbondacceptor">IsHydrogenBondAcceptor</a>, <a href="#ishydrogenbonddonor">IsHydrogenBondDonor</a>, <a href="#ishydrophobic">IsHydrophobic</a>, <a href="#isinring">IsInRing</a> +, <a href="#isinringofsize">IsInRingOfSize</a>, <a href="#isiodine">IsIodine</a>, <a href="#isisotope">IsIsotope</a>, <a href="#islipophilic">IsLipophilic</a>, <a href="#ismetallic">IsMetallic</a> +, <a href="#isnegativelyionizable">IsNegativelyIonizable</a>, <a href="#isnitrogen">IsNitrogen</a>, <a href="#isnoncarbonorhydrogen">IsNonCarbonOrHydrogen</a>, <a href="#isnotinring">IsNotInRing</a> +, <a href="#isonlyinonering">IsOnlyInOneRing</a>, <a href="#isoxygen">IsOxygen</a>, <a href="#isphosphateoxygen">IsPhosphateOxygen</a>, <a href="#isphosphatephosphorus">IsPhosphatePhosphorus</a>, <a href="#isphosphorus">IsPhosphorus</a> +, <a href="#ispolaratom">IsPolarAtom</a>, <a href="#ispolarhydrogen">IsPolarHydrogen</a>, <a href="#ispositivelyionizable">IsPositivelyIonizable</a>, <a href="#issaturated">IsSaturated</a>, <a href="#isselenium">IsSelenium</a> +, <a href="#issilicon">IsSilicon</a>, <a href="#isstereocenter">IsStereoCenter</a>, <a href="#issulfur">IsSulfur</a>, <a href="#issulphur">IsSulphur</a>, <a href="#istellurium">IsTellurium</a>, <a href="#isterminal">IsTerminal</a> +, <a href="#istopologicalpharmacophoretype">IsTopologicalPharmacophoreType</a>, <a href="#isunsaturated">IsUnsaturated</a>, <a href="#setatomsymbol">SetAtomSymbol</a>, <a href="#setatomicnumber">SetAtomicNumber</a> +, <a href="#setexplicithydrogens">SetExplicitHydrogens</a>, <a href="#setmassnumber">SetMassNumber</a>, <a href="#setstereocenter">SetStereoCenter</a>, <a href="#setstereochemistry">SetStereochemistry</a> +, <a href="#setx">SetX</a>, <a href="#setxyz">SetXYZ</a>, <a href="#sety">SetY</a>, <a href="#setz">SetZ</a>, <a href="#stringifyatom">StringifyAtom</a> +</p><p><strong>Atom</strong> class is derived from <strong>ObjectProperty</strong> base class which provides methods not explicitly +defined in <strong>Atom</strong> or <strong>ObjectProperty</strong> class using Perl's AUTOLOAD functionality. These methods +are generated on-the-fly for a specified object property:</p> +<div class="OptionsBox"> + Set<PropertyName>(<PropertyValue>); +<br/> $PropertyValue = Get<PropertyName>(); +<br/> Delete<PropertyName>();</div> +<p> +</p> +<h2>METHODS</h2> +<dl> +<dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NewAtom = new Atom([%PropertyNameAndValues]);</div> +<p>Using specified <em>Atom</em> property names and values hash, <strong>new</strong> method creates a new object +and returns a reference to newly created <strong>Atom</strong> object. By default, following properties are +initialized:</p> +<div class="OptionsBox"> + ID = SequentialObjectID +<br/> Name = "Atom <SequentialObjectID>" +<br/> AtomSymbol = "" +<br/> AtomicNumber = 0 +<br/> XYZ = ZeroVector</div> +<p>Except for <em>ID</em> property, all other default properties and other additional properties can +be set during invocation of this method.</p> +<p>Examples:</p> +<div class="OptionsBox"> + $Atom = new Atom(); +<br/> $CarbonAtom = new Atom('AtomSymbol' => 'C', 'XYZ' => (0.0, 1.0, + 0.0)); +<br/> $OxygenAtom = new Atom('AtomName' => 'Oxygen', AtomSymbol' => 'O', + 'XYZ' => (1.0, 1.0, 1.0));</div> +</dd> +<dt><strong><a name="addhydrogens" class="item"><strong>AddHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHydrogensAdded = $Atom->AddHydrogens();</div> +<p>Adds hydrogens to an <strong>Atom</strong> present in a <strong>Molecule</strong> object and returns +the number of added hydrogens. The current release of MayaChemTools doesn't +assign hydrogen positions.</p> +</dd> +<dt><strong><a name="copy" class="item"><strong>Copy</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $AtomCopy = $Atom->Copy();</div> +<p>Copy <em>Atom</em> and its associated data using <strong>Storable::dclone</strong> and return a new +<strong>Atom</strong> object.</p> +</dd> +<dt><strong><a name="deleteatom" class="item"><strong>DeleteAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->DeleteAtom();</div> +<p>Delete <em>Atom</em> from a molecule.</p> +</dd> +<dt><strong><a name="doesatomneighborhoodmatch" class="item"><strong>DoesAtomNeighborhoodMatch</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec); +<br/> $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec, + $NbrAtomSpecsRef); +<br/> $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec, + $NbrAtomSpecsRef, $AllowedNbrBondSpecsRef); +<br/> $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec, + $NbrAtomSpecsRef, $NbrBondSpecsRef, + $AllowedNbrOfNbrAtomSpecsRef);</div> +<p>Returns 1 or 0 based on whether atom matches central atom and its neighborhood +using specified atom and bonds specifications. Neighborhood atom and bond specifications +are specified as array references containing neighbor atom and bond specifications.</p> +<p>Let:</p> +<div class="OptionsBox"> + AS = Atom symbol corresponding to element symbol, atomic number (#n) + or any atom (A)</div> +<div class="OptionsBox"> + X<n> = Number of non-hydrogen atom neighbors or heavy atoms + attached to atom +<br/> T<n> = Total number of atom neighbors including implicit and explicit + hydrogens +<br/> BO<n> = Sum of bond orders to non-hydrogen atom neighbors or heavy + atoms attached to atom +<br/> LBO<n> = Largest bond order of non-hydrogen atom neighbors or heavy + atoms attached to atom +<br/> SB<n> = Number of single bonds to non-hydrogen atom neighbors or + heavy atoms attached to atom +<br/> TSB<n> = Total number of single bonds to atom neighbors including implicit + and explicit hydrogens +<br/> DB<n> = Number of double bonds to non-hydrogen atom neighbors or + heavy atoms attached to atom +<br/> TB<n> = Number of triple bonds to non-hydrogen atom neighbors or + heavy atoms attached to atom +<br/> AB<n> = Number of aromatic bonds to non-hydrogen atom neighbors or + heavy atoms attached to atom +<br/> H<n> = Number of implicit and explicit hydrogens for atom +<br/> Ar = Aromatic annotation indicating whether atom is aromatic +<br/> RA or RA<n> = Ring atom annotation indicating whether atom + is a ring +<br/> TR<n> = Total number of rings containing atom +<br/> FC<+n/-n> = Formal charge assigned to atom +<br/> MN<n> = Mass number indicating isotope other than most abundant isotope +<br/> SM<n> = Spin multiplicity of atom. Possible values: 1 (singlet), + 2 (doublet) or 3 (triplet)</div> +<p>Then, atom specification corresponds to:</p> +<div class="OptionsBox"> + AS.X<n>.T<n>.BO<n>.LBO<n>.<SB><n>.TSB<n>.<DB><n>.<TB><n>.AB<n>.H<n>.Ar. +<br/> RA<n>.TR<n>FC<+n/-n>.MN<n>.SM<n></div> +<p>Except for AS which is a required atomic invariant in atom specification, all other atomic invariants are +optional. For an atom specification to match an atom, the values of all specified atomic invariants must +match. Exclamation in from of atomic invariant can be used to negate its effect during the match.</p> +<p>For <em>FC</em> value matching, the following value operators are also supported:</p> +<div class="OptionsBox"> + o +* : Any positive value +<br/> o -* : Any negative value +<br/> o > ValidNumber or >= ValidNumber +<br/> o < ValidNumber or <= ValidNumber</div> +<p>A comma delimited atom specification string is used to match any one of the specified atom specification.</p> +<p>Notes:</p> +<div class="OptionsBox"> + o During atom specification match to an atom, the first atomic invariant is always assumed to + atom symbol.</div> +<p>Examples:</p> +<div class="OptionsBox"> + o ('N', 'N', 'N') +<br/> o ('N.FC0', 'N.FC0', 'N,N.FC+1.H1') +<br/> o ('N.H2', 'N.H2', 'N.H1') +<br/> o ('C,N', '!N', '!H') +<br/> o ('C,N', 'N.Ar', 'N.R5')</div> +<p>Let:</p> +<div class="OptionsBox"> + -|1|s|Single = Single bond +<br/> =|2|d|Double = Double bond +<br/> #|3|t|Triple = Triple bond +<br/> :|1.5|a|Ar|Aromatic = Aromatic bond</div> +<div class="OptionsBox"> + @|RB|Ring = Ring bond +<br/> ~|*|Any = Any bond</div> +<p>Then, bond specification corresponds to:</p> +<div class="OptionsBox"> + -.: +<br/> =.@ +<br/> Double.Aromatic</div> +<p>For a bond specification to match bond between two atoms, the values of all specified bond symbols must +match. Exclamation in from of bond symbol can be used to negate its effect during the match.</p> +<p>A comma delimited bond specification string is used to match any one of the specified atom specification.</p> +<p>Notes:</p> +<div class="OptionsBox"> + o During atom neighborhood match for central atom neighborhood atom and bond specifications, + implicit or missing hydrogens are automatically checked for any matches to unmatched + specifications.</div> +<p>Examples:</p> +<div class="OptionsBox"> + Aromatic carbon in a 5 membered ring: + $Atom->DoesAtomNeighborhoodMatch('C.Ar.RA5');</div> +<div class="OptionsBox"> + AcetylenicCarbon: $Atom->DoesAtomNeighborhoodMatch('C.T2.TB1'); or + $Atom->DoesAtomNeighborhoodMatch('C.T2.TB1', + ['*', '*'], ['#', '-']);</div> +<div class="OptionsBox"> + GuadiniumCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4', + ['N.FC0', 'N.FC0', 'N.FC0,N.FC+1'], + ['-', '-', '='], + ['C,H', 'C,H', 'C,H']);</div> +<div class="OptionsBox"> + AmideCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3', + ['C,H', 'O', 'N'], + ['-', '=', '-'], + ['C,H', 'C', 'C,H,N,O,S,P,F,Cl,Br,I']);</div> +<div class="OptionsBox"> + CarboxylCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3', + ['C,H', 'O', 'O.X1.FC0'], + ['-', '=', '-'], + ['C,H', 'C', 'C']);</div> +<div class="OptionsBox"> + CarboxylateCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3', + ['C,H', 'O', 'O.X1.FC-1'], + ['-', '=', '-'], + ['C,H', 'C', 'C']);</div> +</dd> +<dt><strong><a name="deletehydrogens" class="item"><strong>DeleteHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHydrogensDeleted = $Atom->AddHydrogens();</div> +<p>Delete hydrogens from an <strong>Atom</strong> present in a <strong>Molecule</strong> object and returns +the number of deleted hydrogens.</p> +</dd> +<dt><strong><a name="getatomicinvariantvalue" class="item"><strong>GetAtomicInvariantValue</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Value = $Atom->GetAtomicInvariantValue($AtomicInvariant);</div> +<p>Returns atomic invariant value for a specified <em>AtomicInvariant</em>. The current release +of MayaChemTools supports following abbreviations and descriptive names for +<em>AtomicInvarints</em>:</p> +<div class="OptionsBox"> + AS : Atom or element symbol +<br/> X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors +<br/> T : TotalNumOfAtomNeighbors +<br/> BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms +<br/> LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms +<br/> SB : NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms +<br/> TSB : TotalNumOfSingleBonds +<br/> DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms +<br/> TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms +<br/> AB : NumOfAromaticBondsToNonHydrogenAtoms or NumOfAromaticBondsToHeavyAtoms +<br/> H : NumOfImplicitAndExplicitHydrogens +<br/> Ar : Aromatic +<br/> Str : Stereochemistry +<br/> RA : RingAtom +<br/> FC : FormalCharge +<br/> AN : AtomicNumber +<br/> AM : AtomicMass +<br/> MN : MassNumber +<br/> SM : SpinMultiplicity</div> +</dd> +<dt><strong><a name="getatomicweight" class="item"><strong>GetAtomicWeight</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Value = $Aom->GetAtomicWeight();</div> +<p>Returns atomic weight of an <strong>Atom</strong> which corresponds to either explicity set <em>AtomicWeight</em> +atom property or atomic weight of the corresponding element in the periodic table available by +<strong>PeriodicTable</strong> module.</p> +</dd> +<dt><strong><a name="getbondtoatom" class="item"><strong>GetBondToAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Bond = $Atom->GetBondToAtom($OtherAtom);</div> +<p>Returns a <strong>Bond</strong> object corresponding to bond between <em>Atom</em> and <em>OtherAtom</em> in +a molecule.</p> +</dd> +<dt><strong><a name="getbonds" class="item"><strong>GetBonds</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Bonds = $Aoto->GetBonds();</div> +<p>Returns an array of <strong>Bond</strong> objects corresponding to all bonds from <em>Atom</em> to other +bonded atoms in a molecule.</p> +</dd> +<dt><strong><a name="getbondstoheavyatoms" class="item"><strong>GetBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Bonds = $Atom->GetBondsToHeavyAtoms();</div> +<p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to other bonded +non-hydrogen atoms in a molecule.</p> +</dd> +<dt><strong><a name="getbondstohydrogenatoms" class="item"><strong>GetBondsToHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Bonds = $Atom->GetBondsToHydrogenAtoms();</div> +<p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to any other +hydrogen atom in a molecule.</p> +</dd> +<dt><strong><a name="getbondstononhydrogenatoms" class="item"><strong>GetBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Bonds = $Atom->GetBondsToNonHydrogenAtoms();</div> +<p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to other bonded +non-hydrogen atoms in a molecule.</p> +</dd> +<dt><strong><a name="getexactmass" class="item"><strong>GetExactMass</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $ExactMass = $Atom->GetExactMass();</div> +<p>Returns exact mass of an <em>Atom</em> which correspond to one of these three values: explicity set +<em>ExactMass</em> property; mass of natural isotope for an explicty set value of <em>MassNumber</em>; most +abundant natural isotope mass for <em>Atom</em> with valid atomic number value available by +<strong>PerodicTable</strong> module.</p> +</dd> +<dt><strong><a name="getexplicithydrogens" class="item"><strong>GetExplicitHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfExplicitHydrogens = $Atom->GetExplicitHydrogens();</div> +<p>Returns number of hydrogens explicity bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getformalcharge" class="item"><strong>GetFormalCharge</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $FormalCharge = $Atom->GetFormalCharge();</div> +<p>Returns formal charge of an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getfreeradicalelectrons" class="item"><strong>GetFreeRadicalElectrons</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $FreeRadicalElectrons = $Atom->GetFreeRadicalElectrons();</div> +<p>Returns number of free radical electrons corresponding to to one of these +three values: <em>FreeRadicalElectrons</em> property; <em>SpinMultiplicity</em> property; value +of 0.</p> +<p>For atoms with explicit assignment of <em>SpinMultiplicity</em> atom property values,</p> +<div class="OptionsBox"> + Singlet - two unparied electrons corresponding to one spin state +<br/> Doublet - free radical; an unpaired electron corresponding to two + spin states +<br/> Triplet - two unparied electrons corresponding to three spin states + (divalent carbon atoms: carbenes)</div> +<p><strong>FreeRadicalElectrons</strong> are calculated as follows:</p> +<div class="OptionsBox"> + Doublet: 1 (one valence electron not available for bonding) +<br/> Singlet: 2 (two valence electrons not available for bonding) +<br/> Triplet: 2 (two valence electrons not available for bonding)</div> +</dd> +<dt><strong><a name="getgroupnumber" class="item"><strong>GetGroupNumber</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $GroupNumber = $Atom->GetGroupNumber();</div> +<p>Returns group number of an <em>Atom</em> in a molecule with a valid atomic number.</p> +</dd> +<dt><strong><a name="getheavyatomneighbors" class="item"><strong>GetHeavyAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHeavyAtoms = $Atom->GetHeavyAtomNeighbors(); +<br/> @HeavyAtoms = $Atom->GetHeavyAtomNeighbors();</div> +<p>Return number of heavy atoms or an array of <strong>Atom</strong> objects corresponding to heavy atoms +bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getheavyatomneighborsatominformation" class="item"><strong>GetHeavyAtomNeighborsAtomInformation</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfAtomNeighbors, $AtomNeighborsRef, + $NumOfAtomNeighborsType, $AtomNeighborsTypeMapRef) = $Atom-> + GetHeavyAtomNeighborsAtomInformation();</div> +<p>Returns atoms information for all non-hydrogen atoms attached to an <em>Atom</em> +in a molecule.</p> +<p>The following values are returned:</p> +<div class="OptionsBox"> + o Number of non-hydrogen atom neighbors +<br/> o A reference to an array containing atom objects corresponding to + non-hydrogen atom neighbors +<br/> o Number of different types of non-hydrogen atom neighbors +<br/> o A reference to a hash containing atom symbol as key with value + corresponding to its count for non-hydrogen atom neighbors</div> +</dd> +<dt><strong><a name="getheavyatomneighborsbondformation" class="item"><strong>GetHeavyAtomNeighborsBondformation</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfBonds, $BondTypeCountMapRef, +<br/> $AtomsBondTypesCountMapRef, +<br/> $AtomsBondTypeAtomsMap) = $Atom-> + GetHeavyAtomNeighborsBondformation();</div> +<p>Returns bonds information for all non-hydrogen atoms attached to an <em>Atom</em> +in a molecule.</p> +<p>The following values are returned:</p> +<div class="OptionsBox"> + o Number of bonds to non-hydrogen atom neighbors +<br/> o A reference to an array containing bond objects corresponding to + non-hydrogen atom neighbors +<br/> o A reference to a hash containing bond type as key with value + corresponding to its count for non-hydrogen atom neighbors. Bond + types are: Single, Double or Triple +<br/> o A reference to a hash containing atom symbol as key pointing to bond + type as second key with values corresponding to count of bond types for atom + symbol for non-hydrogen atom neighbors +<br/> o A reference to a hash containing atom symbol as key pointing to bond + type as second key with values corresponding to atom objects array involved + in corresponding bond type for atom symbol for non-hydrogen atom neighbors</div> +</dd> +<dt><strong><a name="gethighestcommonvalence" class="item"><strong>GetHighestCommonValence</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $HighestCommonValence = $Atom->GetHighestCommonValence();</div> +<p>Returns highest common valence of an <em>Atom</em> which corresponds to either explicity set +<em>HighestCommonValence</em> atom property or highest common valence of the corresponding +element in the periodic table available by <strong>PerodicTable</strong> module.</p> +</dd> +<dt><strong><a name="gethydrogens" class="item"><strong>GetHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHydrogens = $Atom->GetHydrogens();</div> +<p>Returns total number of hydrogens for an <em>Atom</em> in a molecule including both hydrogen atom +neighbors and implicit hydrogens.</p> +</dd> +<dt><strong><a name="gethydrogenatomneighbors" class="item"><strong>GetHydrogenAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHydrogenAtomNeighbors = $Atom->GetHydrogenAtomNeighbors(); +<br/> @HydrogenAtomNeighbors = $Atom->GetHydrogenAtomNeighbors();</div> +<p>Return number of hydrogen atoms or an array of <em>Atom</em> objects corresponding to hydrogen +atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getimplicithydrogens" class="item"><strong>GetImplicitHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfImplicitHydrogens = $Atom->GetImplicitHydrogens();</div> +<p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either +corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the +difference between the value of potential total valence and sum of bond orders to +both hydrogen and non-hydrogen atom neighbors.</p> +</dd> +<dt><strong><a name="getpotentialtotalcommonvalence" class="item"><strong>GetPotentialTotalCommonValence</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $PotentialTotalValence = $Atom->GetPotentialTotalCommonValence();</div> +<p>Returns potential total common valence of an <em>Atom</em> in a molecule corresponding +to a specific valence model set for the molecule using its <strong>SetValenceModel</strong> method +or default internal valence model. It is used during the calculation of missing or +implicit hydrogens.</p> +<p>The current release of MayaChemTools supports three valence models: <em>MDLValenceModel, +DaylightValenceModel, InternalValenceModel or MayaChemToolsValenceModel</em>.</p> +<p>For <em>MDLValenceModel</em> and <em>DaylightValenceModel</em>, the following data files, distributed +with the package, are used to calculate potential total valence:</p> +<div class="OptionsBox"> + lib/data/MDLValenceModelData.csv +<br/> lib/data/DaylightValenceModelData.csv</div> +<p>The calculation of potential total common valence for these two models is performed as +follows: Calculate current effective total valence of the <em>Atom</em> by adding up the bond +order of its neighbors and number of free radical electrons; Find available common valence +for the <em>Atom</em>, corresponding to any specified formal charge, higher than the effective +total valence, and return it as <em>PotentialTotalValence</em>.</p> +<p>The calculation of potential total common valence For <em>InternalValenceModel</em> or +<em>MayaChenToolsValenceModel</em> doesn't uses <strong>PeriodicTable</strong> module to retrieve values +for common valence, which in turn reads in PeriodicTableElements.csv file distributed with +the package.</p> +<p>For elements with one one common valence, potential total common valence corresponds +to:</p> +<div class="OptionsBox"> + CommonValence + FormalCharge - FreeRadicalElectrons</div> +<p>For elements with multiple common valences, each common valence is used to +calculate total potential common valence as shown above, and the first total potential +common valence greater than the sum of bond orders to all neighbors is selected as +the final total common valence.</p> +<p>FormalCharge sign is reversed for electropositive elements with positive formal charge +during common valence calculations. Electropositive elements, metals and transition elements, +have usually plus formal charge and it leads to decrease in common valence; the negative +formal charge should result in the decrease of common valence.</p> +<p>The sign of formal charge is adjusted as follows.</p> +<p>Group numbers > 14 - Group numbers 15 (N), 16 (O), 17 (F), 18 (He):</p> +<p>Formal charge sign is not adjusted. Positive and negative values result in the +increase and decrease of valence.</p> +<p>Group 14 containing C, Si, Ge, Sn, Pb...:</p> +<p>Formal charge sign is reversed for positive values. Both positive and negative +values result in the decrease of valence.</p> +<p>Group 13 containing B, Al, Ga, In, Tl...:</p> +<p>Formal charge sign is always reversed. Positive and negative values result in the +decrease and increase of valence.</p> +<p>Groups 1 (H) through 12 (Zn)...:</p> +<p>Formal charge sign is reversed for positive values. Both positive and negative +values result in the decrease of valence.</p> +<p>Lanthanides and actinides:</p> +<p>Formal charge sign is reversed for positive values. Both positive and negative +values result in the decrease of valence.</p> +</dd> +<dt><strong><a name="getlargestbondorder" class="item"><strong>GetLargestBondOrder</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $LargestBO =$Atom->GetLargestBondOrder();</div> +<p>Returns largest bond order for an <em>Atom</em> among the bonds to other atoms in a molecule.</p> +</dd> +<dt><strong><a name="getlargestbondordertoheavyatoms" class="item"><strong>GetLargestBondOrderToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $LargestBO =$Atom->GetLargestBondOrderToHeavyAtoms();</div> +<p>Returns largest bond order for an <em>Atom</em> among the bonds to other heavy atoms in a molecule.</p> +</dd> +<dt><strong><a name="getlargestbondordertononhydrogenatoms" class="item"><strong>GetLargestBondOrderToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $LargestBO =$Atom->GetLargestBondOrderToNonHydrogenAtoms();</div> +<p>Returns largest bond order for an <em>Atom</em> among the bonds to other non-hydrogen atoms +in a molecule.</p> +</dd> +<dt><strong><a name="getlargestring" class="item"><strong>GetLargestRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @RingAtoms = $Atom->GetLargestRing();</div> +<p>Returns an array of ring <em>Atom</em> objects corresponding to the largest ring containing <em>Atom</em> +in a molecule.</p> +</dd> +<dt><strong><a name="getlowestcommonvalence" class="item"><strong>GetLowestCommonValence</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $LowestCommonValence = $Atom->GetLowestCommonValence();</div> +<p>Returns lowest common valence of an <em>Atom</em> which corresponds to either explicity set +<em>LowestCommonValence</em> atom property or highest common valence of the corresponding +element in the periodic table available by <strong>PerodicTable</strong> module.</p> +</dd> +<dt><strong><a name="getmassnumber" class="item"><strong>GetMassNumber</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $MassNumber = $Aom->GetMassNumber();</div> +<p>Returns atomic weight of an <strong>Atom</strong> which corresponds to either explicity set <em>MassNumber</em> +atom property or mass number of the most abundant natural isotope of the corresponding element +in the periodic table available by <strong>PeriodicTable</strong> module.</p> +</dd> +<dt><strong><a name="getmissinghydrogens" class="item"><strong>GetMissingHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfMissingHydrogens = $Atom->GetMissingHydrogens();</div> +<p>Returns number of missing hydrogens for an <em>Atom</em> in a molecule. This value either +corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the +difference between the value of potential total valence and sum of bond orders to +both hydrogen and non-hydrogen atom neighbors.</p> +</dd> +<dt><strong><a name="getneighbors" class="item"><strong>GetNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfNeighbors = $Atom->GetNeighbors(); +<br/> @Neighbors = $Atom->GetNeighbors();</div> +<p>Returns number of neighbor atoms or an array of <em>Atom</em> objects corresponding to all +atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getneighborsusingatomspecification" class="item"><strong>GetNeighborsUsingAtomSpecification</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @AtomNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec); +<br/> $NumOfNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec);</div> +<div class="OptionsBox"> + @AtomNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec, + @ExcludeNeighbors);</div> +<p>Returns number of neighbor atoms or an array of <em>Atom</em> objects matching atom +specification corresponding to atom neighbors of an <em>Atom</em> in a molecule. Optionally, +<em>Atom</em> neighbors can be excluded from the neighbors list using <em>ExcludeNeighbors</em>.</p> +<p>Notes:</p> +<div class="OptionsBox"> + o AtomSpecification correspond to any valid AtomicInvariant based atomic specifications + as supported by DoesAtomNeighborhoodMatch method +<br/> o Multiple atom specifications can be used in a string delimited by comma</div> +</dd> +<dt><strong><a name="getnonhydrogenatomneighbors" class="item"><strong>GetNonHydrogenAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfNeighbors = $Atom->GetNonHydrogenAtomNeighbors(); +<br/> @Neighbors = $Atom->GetNonHydrogenAtomNeighbors();</div> +<p>Returns number of non-hydrogen atoms or an array of <strong>Atom</strong> objects corresponding to non-hydrogen +atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnonhydrogenatomneighborsatominformation" class="item"><strong>GetNonHydrogenAtomNeighborsAtomInformation</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfAtomNeighbors, $AtomNeighborsRef, + $NumOfAtomNeighborsType, $AtomNeighborsTypeMapRef) = $Atom-> + GetNonHydrogenAtomNeighborsAtomInformation();</div> +<p>Returns atoms information for all non-hydrogen atoms attached to an <em>Atom</em> +in a molecule.</p> +<p>The following values are returned:</p> +<div class="OptionsBox"> + o Number of non-hydrogen atom neighbors +<br/> o A reference to an array containing atom objects corresponding to + non-hydrogen atom neighbors +<br/> o Number of different types of non-hydrogen atom neighbors +<br/> o A reference to a hash containing atom symbol as key with value + corresponding to its count for non-hydrogen atom neighbors</div> +</dd> +<dt><strong><a name="getnonhydrogenatomneighborsbondinformation" class="item"><strong>GetNonHydrogenAtomNeighborsBondInformation</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfBonds, $BondTypeCountMapRef, +<br/> $AtomsBondTypesCountMapRef, +<br/> $AtomsBondTypeAtomsMap) = $Atom-> + GetNonHydrogenAtomNeighborsBondInformation();</div> +<p>Returns bonds information for all non-hydrogen atoms attached to an <em>Atom</em> +in a molecule.</p> +<p>The following values are returned:</p> +<div class="OptionsBox"> + o Number of bonds to non-hydrogen atom neighbors +<br/> o A reference to an array containing bond objects corresponding to + non-hydrogen atom neighbors +<br/> o A reference to a hash containing bond type as key with value + corresponding to its count for non-hydrogen atom neighbors. Bond + types are: Single, Double or Triple +<br/> o A reference to a hash containing atom symbol as key pointing to bond + type as second key with values corresponding to count of bond types for atom + symbol for non-hydrogen atom neighbors +<br/> o A reference to a hash containing atom symbol as key pointing to bond + type as second key with values corresponding to atom objects array involved + in corresponding bond type for atom symbol for non-hydrogen atom neighbors</div> +</dd> +<dt><strong><a name="getnonhydrogenneighborofhydrogenatom" class="item"><strong>GetNonHydrogenNeighborOfHydrogenAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom = $Atom->GetNonHydrogenNeighborOfHydrogenAtom();</div> +<p>Returns non-hydrogen or heavy atom neighbor of a hydrogen atom in a molecule..</p> +</dd> +<dt><strong><a name="getnumofaromaticbondstoheavyatoms" class="item"><strong>GetNumOfAromaticBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfAromaticBondsToHeavyAtoms();</div> +<p>Returns number of aromatic bonds from an <em>Atom</em> to other non-hydrogen or heavy atoms in +a molecule.</p> +</dd> +<dt><strong><a name="getnumofaromaticbondstononhydrogenatoms" class="item"><strong>GetNumOfAromaticBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfAromaticBondsToNonHydrogenAtoms();</div> +<p>Returns number of aromatic bonds from an <em>Atom</em> to other non-hydrogen or heavy atoms in +a molecule.</p> +</dd> +<dt><strong><a name="getnumofbonds" class="item"><strong>GetNumOfBonds</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfBonds();</div> +<p>Returns number of bonds from an <em>Atom</em> to other atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofbondsavailableforheavyatoms" class="item"><strong>GetNumOfBondsAvailableForHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfBondsAvailableForHeavyAtoms();</div> +<p>Get number of bonds available to form additional bonds with heavy atoms, excluding +any implicit bonds to hydrogens set using <em>ImplicitHydrogens</em> property.</p> +<p>It's different from number of implicit or missing hydrogens, both of which are equivalent.</p> +<p>For example, in a SMILES string, [nH] ring atom corresponds to an aromatic nitrogen. +Although the hydrogen specified for n is treated internally as implicit hydrogen and shows +up in missing hydrogen count, it's not available to participate in double bonds to additional +heavy atoms.</p> +</dd> +<dt><strong><a name="getnumofbondsavailablefornonhydrogenatoms" class="item"><strong>GetNumOfBondsAvailableForNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfBondsAvailableForNonHydrogenAtoms();</div> +<p>Get number of bonds available to form additional bonds with heavy atoms, excluding +any implicit bonds to hydrogens set using ImplicitHydrogens property.</p> +</dd> +<dt><strong><a name="getnumofbondstoheavyatoms" class="item"><strong>GetNumOfBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBondsToHeavyAtoms = $Atom->GetNumOfBondsToHeavyAtoms();</div> +<p>Returns number of bonds from an <em>Atom</em> to other heavy atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofbondstohydrogenatoms" class="item"><strong>GetNumOfBondsToHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfBondsToHydrogenAtoms();</div> +<p>Returns number of bonds from an <em>Atom</em> to other hydrogen atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofbondstononhydrogenatoms" class="item"><strong>GetNumOfBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfBonds = $Atom->GetNumOfBondsToNonHydrogenAtoms();</div> +<p>Returns number of bonds from an <em>Atom</em> to other non-hydrogen atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofbondtypestoheavyatoms" class="item"><strong>GetNumOfBondTypesToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfSingleBonds, $NumOfDoubleBonds, + $NumOfTripleBonds, $NumOfAromaticBonds) = $Atom-> + GetNumOfBondTypesToHeavyAtoms($CountAromaticBonds);</div> +<p>Get number of single, double, triple, and aromatic bonds from an <em>Atom</em> to all other +non-hydrogen atoms in a molecule.</p> +<p>Value of <em>CountAtomaticBonds</em> parameter controls whether number of aromatic +bonds is returned; default is not to count aromatic bonds. During counting of +aromatic bonds, the bond marked aromatic is not included in the count +of other bond types.</p> +</dd> +<dt><strong><a name="getnumofbondtypestononhydrogenatoms" class="item"><strong>GetNumOfBondTypesToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfSingleBonds, $NumOfDoubleBonds, + $NumOfTripleBonds, $NumOfAromaticBonds) = $Atom-> + GetNumOfBondTypesToNonHydrogenAtoms($CountAromaticBonds);</div> +<p>Get number of single, double, triple, and aromatic bonds from an <em>Atom</em> to all other +non-hydrogen atoms in a molecule.</p> +<p>Value of <em>CountAtomaticBonds</em> parameter controls whether number of aromatic +bonds is returned; default is not to count aromatic bonds. During counting of +aromatic bonds, the bond marked aromatic is not included in the count +of other bond types.</p> +</dd> +<dt><strong><a name="getnumofdoublebondstoheavyatoms" class="item"><strong>GetNumOfDoubleBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfDoubleBonds = $Atom->GetNumOfDoubleBondsToHeavyAtoms();</div> +<p>Returns number of double bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofdoublebondstononhydrogenatoms" class="item"><strong>GetNumOfDoubleBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfDoubleBonds =$Atom->GetNumOfDoubleBondsToNonHydrogenAtoms();</div> +<p>Returns number of double bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofheavyatomneighbors" class="item"><strong>GetNumOfHeavyAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfNeighbors = $Atom->GetNumOfHeavyAtomNeighbors();</div> +<p>Returns number heavy atom neighbors for an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofhydrogenatomneighbors" class="item"><strong>GetNumOfHydrogenAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfNeighbors = $Atom->GetNumOfHydrogenAtomNeighbors();</div> +<p>Returns number hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofmissinghydrogens" class="item"><strong>GetNumOfMissingHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfMissingHydrogens = $Atom->GetNumOfMissingHydrogens();</div> +<p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either +corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the +difference between the value of potential total valence and sum of bond orders to +both hydrogen and non-hydrogen atom neighbors.</p> +</dd> +<dt><strong><a name="getnumofexplicithydrogens" class="item"><strong>GetNumOfExplicitHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfExplicitHydrogens = $Atom->GetNumOfExplicitHydrogens();</div> +<p>Returns number hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofhydrogens" class="item"><strong>GetNumOfHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfHydrogens = $Atom->GetNumOfHydrogens();</div> +<p>Returns total number of hydrogens for an <em>Atom</em> in a molecule including both hydrogen atom +neighbors and implicit hydrogens.</p> +</dd> +<dt><strong><a name="getnumofimplicithydrogens" class="item"><strong>GetNumOfImplicitHydrogens</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfImplicitHydrogens = $Atom->GetNumOfImplicitHydrogens();</div> +<p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either +corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the +difference between the value of potential total valence and sum of bond orders to +both hydrogen and non-hydrogen atom neighbors.</p> +</dd> +<dt><strong><a name="getnumofneighbors" class="item"><strong>GetNumOfNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfNeighbors = $Atom->GetNumOfNeighbors();</div> +<p>Returns number atom neighbors for an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofnonhydrogenatomneighbors" class="item"><strong>GetNumOfNonHydrogenAtomNeighbors</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumNeighbors = $This->GetNumOfNonHydrogenAtomNeighbors();</div> +<p>Returns number non-hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofrings" class="item"><strong>GetNumOfRings</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRings();</div> +<p>Returns number of rings containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofringswithevensize" class="item"><strong>GetNumOfRingsWithEvenSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRingsWithEvenSize();</div> +<p>Returns number of rings with even size containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofringswithoddsize" class="item"><strong>GetNumOfRingsWithOddSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRingsWithOddSize();</div> +<p>Returns number of rings with odd size containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofringswithsize" class="item"><strong>GetNumOfRingsWithSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRingsWithSize($RingSize);</div> +<p>Returns number of rings with specific <em>RingSize</em> containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofringswithsizegreaterthan" class="item"><strong>GetNumOfRingsWithSizeGreaterThan</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRingsWithSizeGreaterThan($RingSize);</div> +<p>Returns number of rings with size greater than specific <em>RingSize</em> containing <em>Atom</em> +in a molecule.</p> +</dd> +<dt><strong><a name="getnumofringswithsizelessthan" class="item"><strong>GetNumOfRingsWithSizeLessThan</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfRings = $Atom->GetNumOfRingsWithSizeLessThan($RingSize);</div> +<p>Returns number of rings with size less than specific <em>RingSize</em> containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getnumofsigmaandpibondstoheavyatoms" class="item"><strong>GetNumOfSigmaAndPiBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfSigmaBonds, $NumOfPiBonds) = $Atom-> + GetNumOfSigmaAndPiBondsToHeavyAtoms();</div> +<p>Get number of sigma and pi bonds from an <em>Atom</em> to all other non-hydrogen +atoms in a molecule.</p> +<p>Sigma and pi bonds are counted using the following methodology: a single bond +correspond to one sigma bond; a double bond contributes one to sigma bond count +and one to pi bond count; a triple bond contributes one to sigma bond count and +two to pi bond count.</p> +</dd> +<dt><strong><a name="getnumofsigmaandpibondstononhydrogenatoms" class="item"><strong>GetNumOfSigmaAndPiBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + ($NumOfSigmaBonds, $NumOfPiBonds) = $Atom-> + GetNumOfSigmaAndPiBondsToNonHydrogenAtoms();</div> +<p>Get number of sigma and pi bonds from an <em>Atom</em> to all other non-hydrogen +atoms in a molecule.</p> +<p>Sigma and pi bonds are counted using the following methodology: a single bond +correspond to one sigma bond; a double bond contributes one to sigma bond count +and one to pi bond count; a triple bond contributes one to sigma bond count and +two to pi bond count.</p> +</dd> +<dt><strong><a name="getnumofsinglebondstononhydrogenatoms" class="item"><strong>GetNumOfSingleBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfSingleBonds =$Atom->GetNumOfSingleBondsToNonHydrogenAtoms();</div> +<p>Returns number of single bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumofsinglebondstoheavyatoms" class="item"><strong>GetNumOfSingleBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfSingleBonds = $Atom->GetNumOfSingleBondsToHeavyAtoms();</div> +<p>Returns number of single bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumoftriplebondstononhydrogenatoms" class="item"><strong>GetNumOfTripleBondsToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfTripleBonds =$Atom->GetNumOfTripleBondsToNonHydrogenAtoms();</div> +<p>Returns number of triple bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getnumoftriplebondstoheavyatoms" class="item"><strong>GetNumOfTripleBondsToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $NumOfTripleBonds = $Atom->GetNumOfTripleBondsToHeavyAtoms();</div> +<p>Returns number of triple bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen +atoms in a molecule.</p> +</dd> +<dt><strong><a name="getperiodnumber" class="item"><strong>GetPeriodNumber</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $PeriodNumber = $Atom->GetPeriodNumber();</div> +<p>Returns periodic table period number for an <em>Atom</em> in a molecule with a valid atomic number .</p> +</dd> +<dt><strong><a name="getrings" class="item"><strong>GetRings</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRings();</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings containing +<em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getringswithevensize" class="item"><strong>GetRingsWithEvenSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRingsWithEvenSize();</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings with even size +containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getringswithoddsize" class="item"><strong>GetRingsWithOddSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRingsWithOddSize();</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings with odd size +containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getringswithsize" class="item"><strong>GetRingsWithSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRingsWithSize($RingSize);</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings with specific +<em>RingSize </em>containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getringswithsizegreaterthan" class="item"><strong>GetRingsWithSizeGreaterThan</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRingsWithSizeGreaterThan($RingSize);</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size +greater than specific <em>RingSize </em>containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getringswithsizelessthan" class="item"><strong>GetRingsWithSizeLessThan</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @Rings = $Aotm->GetRingsWithSizeLessThan($RingSize);</div> +<p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size +less than specific <em>RingSize </em>containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsizeoflargestring" class="item"><strong>GetSizeOfLargestRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Size = $Atom->GetSizeOfLargestRing();</div> +<p>Returns size of the largest ring containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsizeofsmallestring" class="item"><strong>GetSizeOfSmallestRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Size = $Atom->GetSizeOfSmallestRing();</div> +<p>Returns size of the smallest ring containing <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsmallestring" class="item"><strong>GetSmallestRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @RingAtoms = $Atom->GetSmallestRing();</div> +<p>Returns an array of ring <em>Atom</em> objects corresponding to the largest ring containing <em>Atom</em> +in a molecule.</p> +</dd> +<dt><strong><a name="getspinmultiplicity" class="item"><strong>GetSpinMultiplicity</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $SpinMultiplicity = $Atom->GetSpinMultiplicity();</div> +<p>Returns spin multiplicity of an <em>Atom</em> corresponding to one of these three +values: explicitly set <strong>SpinMultiplicity</strong> property value; calculated from +<strong>FreeRadicalElectrons</strong> property; value of 0.</p> +<p>The <strong>SpinMultiplicity</strong> is calculate from <em>FreeRadicalElectrons</em> property as +follows:</p> +<div class="OptionsBox"> + FreeRadicalElectrons: 1; SpinMultiplicity: 2 +<br/> FreeRadicalElectrons: 2; SpinMultiplicity: 1 +<br/> FreeRadicalElectrons: other; SpinMultiplicity: 0</div> +</dd> +<dt><strong><a name="getsumofbondorders" class="item"><strong>GetSumOfBondOrders</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $SumBondOrders = $Atom->GetSumOfBondOrders();</div> +<p>Returns sum of bond orders corresponding to all atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsumofbondorderstoheavyatoms" class="item"><strong>GetSumOfBondOrdersToHeavyAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $SumBondOrders = $Atom->GetSumOfBondOrdersToHeavyAtoms();</div> +<p>Returns sum of bond orders corresponding to all heavy atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsumofbondorderstohydrogenatoms" class="item"><strong>GetSumOfBondOrdersToHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $SumBondOrders = $Atom->GetSumOfBondOrdersToHydrogenAtoms();</div> +<p>Returns sum of bond orders corresponding to all hydrogen atoms bonded to an <em>Atom</em> in a molecule.</p> +</dd> +<dt><strong><a name="getsumofbondorderstononhydrogenatoms" class="item"><strong>GetSumOfBondOrdersToNonHydrogenAtoms</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $SumBondOrders = $Atom->GetSumOfBondOrdersToNonHydrogenAtoms();</div> +<p>Returns sum of bond orders corresponding to all non-hydrogen atoms bonded to an <em>Atom</em> +in a molecule.</p> +</dd> +<dt><strong><a name="getvalence" class="item"><strong>GetValence</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Valence = $Atom->GetValence();</div> +<p>Returns valence of an <em>Atom</em> in a molecule. Valence corresponds to number of electrons used +by an atom in bonding:</p> +<div class="OptionsBox"> + Valence = ValenceElectrons - ValenceFreeElectrons = BondingElectrons</div> +<p>Single, double and triple bonds with bond orders of 1, 2, and 3 correspond to +contribution of 1, 2, and 3 bonding electrons. So:</p> +<div class="OptionsBox"> + Valence = SumOfBondOrders + NumOfMissingHydrogens + FormalCharge</div> +<p>where positive and negative values of FormalCharge increase and decrease the number of bonding +electrons, respectively.</p> +<p>The current release of MayaChemTools supports the following three valence models, which +are used during calculation of implicit hydrogens: MDLValenceModel, DaylightValenceModel, +InternalValenceModel or MayaChemToolsValenceModel.</p> +<p>Notes:</p> +<div class="OptionsBox"> + . Missing hydrogens are included in the valence. +<br/> . For neutral molecules, valence and sum of bond orders are equal. +<br/> . For molecules containing only single bonds, SumOfBondOrders and + NumOfBonds are equal. +<br/> . Free radical electrons lead to the decrease in valence. For atoms with + explicit assignment of SpinMultiplicity property values corresponding to + Singlet (two unparied electrons corresponding to one spin state), Doublet + (free radical; an unpaired electron corresponding to two spin states), + and Triplet (two unparied electrons corresponding to three spin states; + divalent carbon atoms (carbenes)), FreeRadicalElectrons are calculated as follows:</div> +<div class="OptionsBox"> + SpinMultiplicity: Doublet(2); FreeRadicalElectrons: 1 (one valence +<br/> electron not available for bonding) +<br/> SpinMultiplicity: Singlet(1)/Triplet(3); FreeRadicalElectrons: 2 (two +<br/> valence electrons not available for bonding)</div> +</dd> +<dt><strong><a name="getvalenceelectrons" class="item"><strong>GetValenceElectrons</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $ValenceElectrons = $Atom->GetValenceElectrons();</div> +<p>Returns valence electrons for an <strong>Atom</strong> which corresponds to either explicity set <em>ValenceElectrons</em> +atom property or valence electrons for the corresponding element in the periodic table available by +<strong>PeriodicTable</strong> module.</p> +</dd> +<dt><strong><a name="getvalencefreeelectrons" class="item"><strong>GetValenceFreeElectrons</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $ValenceFreeElectrons = $Atom->GetValenceFreeElectrons(); +<br/> $ValenceFreeElectrons = $Atom->GetValenceFreeElectrons( + $ExcludeFreeRadicalElectrons);</div> +<p>Returns valence frees electrons for an <strong>Atom</strong> in a molecule. It corresponds to:</p> +<div class="OptionsBox"> + ValenceElectrons - Valence +<br/> or +<br/> ValenceElectrons - NumOfMissingHydrogens - SumOfBondOrders - FormalCharge</div> +<p>Free radical electrons are included in the valence free electrons count by default.</p> +<p>Examples:</p> +<div class="OptionsBox"> + NH3: ValenceFreeElectrons = 5 - 3 = 5 - 3 - 0 - 0 = 2 +<br/> NH2: ValenceFreeElectrons = 5 - 3 = 5 - 2 - 1 - 0 = 2 +<br/> NH4+; ValenceFreeElectrons = 5 - 5 = 5 - 4 - 0 - 1 = 0 +<br/> NH3+; ValenceFreeElectrons = 5 - 5 = 5 - 3 - 1 - 1 = 0 +<br/> C(=O)O- : ValenceFreeElectrons on O- = 6 - 0 = 6 - 1 - 0 - (-1) = 6 +<br/> C(=O)O- : ValenceFreeElectrons on =O = 6 - 2 = 6 - 2 - 0 - 0 = 4</div> +</dd> +<dt><strong><a name="getx" class="item"><strong>GetX</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $X = $Atom->GetX();</div> +<p>Returns value of X-coordinate for an <em>Atom</em>.</p> +</dd> +<dt><strong><a name="getxyz" class="item"><strong>GetXYZ</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + @XYZ = $Atom->GetXYZ(); +<br/> $XYZRef = $Atom->GetXYZ();</div> +<p>Returns an array or a reference to an array containing values for <em>Atom</em> coordinates.</p> +</dd> +<dt><strong><a name="getxyzvector" class="item"><strong>GetXYZVector</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $XYZVector = $Atom->GetXYZVector();</div> +<p>Returns a <em>Vector</em> object containing values for <em>Atom</em> coordinates</p> +</dd> +<dt><strong><a name="gety" class="item"><strong>GetY</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Y = $Atom->GetY();</div> +<p>Returns value of Y-coordinate for an <em>Atom</em>.</p> +</dd> +<dt><strong><a name="getz" class="item"><strong>GetZ</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Z = $Atom->GetZ();</div> +<p>Returns value of Z-coordinate for an <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isamidecarbon" class="item"><strong>IsAmideCarbon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsAmideCarbon();</div> +<p>Returns 1 or 0 based on whether it's amide carbon <em>Atom</em>.</p> +<p>An amide group is defineds as:</p> +<div class="OptionsBox"> + R-C(=O)-N(-R')-R''</div> +<p>where:</p> +<div class="OptionsBox"> + o R = Hydrogen or groups of atoms attached through carbon +<br/> o R' = Hydrogens or groups of atoms attached through carbon or + hetro atoms +<br/> o R'' = Hydrogens or groups of atoms attached through carbon or + hetro atoms</div> +</dd> +<dt><strong><a name="isamidenitrogen" class="item"><strong>IsAmideNitrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsAmideNitrogen();</div> +<p>Returns 1 or 0 based on whether it's amide nitrogen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isaromatic" class="item"><strong>IsAromatic</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsAromatic();</div> +<p>Returns 1 or 0 based on whether it's an aromatic <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isarsenic" class="item"><strong>IsArsenic</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsArsenic();</div> +<p>Returns 1 or 0 based on whether it's an arsenic <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isbondedtoatom" class="item"><strong>IsBondedToAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsBondedToAtom($OtherAtom);</div> +<p>Returns 1 or 0 based on whether <em>Atom</em> is bonded to <em>OtherAtom</em>.</p> +</dd> +<dt><strong><a name="isbromine" class="item"><strong>IsBromine</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsBromine();</div> +<p>Returns 1 or 0 based on whether it's a bromine <em>Atom</em>.</p> +</dd> +<dt><strong><a name="iscarbon" class="item"><strong>IsCarbon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsCarbon();</div> +<p>Returns 1 or 0 based on whether it's a carbon <em>Atom</em>.</p> +</dd> +<dt><strong><a name="iscarboxylcarbon" class="item"><strong>IsCarboxylCarbon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsCarboxylCarbon();</div> +<p>Returns 1 or 0 based on whether it's a carboxyl carbon atom in carboxyl group: +R-C(=O)-OH.</p> +</dd> +<dt><strong><a name="iscarboxyloxygen" class="item"><strong>IsCarboxylOxygen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsCarboxylOxygen();</div> +<p>Returns 1 or 0 based on whether it's a carboxyl oxygen atom in carboxyl group: +R-C(=O)-OH.</p> +</dd> +<dt><strong><a name="iscarboxylatecarbon" class="item"><strong>IsCarboxylateCarbon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsCarboxylateCarbon();</div> +<p>Returns 1 or 0 based on whether it's a carboxylate carbon atom in carboxyl group: +R-C(=O)-O-.</p> +</dd> +<dt><strong><a name="iscarboxylateoxygen" class="item"><strong>IsCarboxylateOxygen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsCarboxylateOxygen();</div> +<p>Returns 1 or 0 based on whether it's a carboxylate oxygen atom in carboxyl group: +R-C(=O)-O-.</p> +</dd> +<dt><strong><a name="ischlorine" class="item"><strong>IsChlorine</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsChlorine();</div> +<p>Returns 1 or 0 based on whether it's a chlorine <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isfluorine" class="item"><strong>IsFluorine</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsFluorine();</div> +<p>Returns 1 or 0 based on whether it's a fluorine <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isfunctionalclasstype" class="item"><strong>IsFunctionalClassType</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsFunctionalClassType($Type);</div> +<p>Returns 1 or 0 based on whether it's a specified functional class <em>Type</em>.</p> +<p>The current release of MayaChemTools supports following abbreviations and descriptive +names for <em>FunctionalClassType</em>:</p> +<div class="OptionsBox"> + HBD: HydrogenBondDonor +<br/> HBA: HydrogenBondAcceptor +<br/> PI : PositivelyIonizable +<br/> NI : NegativelyIonizable +<br/> Ar : Aromatic +<br/> Hal : Halogen +<br/> H : Hydrophobic +<br/> RA : RingAtom +<br/> CA : ChainAtom</div> +<p>The following definitions are used to determine functional class types: [ Ref 60-61, Ref 65-66 ]:</p> +<div class="OptionsBox"> + HydrogenBondDonor: NH, NH2, OH +<br/> HydrogenBondAcceptor: N[!H], O +<br/> PositivelyIonizable: +, NH2 +<br/> NegativelyIonizable: -, C(=O)OH, S(=O)OH, P(=O)OH</div> +</dd> +<dt><strong><a name="isguadiniumcarbon" class="item"><strong>IsGuadiniumCarbon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsGuadiniumCarbon();</div> +<p>Returns 1 or 0 based on whether it's a guadinium carbon in guadinium group by +checking its neighbors for a nitrogen in guadinium group.</p> +</dd> +<dt><strong><a name="isguadiniumnitrogen" class="item"><strong>IsGuadiniumNitrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsGuadiniumNitrogen();</div> +<p>Returns 1 or 0 based on whether it's a guadinium nitrogen in guadinium group.</p> +<p>A guadinium group is defined as:</p> +<div class="OptionsBox"> + R2N-C(=NR)-(NR2) or R2N-C(=NR2+)-(NR2)</div> +<p>where:</p> +<div class="OptionsBox"> + o R = Hydrogens or group of atoms attached through carbon +<br/> o Only one of the three nitrogens has a double bond to carbon + and has optional formal charge allowing it to be neutral or charged state</div> +</dd> +<dt><strong><a name="ishbondacceptor" class="item"><strong>IsHBondAcceptor</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHBondAcceptor(); +<br/> $Status =$Atom->IsHBondAcceptor($HydrogenBondsType);</div> +<p>Returns 1 or 0 based on whether it's a hydrogen bond acceptor <em>Atom</em>.</p> +</dd> +<dt><strong><a name="ishbonddonor" class="item"><strong>IsHBondDonor</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHBondDonor(); +<br/> $Status =$Atom->IsHBondDonor($HydrogenBondsType);</div> +<p>Returns 1 or 0 based on whether it's a hydrogen bond donor <em>Atom</em>.</p> +</dd> +<dt><strong><a name="ishydrogenbondacceptor" class="item"><strong>IsHydrogenBondAcceptor</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHydrogenBondAcceptor(); +<br/> $Status =$Atom->IsHydrogenBondAcceptor($HydrogenBondsType);</div> +<p>Returns 1 or 0 based on whether it's a hydrogen bond acceptor <em>Atom</em>.</p> +</dd> +<dt><strong><a name="ishydrogenbonddonor" class="item"><strong>IsHydrogenBondDonor</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHydrogenBondDonor(); +<br/> $Status =$Atom->IsHydrogenBondDonor($HydrogenBondsType);</div> +<p>Returns 1 or 0 based on whether it's a hydrogen bond donor <em>Atom</em>.</p> +<p>The current release of MayaChemTools supports identification of two types of hydrogen bond +donor and acceptor atoms with these names:</p> +<div class="OptionsBox"> + HBondsType1 or HydrogenBondsType1 +<br/> HBondsType2 or HydrogenBondsType2</div> +<p>The names of these hydrogen bond types are rather arbitrary. However, their definitions have +specific meaning and are as follows:</p> +<div class="OptionsBox"> + HydrogenBondsType1 [ Ref 60-61, Ref 65-66 ]:</div> +<div class="OptionsBox"> + Donor: NH, NH2, OH - Any N and O with available H + Acceptor: N[!H], O - Any N without available H and any O</div> +<div class="OptionsBox"> + HydrogenBondsType2 [ Ref 91 ]:</div> +<div class="OptionsBox"> + Donor: NH, NH2, OH - N and O with available H + Acceptor: N, O - And N and O</div> +<p>By default, <em>HydrogenBondsType1</em> is used to calculate number hydrogen bond donor +and acceptor atoms. <em>HydrogenBondsType2</em> corresponds to <strong>RuleOf5</strong> definition +of hydrogen bond donors and acceptors.</p> +</dd> +<dt><strong><a name="ishalogen" class="item"><strong>IsHalogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHalogen();</div> +<p>Returns 1 or 0 based on whether it's a halogen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isheteroatom" class="item"><strong>IsHeteroAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsHeteroAtom();</div> +<p>Returns 0 or 1 based on whether it's a hetro <em>Atom</em>. Following atoms are considered hetro atoms: +<strong>N, O, F, P, S, Cl, Br, I</strong>.</p> +</dd> +<dt><strong><a name="ishydrogen" class="item"><strong>IsHydrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsHydrogen();</div> +<p>Returns 1 or 0 based on whether it's a hydrogen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="ishydrophobic" class="item"><strong>IsHydrophobic</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsHydrophobic();</div> +<p>Returns 1 or 0 based on whether it's a hydrophobic <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isinring" class="item"><strong>IsInRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsInRing();</div> +<p>Returns 1 or 0 based on whether <em>Atom</em> is present in a ring.</p> +</dd> +<dt><strong><a name="isinringofsize" class="item"><strong>IsInRingOfSize</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsInRingOfSize($Size);</div> +<p>Returns 1 or 0 based on whether <em>Atom</em> is present in a ring of specific <em>Size</em>.</p> +</dd> +<dt><strong><a name="isiodine" class="item"><strong>IsIodine</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsIodine();</div> +<p>Returns 1 or 0 based on whether it's an iodine <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isisotope" class="item"><strong>IsIsotope</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsIsotope();</div> +<p>Returns 1 or 0 based on whether it's an isotope <em>Atom</em>.</p> +</dd> +<dt><strong><a name="islipophilic" class="item"><strong>IsLipophilic</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsLipophilic();</div> +<p>Returns 1 or 0 based on whether it's a lipophilic <em>Atom</em>.</p> +</dd> +<dt><strong><a name="ismetallic" class="item"><strong>IsMetallic</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsMetallic();</div> +<p>Returns 1 or 0 based on whether it's a metallic <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isnegativelyionizable" class="item"><strong>IsNegativelyIonizable</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsNegativelyIonizable();</div> +<p>Returns 1 or 0 based on whether it's a negatively ionizable atom <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isnitrogen" class="item"><strong>IsNitrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsNitrogen();</div> +<p>Returns 1 or 0 based on whether it's a nitrogen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isnoncarbonorhydrogen" class="item"><strong>IsNonCarbonOrHydrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsNonCarbonOrHydrogen();</div> +<p>Returns 1 or 0 based on whether it's not a carbon or hydrogen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isnotinring" class="item"><strong>IsNotInRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsNotInRing();</div> +<p>Returns 1 or 0 based on whether <em>Atom</em> is not present in a ring.</p> +</dd> +<dt><strong><a name="isonlyinonering" class="item"><strong>IsOnlyInOneRing</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsOnlyInOneRing();</div> +<p>Returns 1 or 0 based on whether <em>Atom</em> is only present in one ring.</p> +</dd> +<dt><strong><a name="isoxygen" class="item"><strong>IsOxygen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsOxygen();</div> +<p>Returns 0 or 1 based on whether it's an oxygen <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isphosphorus" class="item"><strong>IsPhosphorus</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsPhosphorus();</div> +<p>Returns 0 or 1 based on whether it's a phosphorus <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isphosphateoxygen" class="item"><strong>IsPhosphateOxygen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsPhosphateOxygen();</div> +<p>Returns 1 or 0 based on whether it's a phosphate oxygen in phosphate group.</p> +<p>A phosphate group is defined as:</p> +<div class="OptionsBox"> + AO-(O=)P(-OA)-OA</div> +<p>Where:</p> +<div class="OptionsBox"> + A - Any group of atoms including hydrogens</div> +</dd> +<dt><strong><a name="isphosphatephosphorus" class="item"><strong>IsPhosphatePhosphorus</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsPhosphatePhosphorus();</div> +<p>Returns 1 or 0 based on whether it's a phosphate phosphorus in phosphate group.</p> +</dd> +<dt><strong><a name="ispolaratom" class="item"><strong>IsPolarAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsPolarAtom();</div> +<p>Returns 0 or 1 based on whether it's a polar <em>Atom</em>. Following atoms are considered polar atoms: +<strong>N, O, P, S</strong>.</p> +</dd> +<dt><strong><a name="ispolarhydrogen" class="item"><strong>IsPolarHydrogen</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsPolarHydrogen();</div> +<p>Returns 0 or 1 based on whether it's a hydrogen <em>Atom</em> bonded to a polar atom.</p> +</dd> +<dt><strong><a name="ispositivelyionizable" class="item"><strong>IsPositivelyIonizable</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsPositivelyIonizable();</div> +<p>Returns 1 or 0 based on whether it's a positively ionizable <em>Atom</em>.</p> +</dd> +<dt><strong><a name="issaturated" class="item"><strong>IsSaturated</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsSaturated();</div> +<p>Returns 1 or 0 based on whether it's a saturated <em>Atom</em>. An atom attached +to other atoms with only single bonds is considered a saturated atom.</p> +</dd> +<dt><strong><a name="isselenium" class="item"><strong>IsSelenium</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsSelenium();</div> +<p>Returns 0 or 1 based on whether it's a selenium <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isstereocenter" class="item"><strong>IsStereoCenter</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsStereoCenter();</div> +<p>Returns 0 or 1 based on whether it's marked as a stero center <em>Atom</em> by explicit setting +of <em>StereoCenter</em> atom propert to value of <em>1</em>.</p> +</dd> +<dt><strong><a name="issilicon" class="item"><strong>IsSilicon</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsSilicon();</div> +<p>Returns 0 or 1 based on whether it's a silicon <em>Atom</em>.</p> +</dd> +<dt><strong><a name="issulfur" class="item"><strong>IsSulfur</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsSulfur();</div> +<p>Returns 0 or 1 based on whether it's a sulfur <em>Atom</em>.</p> +</dd> +<dt><strong><a name="issulphur" class="item"><strong>IsSulphur</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsSulphur();</div> +<p>Returns 0 or 1 based on whether it's a sulfur <em>Atom</em>.</p> +</dd> +<dt><strong><a name="istellurium" class="item"><strong>IsTellurium</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsTellurium();</div> +<p>Returns 0 or 1 based on whether it's a tellurium <em>Atom</em>.</p> +</dd> +<dt><strong><a name="isterminal" class="item"><strong>IsTerminal</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsTerminal();</div> +<p>Returns 0 or 1 based on whether it's a terminal <em>Atom</em> attached to no +more than one non-hydrogen atom.</p> +</dd> +<dt><strong><a name="isunsaturated" class="item"><strong>IsUnsaturated</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status = $Atom->IsUnsaturated();</div> +<p>Returns 1 or 0 based on whether it's as unsaturated <em>Atom</em>. An atom attached +to other atoms with at least one non-single bond is considered an unsaturated atom.</p> +</dd> +<dt><strong><a name="istopologicalpharmacophoretype" class="item"><strong>IsTopologicalPharmacophoreType</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Status =$Atom->IsTopologicalPharmacophoreType();</div> +<p>Returns 1 or 0 based on whether it's any of the supportyed topological pharmacophore +<em>Atom</em> type. See <em>IsFunctionalClassType</em> for a list of supported types.</p> +</dd> +<dt><strong><a name="setatomsymbol" class="item"><strong>SetAtomSymbol</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetAtomSymbol($AtomicSymbol);</div> +<p>Sets atom symbol for <em>Atom</em> and returns <em>Atom</em> object. The appropriate atomic number is also +set automatically.</p> +</dd> +<dt><strong><a name="setatomicnumber" class="item"><strong>SetAtomicNumber</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetAtomicNumber($AtomicNumber);</div> +<p>Sets atomic number for <em>Atom</em> and returns <em>Atom</em> object. The appropriate atom symbol is also +set automatically.</p> +</dd> +<dt><strong><a name="setmassnumber" class="item"><strong>SetMassNumber</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetMassNumber($MassNumber);</div> +<p>Sets mass number for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="setstereocenter" class="item"><strong>SetStereoCenter</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetStereoCenter($StereoCenter);</div> +<p>Sets stereo center for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="setstereochemistry" class="item"><strong>SetStereochemistry</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetStereochemistry($Stereochemistry);</div> +<p>Sets stereo chemistry for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="setx" class="item"><strong>SetX</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetX($Value);</div> +<p>Sets X-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="setxyz" class="item"><strong>SetXYZ</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetXYZ(@XYZValues); +<br/> $Atom->SetXYZ($XYZValuesRef); +<br/> $Atom->SetXYZ($XYZVector);</div> +<p>Sets <em>Atom</em> coordinates using an array, reference to an array or a <em>Vector</em> object and +returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="sety" class="item"><strong>SetY</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetY($Value);</div> +<p>Sets Y-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="setz" class="item"><strong>SetZ</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $Atom->SetZ($Value);</div> +<p>Sets Z-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p> +</dd> +<dt><strong><a name="stringifyatom" class="item"><strong>StringifyAtom</strong></a></strong></dt> +<dd> +<div class="OptionsBox"> + $AtomString = $Atom->StringifyAtom();</div> +<p>Returns a string containing information about <em>Atom</em> object.</p> +</dd> +</dl> +<p> +</p> +<h2>AUTHOR</h2> +<p><a href="mailto:msud@san.rr.com">Manish Sud</a></p> +<p> +</p> +<h2>SEE ALSO</h2> +<p><a href="./Bond.html">Bond.pm</a>, <a href="./Molecule.html">Molecule.pm</a>, <a href="./MoleculeFileIO.html">MoleculeFileIO.pm</a> +</p> +<p> +</p> +<h2>COPYRIGHT</h2> +<p>Copyright (C) 2015 Manish Sud. All rights reserved.</p> +<p>This file is part of MayaChemTools.</p> +<p>MayaChemTools is free software; you can redistribute it and/or modify it under +the terms of the GNU Lesser General Public License as published by the Free +Software Foundation; either version 3 of the License, or (at your option) +any later version.</p> +<p> </p><p> </p><div class="DocNav"> +<table width="100%" border=0 cellpadding=0 cellspacing=2> +<tr align="left" valign="top"><td width="33%" align="left"><a href="./AminoAcids.html" title="AminoAcids.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./AtomicDescriptors.html" title="AtomicDescriptors.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>Atom.pm</strong></td></tr> +</table> +</div> +<br /> +<center> +<img src="../../images/h2o2.png"> +</center> +</body> +</html>