| 
0
 | 
     1 <html>
 | 
| 
 | 
     2 <head>
 | 
| 
 | 
     3 <title>MayaChemTools:Documentation:Atom.pm</title>
 | 
| 
 | 
     4 <meta http-equiv="content-type" content="text/html;charset=utf-8">
 | 
| 
 | 
     5 <link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css">
 | 
| 
 | 
     6 </head>
 | 
| 
 | 
     7 <body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10">
 | 
| 
 | 
     8 <br/>
 | 
| 
 | 
     9 <center>
 | 
| 
 | 
    10 <a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a>
 | 
| 
 | 
    11 </center>
 | 
| 
 | 
    12 <br/>
 | 
| 
 | 
    13 <div class="DocNav">
 | 
| 
 | 
    14 <table width="100%" border=0 cellpadding=0 cellspacing=2>
 | 
| 
 | 
    15 <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>
 | 
| 
 | 
    16 </table>
 | 
| 
 | 
    17 </div>
 | 
| 
 | 
    18 <p>
 | 
| 
 | 
    19 </p>
 | 
| 
 | 
    20 <h2>NAME</h2>
 | 
| 
 | 
    21 <p>Atom</p>
 | 
| 
 | 
    22 <p>
 | 
| 
 | 
    23 </p>
 | 
| 
 | 
    24 <h2>SYNOPSIS</h2>
 | 
| 
 | 
    25 <p>use Atom;</p>
 | 
| 
 | 
    26 <p>
 | 
| 
 | 
    27 </p>
 | 
| 
 | 
    28 <h2>DESCRIPTION</h2>
 | 
| 
 | 
    29 <p><strong>Atom</strong> class provides the following methods:</p>
 | 
| 
 | 
    30 <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>
 | 
| 
 | 
    31 , <a href="#getatomicinvariantvalue">GetAtomicInvariantValue</a>, <a href="#getatomicweight">GetAtomicWeight</a>, <a href="#getbondtoatom">GetBondToAtom</a>, <a href="#getbonds">GetBonds</a>
 | 
| 
 | 
    32 , <a href="#getbondstoheavyatoms">GetBondsToHeavyAtoms</a>, <a href="#getbondstohydrogenatoms">GetBondsToHydrogenAtoms</a>, <a href="#getbondstononhydrogenatoms">GetBondsToNonHydrogenAtoms</a>
 | 
| 
 | 
    33 , <a href="#getexactmass">GetExactMass</a>, <a href="#getexplicithydrogens">GetExplicitHydrogens</a>, <a href="#getformalcharge">GetFormalCharge</a>, <a href="#getfreeradicalelectrons">GetFreeRadicalElectrons</a>
 | 
| 
 | 
    34 , <a href="#getgroupnumber">GetGroupNumber</a>, <a href="#getheavyatomneighbors">GetHeavyAtomNeighbors</a>, <a href="#getheavyatomneighborsatominformation">GetHeavyAtomNeighborsAtomInformation</a>
 | 
| 
 | 
    35 , <a href="#getheavyatomneighborsbondformation">GetHeavyAtomNeighborsBondformation</a>, <a href="#gethighestcommonvalence">GetHighestCommonValence</a>
 | 
| 
 | 
    36 , <a href="#gethydrogenatomneighbors">GetHydrogenAtomNeighbors</a>, <a href="#gethydrogens">GetHydrogens</a>, <a href="#getimplicithydrogens">GetImplicitHydrogens</a>, <a href="#getlargestbondorder">GetLargestBondOrder</a>
 | 
| 
 | 
    37 , <a href="#getlargestbondordertoheavyatoms">GetLargestBondOrderToHeavyAtoms</a>, <a href="#getlargestbondordertononhydrogenatoms">GetLargestBondOrderToNonHydrogenAtoms</a>
 | 
| 
 | 
    38 , <a href="#getlargestring">GetLargestRing</a>, <a href="#getlowestcommonvalence">GetLowestCommonValence</a>, <a href="#getmassnumber">GetMassNumber</a>, <a href="#getmissinghydrogens">GetMissingHydrogens</a>
 | 
| 
 | 
    39 , <a href="#getneighbors">GetNeighbors</a>, <a href="#getneighborsusingatomspecification">GetNeighborsUsingAtomSpecification</a>, <a href="#getnonhydrogenatomneighbors">GetNonHydrogenAtomNeighbors</a>
 | 
| 
 | 
    40 , <a href="#getnonhydrogenatomneighborsatominformation">GetNonHydrogenAtomNeighborsAtomInformation</a>
 | 
| 
 | 
    41 , <a href="#getnonhydrogenatomneighborsbondinformation">GetNonHydrogenAtomNeighborsBondInformation</a>, <a href="#getnonhydrogenneighborofhydrogenatom">GetNonHydrogenNeighborOfHydrogenAtom</a>
 | 
| 
 | 
    42 , <a href="#getnumofaromaticbondstoheavyatoms">GetNumOfAromaticBondsToHeavyAtoms</a>, <a href="#getnumofaromaticbondstononhydrogenatoms">GetNumOfAromaticBondsToNonHydrogenAtoms</a>
 | 
| 
 | 
    43 , <a href="#getnumofbondtypestoheavyatoms">GetNumOfBondTypesToHeavyAtoms</a>, <a href="#getnumofbondtypestononhydrogenatoms">GetNumOfBondTypesToNonHydrogenAtoms</a>, <a href="#getnumofbonds">GetNumOfBonds</a>
 | 
| 
 | 
    44 , <a href="#getnumofbondstoheavyatoms">GetNumOfBondsToHeavyAtoms</a>, <a href="#getnumofbondstohydrogenatoms">GetNumOfBondsToHydrogenAtoms</a>
 | 
| 
 | 
    45 , <a href="#getnumofbondstononhydrogenatoms">GetNumOfBondsToNonHydrogenAtoms</a>, <a href="#getnumofdoublebondstoheavyatoms">GetNumOfDoubleBondsToHeavyAtoms</a>
 | 
| 
 | 
    46 , <a href="#getnumofbondsavailableforheavyatoms">GetNumOfBondsAvailableForHeavyAtoms</a>, <a href="#getnumofbondsavailablefornonhydrogenatoms">GetNumOfBondsAvailableForNonHydrogenAtoms</a>
 | 
| 
 | 
    47 , <a href="#getnumofdoublebondstononhydrogenatoms">GetNumOfDoubleBondsToNonHydrogenAtoms</a>, <a href="#getnumofexplicithydrogens">GetNumOfExplicitHydrogens</a>
 | 
| 
 | 
    48 , <a href="#getnumofheavyatomneighbors">GetNumOfHeavyAtomNeighbors</a>, <a href="#getnumofhydrogenatomneighbors">GetNumOfHydrogenAtomNeighbors</a>, <a href="#getnumofhydrogens">GetNumOfHydrogens</a>
 | 
| 
 | 
    49 , <a href="#getnumofimplicithydrogens">GetNumOfImplicitHydrogens</a>, <a href="#getnumofmissinghydrogens">GetNumOfMissingHydrogens</a>, <a href="#getnumofneighbors">GetNumOfNeighbors</a>
 | 
| 
 | 
    50 , <a href="#getnumofnonhydrogenatomneighbors">GetNumOfNonHydrogenAtomNeighbors</a>, <a href="#getnumofrings">GetNumOfRings</a>, <a href="#getnumofringswithevensize">GetNumOfRingsWithEvenSize</a>
 | 
| 
 | 
    51 , <a href="#getnumofringswithoddsize">GetNumOfRingsWithOddSize</a>, <a href="#getnumofringswithsize">GetNumOfRingsWithSize</a>, <a href="#getnumofringswithsizegreaterthan">GetNumOfRingsWithSizeGreaterThan</a>
 | 
| 
 | 
    52 , <a href="#getnumofringswithsizelessthan">GetNumOfRingsWithSizeLessThan</a>, <a href="#getnumofsigmaandpibondstoheavyatoms">GetNumOfSigmaAndPiBondsToHeavyAtoms</a>
 | 
| 
 | 
    53 , <a href="#getnumofsigmaandpibondstononhydrogenatoms">GetNumOfSigmaAndPiBondsToNonHydrogenAtoms</a>, <a href="#getnumofsinglebondstoheavyatoms">GetNumOfSingleBondsToHeavyAtoms</a>
 | 
| 
 | 
    54 , <a href="#getnumofsinglebondstononhydrogenatoms">GetNumOfSingleBondsToNonHydrogenAtoms</a>, <a href="#getnumoftriplebondstoheavyatoms">GetNumOfTripleBondsToHeavyAtoms</a>
 | 
| 
 | 
    55 , <a href="#getnumoftriplebondstononhydrogenatoms">GetNumOfTripleBondsToNonHydrogenAtoms</a>, <a href="#getperiodnumber">GetPeriodNumber</a>
 | 
| 
 | 
    56 , <a href="#getpotentialtotalcommonvalence">GetPotentialTotalCommonValence</a>, <a href="#getrings">GetRings</a>, <a href="#getringswithevensize">GetRingsWithEvenSize</a>
 | 
| 
 | 
    57 , <a href="#getringswithoddsize">GetRingsWithOddSize</a>, <a href="#getringswithsize">GetRingsWithSize</a>, <a href="#getringswithsizegreaterthan">GetRingsWithSizeGreaterThan</a>
 | 
| 
 | 
    58 , <a href="#getringswithsizelessthan">GetRingsWithSizeLessThan</a>, <a href="#getsizeoflargestring">GetSizeOfLargestRing</a>, <a href="#getsizeofsmallestring">GetSizeOfSmallestRing</a>
 | 
| 
 | 
    59 , <a href="#getsmallestring">GetSmallestRing</a>, <a href="#getspinmultiplicity">GetSpinMultiplicity</a>, <a href="#getsumofbondorders">GetSumOfBondOrders</a>
 | 
| 
 | 
    60 , <a href="#getsumofbondorderstoheavyatoms">GetSumOfBondOrdersToHeavyAtoms</a>, <a href="#getsumofbondorderstohydrogenatoms">GetSumOfBondOrdersToHydrogenAtoms</a>
 | 
| 
 | 
    61 , <a href="#getsumofbondorderstononhydrogenatoms">GetSumOfBondOrdersToNonHydrogenAtoms</a>, <a href="#getvalence">GetValence</a>, <a href="#getvalenceelectrons">GetValenceElectrons</a>
 | 
| 
 | 
    62 , <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>
 | 
| 
 | 
    63 , <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>
 | 
| 
 | 
    64 , <a href="#iscarboxyloxygen">IsCarboxylOxygen</a>, <a href="#iscarboxylatecarbon">IsCarboxylateCarbon</a>, <a href="#iscarboxylateoxygen">IsCarboxylateOxygen</a>, <a href="#ischlorine">IsChlorine</a>
 | 
| 
 | 
    65 , <a href="#isfluorine">IsFluorine</a>, <a href="#isfunctionalclasstype">IsFunctionalClassType</a>, <a href="#isguadiniumcarbon">IsGuadiniumCarbon</a>, <a href="#isguadiniumnitrogen">IsGuadiniumNitrogen</a>
 | 
| 
 | 
    66 , <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>
 | 
| 
 | 
    67 , <a href="#ishydrogenbondacceptor">IsHydrogenBondAcceptor</a>, <a href="#ishydrogenbonddonor">IsHydrogenBondDonor</a>, <a href="#ishydrophobic">IsHydrophobic</a>, <a href="#isinring">IsInRing</a>
 | 
| 
 | 
    68 , <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>
 | 
| 
 | 
    69 , <a href="#isnegativelyionizable">IsNegativelyIonizable</a>, <a href="#isnitrogen">IsNitrogen</a>, <a href="#isnoncarbonorhydrogen">IsNonCarbonOrHydrogen</a>, <a href="#isnotinring">IsNotInRing</a>
 | 
| 
 | 
    70 , <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>
 | 
| 
 | 
    71 , <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>
 | 
| 
 | 
    72 , <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>
 | 
| 
 | 
    73 , <a href="#istopologicalpharmacophoretype">IsTopologicalPharmacophoreType</a>, <a href="#isunsaturated">IsUnsaturated</a>, <a href="#setatomsymbol">SetAtomSymbol</a>, <a href="#setatomicnumber">SetAtomicNumber</a>
 | 
| 
 | 
    74 , <a href="#setexplicithydrogens">SetExplicitHydrogens</a>, <a href="#setmassnumber">SetMassNumber</a>, <a href="#setstereocenter">SetStereoCenter</a>, <a href="#setstereochemistry">SetStereochemistry</a>
 | 
| 
 | 
    75 , <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>
 | 
| 
 | 
    76 </p><p><strong>Atom</strong> class is derived from <strong>ObjectProperty</strong> base class which provides methods not explicitly
 | 
| 
 | 
    77 defined in <strong>Atom</strong> or <strong>ObjectProperty</strong> class using Perl's AUTOLOAD functionality. These methods
 | 
| 
 | 
    78 are generated on-the-fly for a specified object property:</p>
 | 
| 
 | 
    79 <div class="OptionsBox">
 | 
| 
 | 
    80     Set<PropertyName>(<PropertyValue>);
 | 
| 
 | 
    81 <br/>    $PropertyValue = Get<PropertyName>();
 | 
| 
 | 
    82 <br/>    Delete<PropertyName>();</div>
 | 
| 
 | 
    83 <p>
 | 
| 
 | 
    84 </p>
 | 
| 
 | 
    85 <h2>METHODS</h2>
 | 
| 
 | 
    86 <dl>
 | 
| 
 | 
    87 <dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
 | 
| 
 | 
    88 <dd>
 | 
| 
 | 
    89 <div class="OptionsBox">
 | 
| 
 | 
    90     $NewAtom = new Atom([%PropertyNameAndValues]);</div>
 | 
| 
 | 
    91 <p>Using specified <em>Atom</em> property names and values hash, <strong>new</strong> method creates a new object
 | 
| 
 | 
    92 and returns a reference to newly created <strong>Atom</strong> object. By default, following properties are
 | 
| 
 | 
    93 initialized:</p>
 | 
| 
 | 
    94 <div class="OptionsBox">
 | 
| 
 | 
    95     ID = SequentialObjectID
 | 
| 
 | 
    96 <br/>    Name = "Atom <SequentialObjectID>"
 | 
| 
 | 
    97 <br/>    AtomSymbol = ""
 | 
| 
 | 
    98 <br/>    AtomicNumber = 0
 | 
| 
 | 
    99 <br/>    XYZ = ZeroVector</div>
 | 
| 
 | 
   100 <p>Except for <em>ID</em> property, all other default properties and other additional properties can
 | 
| 
 | 
   101 be set during invocation of this method.</p>
 | 
| 
 | 
   102 <p>Examples:</p>
 | 
| 
 | 
   103 <div class="OptionsBox">
 | 
| 
 | 
   104     $Atom = new Atom();
 | 
| 
 | 
   105 <br/>    $CarbonAtom = new Atom('AtomSymbol' => 'C', 'XYZ' => (0.0, 1.0,
 | 
| 
 | 
   106                   0.0));
 | 
| 
 | 
   107 <br/>    $OxygenAtom = new Atom('AtomName' => 'Oxygen', AtomSymbol' => 'O',
 | 
| 
 | 
   108                   'XYZ' => (1.0, 1.0, 1.0));</div>
 | 
| 
 | 
   109 </dd>
 | 
| 
 | 
   110 <dt><strong><a name="addhydrogens" class="item"><strong>AddHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   111 <dd>
 | 
| 
 | 
   112 <div class="OptionsBox">
 | 
| 
 | 
   113     $NumOfHydrogensAdded = $Atom->AddHydrogens();</div>
 | 
| 
 | 
   114 <p>Adds hydrogens to an <strong>Atom</strong> present in a <strong>Molecule</strong> object and returns
 | 
| 
 | 
   115 the number of added hydrogens. The current release of MayaChemTools doesn't
 | 
| 
 | 
   116 assign hydrogen positions.</p>
 | 
| 
 | 
   117 </dd>
 | 
| 
 | 
   118 <dt><strong><a name="copy" class="item"><strong>Copy</strong></a></strong></dt>
 | 
| 
 | 
   119 <dd>
 | 
| 
 | 
   120 <div class="OptionsBox">
 | 
| 
 | 
   121     $AtomCopy = $Atom->Copy();</div>
 | 
| 
 | 
   122 <p>Copy <em>Atom</em> and its associated data using <strong>Storable::dclone</strong> and return a new
 | 
| 
 | 
   123 <strong>Atom</strong> object.</p>
 | 
| 
 | 
   124 </dd>
 | 
| 
 | 
   125 <dt><strong><a name="deleteatom" class="item"><strong>DeleteAtom</strong></a></strong></dt>
 | 
| 
 | 
   126 <dd>
 | 
| 
 | 
   127 <div class="OptionsBox">
 | 
| 
 | 
   128     $Atom->DeleteAtom();</div>
 | 
| 
 | 
   129 <p>Delete <em>Atom</em> from a molecule.</p>
 | 
| 
 | 
   130 </dd>
 | 
| 
 | 
   131 <dt><strong><a name="doesatomneighborhoodmatch" class="item"><strong>DoesAtomNeighborhoodMatch</strong></a></strong></dt>
 | 
| 
 | 
   132 <dd>
 | 
| 
 | 
   133 <div class="OptionsBox">
 | 
| 
 | 
   134     $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec);
 | 
| 
 | 
   135 <br/>    $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec,
 | 
| 
 | 
   136                               $NbrAtomSpecsRef);
 | 
| 
 | 
   137 <br/>    $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec,
 | 
| 
 | 
   138                               $NbrAtomSpecsRef, $AllowedNbrBondSpecsRef);
 | 
| 
 | 
   139 <br/>    $Status = $Atom->DoesAtomNeighborhoodMatch($CentralAtomSpec,
 | 
| 
 | 
   140                               $NbrAtomSpecsRef, $NbrBondSpecsRef,
 | 
| 
 | 
   141                               $AllowedNbrOfNbrAtomSpecsRef);</div>
 | 
| 
 | 
   142 <p>Returns 1 or 0 based on whether atom matches central atom and its neighborhood
 | 
| 
 | 
   143 using specified atom and bonds specifications. Neighborhood atom and bond specifications
 | 
| 
 | 
   144 are specified as array references containing neighbor atom and bond specifications.</p>
 | 
| 
 | 
   145 <p>Let:</p>
 | 
| 
 | 
   146 <div class="OptionsBox">
 | 
| 
 | 
   147     AS = Atom symbol corresponding to element symbol, atomic number (#n)
 | 
| 
 | 
   148          or any atom (A)</div>
 | 
| 
 | 
   149 <div class="OptionsBox">
 | 
| 
 | 
   150     X<n>  = Number of non-hydrogen atom neighbors or heavy atoms
 | 
| 
 | 
   151             attached to atom
 | 
| 
 | 
   152 <br/>    T<n>  = Total number of atom neighbors including implicit and explicit
 | 
| 
 | 
   153             hydrogens
 | 
| 
 | 
   154 <br/>    BO<n> = Sum of bond orders to non-hydrogen atom neighbors or heavy
 | 
| 
 | 
   155             atoms attached to atom
 | 
| 
 | 
   156 <br/>    LBO<n> = Largest bond order of non-hydrogen atom neighbors or heavy
 | 
| 
 | 
   157              atoms attached to atom
 | 
| 
 | 
   158 <br/>    SB<n> = Number of single bonds to non-hydrogen atom neighbors or
 | 
| 
 | 
   159             heavy atoms attached to atom
 | 
| 
 | 
   160 <br/>    TSB<n> = Total number of single bonds to atom neighbors including implicit
 | 
| 
 | 
   161              and explicit hydrogens
 | 
| 
 | 
   162 <br/>    DB<n> = Number of double bonds to non-hydrogen atom neighbors or
 | 
| 
 | 
   163             heavy atoms attached to atom
 | 
| 
 | 
   164 <br/>    TB<n> = Number of triple bonds to non-hydrogen atom neighbors or
 | 
| 
 | 
   165             heavy atoms attached to atom
 | 
| 
 | 
   166 <br/>    AB<n> = Number of aromatic bonds to non-hydrogen atom neighbors or
 | 
| 
 | 
   167             heavy atoms attached to atom
 | 
| 
 | 
   168 <br/>    H<n>   = Number of implicit and explicit hydrogens for atom
 | 
| 
 | 
   169 <br/>    Ar     = Aromatic annotation indicating whether atom is aromatic
 | 
| 
 | 
   170 <br/>    RA or RA<n>  = Ring atom annotation indicating whether atom
 | 
| 
 | 
   171                    is a ring
 | 
| 
 | 
   172 <br/>    TR<n>  = Total number of rings containing atom
 | 
| 
 | 
   173 <br/>    FC<+n/-n> = Formal charge assigned to atom
 | 
| 
 | 
   174 <br/>    MN<n> = Mass number indicating isotope other than most abundant isotope
 | 
| 
 | 
   175 <br/>    SM<n> = Spin multiplicity of atom. Possible values: 1 (singlet),
 | 
| 
 | 
   176             2 (doublet) or 3 (triplet)</div>
 | 
| 
 | 
   177 <p>Then, atom specification corresponds to:</p>
 | 
| 
 | 
   178 <div class="OptionsBox">
 | 
| 
 | 
   179     AS.X<n>.T<n>.BO<n>.LBO<n>.<SB><n>.TSB<n>.<DB><n>.<TB><n>.AB<n>.H<n>.Ar.
 | 
| 
 | 
   180 <br/>    RA<n>.TR<n>FC<+n/-n>.MN<n>.SM<n></div>
 | 
| 
 | 
   181 <p>Except for AS which is a required atomic invariant in atom specification, all other atomic invariants are
 | 
| 
 | 
   182 optional. For an atom specification to match an atom, the values of all specified atomic invariants must
 | 
| 
 | 
   183 match. Exclamation in from of atomic invariant can be used to negate its effect during the match.</p>
 | 
| 
 | 
   184 <p>For <em>FC</em> value matching, the following value operators are also supported:</p>
 | 
| 
 | 
   185 <div class="OptionsBox">
 | 
| 
 | 
   186     o +* : Any positive value
 | 
| 
 | 
   187 <br/>    o -* : Any negative value
 | 
| 
 | 
   188 <br/>    o > ValidNumber or >= ValidNumber
 | 
| 
 | 
   189 <br/>    o < ValidNumber or <= ValidNumber</div>
 | 
| 
 | 
   190 <p>A comma delimited atom specification string is used to match any one of the specified atom specification.</p>
 | 
| 
 | 
   191 <p>Notes:</p>
 | 
| 
 | 
   192 <div class="OptionsBox">
 | 
| 
 | 
   193     o During atom specification match to an atom, the first atomic invariant is always assumed to
 | 
| 
 | 
   194       atom symbol.</div>
 | 
| 
 | 
   195 <p>Examples:</p>
 | 
| 
 | 
   196 <div class="OptionsBox">
 | 
| 
 | 
   197     o ('N', 'N', 'N')
 | 
| 
 | 
   198 <br/>    o ('N.FC0', 'N.FC0', 'N,N.FC+1.H1')
 | 
| 
 | 
   199 <br/>    o ('N.H2', 'N.H2', 'N.H1')
 | 
| 
 | 
   200 <br/>    o ('C,N', '!N', '!H')
 | 
| 
 | 
   201 <br/>    o ('C,N', 'N.Ar', 'N.R5')</div>
 | 
| 
 | 
   202 <p>Let:</p>
 | 
| 
 | 
   203 <div class="OptionsBox">
 | 
| 
 | 
   204     -|1|s|Single = Single bond
 | 
| 
 | 
   205 <br/>    =|2|d|Double = Double bond
 | 
| 
 | 
   206 <br/>    #|3|t|Triple  = Triple bond
 | 
| 
 | 
   207 <br/>    :|1.5|a|Ar|Aromatic = Aromatic bond</div>
 | 
| 
 | 
   208 <div class="OptionsBox">
 | 
| 
 | 
   209     @|RB|Ring = Ring bond
 | 
| 
 | 
   210 <br/>    ~|*|Any = Any bond</div>
 | 
| 
 | 
   211 <p>Then, bond specification corresponds to:</p>
 | 
| 
 | 
   212 <div class="OptionsBox">
 | 
| 
 | 
   213     -.:
 | 
| 
 | 
   214 <br/>    =.@
 | 
| 
 | 
   215 <br/>    Double.Aromatic</div>
 | 
| 
 | 
   216 <p>For a bond specification to match bond between two atoms, the values of all specified bond symbols must
 | 
| 
 | 
   217 match. Exclamation in from of bond symbol can be used to negate its effect during the match.</p>
 | 
| 
 | 
   218 <p>A comma delimited bond specification string is used to match any one of the specified atom specification.</p>
 | 
| 
 | 
   219 <p>Notes:</p>
 | 
| 
 | 
   220 <div class="OptionsBox">
 | 
| 
 | 
   221     o During atom neighborhood match for central atom neighborhood atom and bond specifications,
 | 
| 
 | 
   222       implicit or missing hydrogens are automatically checked for any matches to unmatched
 | 
| 
 | 
   223       specifications.</div>
 | 
| 
 | 
   224 <p>Examples:</p>
 | 
| 
 | 
   225 <div class="OptionsBox">
 | 
| 
 | 
   226     Aromatic carbon in a 5 membered ring:
 | 
| 
 | 
   227                               $Atom->DoesAtomNeighborhoodMatch('C.Ar.RA5');</div>
 | 
| 
 | 
   228 <div class="OptionsBox">
 | 
| 
 | 
   229     AcetylenicCarbon: $Atom->DoesAtomNeighborhoodMatch('C.T2.TB1'); or
 | 
| 
 | 
   230                        $Atom->DoesAtomNeighborhoodMatch('C.T2.TB1',
 | 
| 
 | 
   231                               ['*', '*'], ['#', '-']);</div>
 | 
| 
 | 
   232 <div class="OptionsBox">
 | 
| 
 | 
   233     GuadiniumCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4',
 | 
| 
 | 
   234                               ['N.FC0', 'N.FC0', 'N.FC0,N.FC+1'],
 | 
| 
 | 
   235                               ['-', '-', '='],
 | 
| 
 | 
   236                               ['C,H', 'C,H', 'C,H']);</div>
 | 
| 
 | 
   237 <div class="OptionsBox">
 | 
| 
 | 
   238     AmideCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3',
 | 
| 
 | 
   239                               ['C,H', 'O', 'N'],
 | 
| 
 | 
   240                               ['-', '=', '-'],
 | 
| 
 | 
   241                               ['C,H', 'C', 'C,H,N,O,S,P,F,Cl,Br,I']);</div>
 | 
| 
 | 
   242 <div class="OptionsBox">
 | 
| 
 | 
   243     CarboxylCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3',
 | 
| 
 | 
   244                               ['C,H', 'O', 'O.X1.FC0'],
 | 
| 
 | 
   245                               ['-', '=', '-'],
 | 
| 
 | 
   246                               ['C,H', 'C', 'C']);</div>
 | 
| 
 | 
   247 <div class="OptionsBox">
 | 
| 
 | 
   248     CarboxylateCarbon: $Atom->DoesAtomNeighborhoodMatch('C.X3.BO4,C.X2.BO3',
 | 
| 
 | 
   249                               ['C,H', 'O', 'O.X1.FC-1'],
 | 
| 
 | 
   250                               ['-', '=', '-'],
 | 
| 
 | 
   251                               ['C,H', 'C', 'C']);</div>
 | 
| 
 | 
   252 </dd>
 | 
| 
 | 
   253 <dt><strong><a name="deletehydrogens" class="item"><strong>DeleteHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   254 <dd>
 | 
| 
 | 
   255 <div class="OptionsBox">
 | 
| 
 | 
   256     $NumOfHydrogensDeleted = $Atom->AddHydrogens();</div>
 | 
| 
 | 
   257 <p>Delete hydrogens from an <strong>Atom</strong> present in a <strong>Molecule</strong> object and returns
 | 
| 
 | 
   258 the number of deleted hydrogens.</p>
 | 
| 
 | 
   259 </dd>
 | 
| 
 | 
   260 <dt><strong><a name="getatomicinvariantvalue" class="item"><strong>GetAtomicInvariantValue</strong></a></strong></dt>
 | 
| 
 | 
   261 <dd>
 | 
| 
 | 
   262 <div class="OptionsBox">
 | 
| 
 | 
   263     $Value = $Atom->GetAtomicInvariantValue($AtomicInvariant);</div>
 | 
| 
 | 
   264 <p>Returns atomic invariant value for a specified <em>AtomicInvariant</em>. The current release
 | 
| 
 | 
   265 of MayaChemTools supports following abbreviations and descriptive names for
 | 
| 
 | 
   266 <em>AtomicInvarints</em>:</p>
 | 
| 
 | 
   267 <div class="OptionsBox">
 | 
| 
 | 
   268     AS : Atom or element symbol
 | 
| 
 | 
   269 <br/>    X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors
 | 
| 
 | 
   270 <br/>    T : TotalNumOfAtomNeighbors
 | 
| 
 | 
   271 <br/>    BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms
 | 
| 
 | 
   272 <br/>    LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms
 | 
| 
 | 
   273 <br/>    SB :  NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms
 | 
| 
 | 
   274 <br/>    TSB :  TotalNumOfSingleBonds
 | 
| 
 | 
   275 <br/>    DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms
 | 
| 
 | 
   276 <br/>    TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms
 | 
| 
 | 
   277 <br/>    AB : NumOfAromaticBondsToNonHydrogenAtoms or NumOfAromaticBondsToHeavyAtoms
 | 
| 
 | 
   278 <br/>    H :  NumOfImplicitAndExplicitHydrogens
 | 
| 
 | 
   279 <br/>    Ar : Aromatic
 | 
| 
 | 
   280 <br/>    Str : Stereochemistry
 | 
| 
 | 
   281 <br/>    RA : RingAtom
 | 
| 
 | 
   282 <br/>    FC : FormalCharge
 | 
| 
 | 
   283 <br/>    AN : AtomicNumber
 | 
| 
 | 
   284 <br/>    AM : AtomicMass
 | 
| 
 | 
   285 <br/>    MN : MassNumber
 | 
| 
 | 
   286 <br/>    SM : SpinMultiplicity</div>
 | 
| 
 | 
   287 </dd>
 | 
| 
 | 
   288 <dt><strong><a name="getatomicweight" class="item"><strong>GetAtomicWeight</strong></a></strong></dt>
 | 
| 
 | 
   289 <dd>
 | 
| 
 | 
   290 <div class="OptionsBox">
 | 
| 
 | 
   291     $Value = $Aom->GetAtomicWeight();</div>
 | 
| 
 | 
   292 <p>Returns atomic weight of an <strong>Atom</strong> which corresponds to either explicity set <em>AtomicWeight</em>
 | 
| 
 | 
   293 atom property or atomic weight of the corresponding element in the periodic table available by
 | 
| 
 | 
   294 <strong>PeriodicTable</strong> module.</p>
 | 
| 
 | 
   295 </dd>
 | 
| 
 | 
   296 <dt><strong><a name="getbondtoatom" class="item"><strong>GetBondToAtom</strong></a></strong></dt>
 | 
| 
 | 
   297 <dd>
 | 
| 
 | 
   298 <div class="OptionsBox">
 | 
| 
 | 
   299     $Bond = $Atom->GetBondToAtom($OtherAtom);</div>
 | 
| 
 | 
   300 <p>Returns a <strong>Bond</strong> object corresponding to bond between <em>Atom</em> and <em>OtherAtom</em> in
 | 
| 
 | 
   301 a molecule.</p>
 | 
| 
 | 
   302 </dd>
 | 
| 
 | 
   303 <dt><strong><a name="getbonds" class="item"><strong>GetBonds</strong></a></strong></dt>
 | 
| 
 | 
   304 <dd>
 | 
| 
 | 
   305 <div class="OptionsBox">
 | 
| 
 | 
   306     @Bonds = $Aoto->GetBonds();</div>
 | 
| 
 | 
   307 <p>Returns an array of <strong>Bond</strong> objects corresponding to all bonds from <em>Atom</em> to other
 | 
| 
 | 
   308 bonded atoms in a molecule.</p>
 | 
| 
 | 
   309 </dd>
 | 
| 
 | 
   310 <dt><strong><a name="getbondstoheavyatoms" class="item"><strong>GetBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   311 <dd>
 | 
| 
 | 
   312 <div class="OptionsBox">
 | 
| 
 | 
   313     @Bonds = $Atom->GetBondsToHeavyAtoms();</div>
 | 
| 
 | 
   314 <p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to other bonded
 | 
| 
 | 
   315 non-hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   316 </dd>
 | 
| 
 | 
   317 <dt><strong><a name="getbondstohydrogenatoms" class="item"><strong>GetBondsToHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   318 <dd>
 | 
| 
 | 
   319 <div class="OptionsBox">
 | 
| 
 | 
   320     @Bonds = $Atom->GetBondsToHydrogenAtoms();</div>
 | 
| 
 | 
   321 <p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to any other
 | 
| 
 | 
   322 hydrogen atom in a molecule.</p>
 | 
| 
 | 
   323 </dd>
 | 
| 
 | 
   324 <dt><strong><a name="getbondstononhydrogenatoms" class="item"><strong>GetBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   325 <dd>
 | 
| 
 | 
   326 <div class="OptionsBox">
 | 
| 
 | 
   327     @Bonds = $Atom->GetBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   328 <p>Returns an array of <strong>Bond</strong> objects corresponding to bonds from <em>Atom</em> to other bonded
 | 
| 
 | 
   329 non-hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   330 </dd>
 | 
| 
 | 
   331 <dt><strong><a name="getexactmass" class="item"><strong>GetExactMass</strong></a></strong></dt>
 | 
| 
 | 
   332 <dd>
 | 
| 
 | 
   333 <div class="OptionsBox">
 | 
| 
 | 
   334     $ExactMass = $Atom->GetExactMass();</div>
 | 
| 
 | 
   335 <p>Returns exact mass of an <em>Atom</em> which correspond to one of these three values: explicity set
 | 
| 
 | 
   336 <em>ExactMass</em> property; mass of natural isotope for an explicty set value of <em>MassNumber</em>; most
 | 
| 
 | 
   337 abundant natural isotope mass for <em>Atom</em> with valid atomic number value available by
 | 
| 
 | 
   338 <strong>PerodicTable</strong> module.</p>
 | 
| 
 | 
   339 </dd>
 | 
| 
 | 
   340 <dt><strong><a name="getexplicithydrogens" class="item"><strong>GetExplicitHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   341 <dd>
 | 
| 
 | 
   342 <div class="OptionsBox">
 | 
| 
 | 
   343     $NumOfExplicitHydrogens = $Atom->GetExplicitHydrogens();</div>
 | 
| 
 | 
   344 <p>Returns number of hydrogens explicity bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   345 </dd>
 | 
| 
 | 
   346 <dt><strong><a name="getformalcharge" class="item"><strong>GetFormalCharge</strong></a></strong></dt>
 | 
| 
 | 
   347 <dd>
 | 
| 
 | 
   348 <div class="OptionsBox">
 | 
| 
 | 
   349     $FormalCharge = $Atom->GetFormalCharge();</div>
 | 
| 
 | 
   350 <p>Returns formal charge of an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   351 </dd>
 | 
| 
 | 
   352 <dt><strong><a name="getfreeradicalelectrons" class="item"><strong>GetFreeRadicalElectrons</strong></a></strong></dt>
 | 
| 
 | 
   353 <dd>
 | 
| 
 | 
   354 <div class="OptionsBox">
 | 
| 
 | 
   355     $FreeRadicalElectrons = $Atom->GetFreeRadicalElectrons();</div>
 | 
| 
 | 
   356 <p>Returns number of free radical electrons corresponding to to one of these
 | 
| 
 | 
   357 three values: <em>FreeRadicalElectrons</em> property; <em>SpinMultiplicity</em> property; value
 | 
| 
 | 
   358 of 0.</p>
 | 
| 
 | 
   359 <p>For atoms with explicit assignment of <em>SpinMultiplicity</em> atom property values,</p>
 | 
| 
 | 
   360 <div class="OptionsBox">
 | 
| 
 | 
   361     Singlet  - two unparied electrons corresponding to one spin state
 | 
| 
 | 
   362 <br/>    Doublet - free radical; an unpaired electron corresponding to two
 | 
| 
 | 
   363               spin states
 | 
| 
 | 
   364 <br/>    Triplet - two unparied electrons corresponding to three spin states
 | 
| 
 | 
   365               (divalent carbon atoms: carbenes)</div>
 | 
| 
 | 
   366 <p><strong>FreeRadicalElectrons</strong> are calculated as follows:</p>
 | 
| 
 | 
   367 <div class="OptionsBox">
 | 
| 
 | 
   368     Doublet: 1 (one valence electron not available for bonding)
 | 
| 
 | 
   369 <br/>    Singlet: 2 (two valence electrons not available for bonding)
 | 
| 
 | 
   370 <br/>    Triplet: 2 (two valence electrons not available for bonding)</div>
 | 
| 
 | 
   371 </dd>
 | 
| 
 | 
   372 <dt><strong><a name="getgroupnumber" class="item"><strong>GetGroupNumber</strong></a></strong></dt>
 | 
| 
 | 
   373 <dd>
 | 
| 
 | 
   374 <div class="OptionsBox">
 | 
| 
 | 
   375     $GroupNumber = $Atom->GetGroupNumber();</div>
 | 
| 
 | 
   376 <p>Returns group number of an <em>Atom</em> in a molecule with a valid atomic number.</p>
 | 
| 
 | 
   377 </dd>
 | 
| 
 | 
   378 <dt><strong><a name="getheavyatomneighbors" class="item"><strong>GetHeavyAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   379 <dd>
 | 
| 
 | 
   380 <div class="OptionsBox">
 | 
| 
 | 
   381     $NumOfHeavyAtoms = $Atom->GetHeavyAtomNeighbors();
 | 
| 
 | 
   382 <br/>    @HeavyAtoms = $Atom->GetHeavyAtomNeighbors();</div>
 | 
| 
 | 
   383 <p>Return number of heavy atoms or an array of <strong>Atom</strong> objects corresponding to heavy atoms
 | 
| 
 | 
   384 bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   385 </dd>
 | 
| 
 | 
   386 <dt><strong><a name="getheavyatomneighborsatominformation" class="item"><strong>GetHeavyAtomNeighborsAtomInformation</strong></a></strong></dt>
 | 
| 
 | 
   387 <dd>
 | 
| 
 | 
   388 <div class="OptionsBox">
 | 
| 
 | 
   389     ($NumOfAtomNeighbors, $AtomNeighborsRef,
 | 
| 
 | 
   390      $NumOfAtomNeighborsType, $AtomNeighborsTypeMapRef) = $Atom->
 | 
| 
 | 
   391                               GetHeavyAtomNeighborsAtomInformation();</div>
 | 
| 
 | 
   392 <p>Returns atoms information for all non-hydrogen atoms attached to an <em>Atom</em>
 | 
| 
 | 
   393 in a molecule.</p>
 | 
| 
 | 
   394 <p>The following values are returned:</p>
 | 
| 
 | 
   395 <div class="OptionsBox">
 | 
| 
 | 
   396     o Number of non-hydrogen atom neighbors
 | 
| 
 | 
   397 <br/>    o A reference to an array containing atom objects corresponding to
 | 
| 
 | 
   398       non-hydrogen atom neighbors
 | 
| 
 | 
   399 <br/>    o Number of different types of non-hydrogen atom neighbors
 | 
| 
 | 
   400 <br/>    o A reference to a hash containing atom symbol as key with value
 | 
| 
 | 
   401       corresponding to its count for non-hydrogen atom neighbors</div>
 | 
| 
 | 
   402 </dd>
 | 
| 
 | 
   403 <dt><strong><a name="getheavyatomneighborsbondformation" class="item"><strong>GetHeavyAtomNeighborsBondformation</strong></a></strong></dt>
 | 
| 
 | 
   404 <dd>
 | 
| 
 | 
   405 <div class="OptionsBox">
 | 
| 
 | 
   406     ($NumOfBonds, $BondTypeCountMapRef,
 | 
| 
 | 
   407 <br/>    $AtomsBondTypesCountMapRef,
 | 
| 
 | 
   408 <br/>    $AtomsBondTypeAtomsMap) = $Atom->
 | 
| 
 | 
   409                               GetHeavyAtomNeighborsBondformation();</div>
 | 
| 
 | 
   410 <p>Returns bonds information for all non-hydrogen atoms attached to an <em>Atom</em>
 | 
| 
 | 
   411 in a molecule.</p>
 | 
| 
 | 
   412 <p>The following values are returned:</p>
 | 
| 
 | 
   413 <div class="OptionsBox">
 | 
| 
 | 
   414     o Number of bonds to non-hydrogen atom neighbors
 | 
| 
 | 
   415 <br/>    o A reference to an array containing bond objects corresponding to
 | 
| 
 | 
   416       non-hydrogen atom neighbors
 | 
| 
 | 
   417 <br/>    o A reference to a hash containing bond type as key with value
 | 
| 
 | 
   418       corresponding to its count for non-hydrogen atom neighbors. Bond
 | 
| 
 | 
   419       types are: Single, Double or Triple
 | 
| 
 | 
   420 <br/>    o A reference to a hash containing atom symbol as key pointing to bond
 | 
| 
 | 
   421       type as second key with values corresponding to count of bond types for atom
 | 
| 
 | 
   422       symbol for non-hydrogen atom neighbors
 | 
| 
 | 
   423 <br/>    o A reference to a hash containing atom symbol as key pointing to bond
 | 
| 
 | 
   424       type as second key with values corresponding to atom objects array involved
 | 
| 
 | 
   425       in corresponding bond type for atom symbol for non-hydrogen atom neighbors</div>
 | 
| 
 | 
   426 </dd>
 | 
| 
 | 
   427 <dt><strong><a name="gethighestcommonvalence" class="item"><strong>GetHighestCommonValence</strong></a></strong></dt>
 | 
| 
 | 
   428 <dd>
 | 
| 
 | 
   429 <div class="OptionsBox">
 | 
| 
 | 
   430     $HighestCommonValence = $Atom->GetHighestCommonValence();</div>
 | 
| 
 | 
   431 <p>Returns highest common valence of an <em>Atom</em> which corresponds to either explicity set
 | 
| 
 | 
   432 <em>HighestCommonValence</em> atom property or highest common valence of the corresponding
 | 
| 
 | 
   433 element in the periodic table available by <strong>PerodicTable</strong> module.</p>
 | 
| 
 | 
   434 </dd>
 | 
| 
 | 
   435 <dt><strong><a name="gethydrogens" class="item"><strong>GetHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   436 <dd>
 | 
| 
 | 
   437 <div class="OptionsBox">
 | 
| 
 | 
   438     $NumOfHydrogens = $Atom->GetHydrogens();</div>
 | 
| 
 | 
   439 <p>Returns total number of hydrogens for an <em>Atom</em> in a molecule including both hydrogen atom
 | 
| 
 | 
   440 neighbors and implicit hydrogens.</p>
 | 
| 
 | 
   441 </dd>
 | 
| 
 | 
   442 <dt><strong><a name="gethydrogenatomneighbors" class="item"><strong>GetHydrogenAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   443 <dd>
 | 
| 
 | 
   444 <div class="OptionsBox">
 | 
| 
 | 
   445     $NumOfHydrogenAtomNeighbors = $Atom->GetHydrogenAtomNeighbors();
 | 
| 
 | 
   446 <br/>    @HydrogenAtomNeighbors = $Atom->GetHydrogenAtomNeighbors();</div>
 | 
| 
 | 
   447 <p>Return number of hydrogen atoms or an array of <em>Atom</em> objects corresponding to hydrogen
 | 
| 
 | 
   448 atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   449 </dd>
 | 
| 
 | 
   450 <dt><strong><a name="getimplicithydrogens" class="item"><strong>GetImplicitHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   451 <dd>
 | 
| 
 | 
   452 <div class="OptionsBox">
 | 
| 
 | 
   453     $NumOfImplicitHydrogens = $Atom->GetImplicitHydrogens();</div>
 | 
| 
 | 
   454 <p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either
 | 
| 
 | 
   455 corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the
 | 
| 
 | 
   456 difference between the value of potential total valence and sum of bond orders to
 | 
| 
 | 
   457 both hydrogen and non-hydrogen atom neighbors.</p>
 | 
| 
 | 
   458 </dd>
 | 
| 
 | 
   459 <dt><strong><a name="getpotentialtotalcommonvalence" class="item"><strong>GetPotentialTotalCommonValence</strong></a></strong></dt>
 | 
| 
 | 
   460 <dd>
 | 
| 
 | 
   461 <div class="OptionsBox">
 | 
| 
 | 
   462     $PotentialTotalValence = $Atom->GetPotentialTotalCommonValence();</div>
 | 
| 
 | 
   463 <p>Returns potential total common valence of an <em>Atom</em> in a molecule corresponding
 | 
| 
 | 
   464 to a specific valence model set for the molecule using its <strong>SetValenceModel</strong> method
 | 
| 
 | 
   465 or default internal valence model. It is used during the calculation of missing or
 | 
| 
 | 
   466 implicit hydrogens.</p>
 | 
| 
 | 
   467 <p>The current release of MayaChemTools supports three valence models: <em>MDLValenceModel,
 | 
| 
 | 
   468 DaylightValenceModel, InternalValenceModel or MayaChemToolsValenceModel</em>.</p>
 | 
| 
 | 
   469 <p>For <em>MDLValenceModel</em> and <em>DaylightValenceModel</em>, the following data files, distributed
 | 
| 
 | 
   470 with the package, are used to calculate potential total valence:</p>
 | 
| 
 | 
   471 <div class="OptionsBox">
 | 
| 
 | 
   472     lib/data/MDLValenceModelData.csv
 | 
| 
 | 
   473 <br/>    lib/data/DaylightValenceModelData.csv</div>
 | 
| 
 | 
   474 <p>The calculation of potential total common valence for these two models is performed as
 | 
| 
 | 
   475 follows: Calculate current effective total valence of the <em>Atom</em> by adding up the bond
 | 
| 
 | 
   476 order of its neighbors and number of free radical electrons; Find available common valence
 | 
| 
 | 
   477 for the <em>Atom</em>, corresponding to any specified formal charge, higher than the effective
 | 
| 
 | 
   478 total valence, and return it as <em>PotentialTotalValence</em>.</p>
 | 
| 
 | 
   479 <p>The calculation of potential total common valence For <em>InternalValenceModel</em> or
 | 
| 
 | 
   480 <em>MayaChenToolsValenceModel</em> doesn't uses <strong>PeriodicTable</strong> module to retrieve values
 | 
| 
 | 
   481 for common valence, which in turn reads in PeriodicTableElements.csv file distributed with
 | 
| 
 | 
   482 the package.</p>
 | 
| 
 | 
   483 <p>For elements with one one common valence, potential total common valence corresponds
 | 
| 
 | 
   484 to:</p>
 | 
| 
 | 
   485 <div class="OptionsBox">
 | 
| 
 | 
   486     CommonValence + FormalCharge - FreeRadicalElectrons</div>
 | 
| 
 | 
   487 <p>For elements with multiple common valences, each common valence is used to
 | 
| 
 | 
   488 calculate total potential common valence as shown above, and the first total potential
 | 
| 
 | 
   489 common valence greater than the sum of bond orders to all neighbors is selected as
 | 
| 
 | 
   490 the final total common valence.</p>
 | 
| 
 | 
   491 <p>FormalCharge sign is reversed for electropositive elements with positive formal charge
 | 
| 
 | 
   492 during common valence calculations. Electropositive elements, metals and transition elements,
 | 
| 
 | 
   493 have usually plus formal charge and it leads to decrease in common valence; the negative
 | 
| 
 | 
   494 formal charge should result in the decrease of common valence.</p>
 | 
| 
 | 
   495 <p>The sign of formal charge is adjusted as follows.</p>
 | 
| 
 | 
   496 <p>Group numbers > 14 - Group numbers 15 (N), 16 (O), 17 (F), 18 (He):</p>
 | 
| 
 | 
   497 <p>Formal charge sign is not adjusted. Positive and negative values result in the
 | 
| 
 | 
   498 increase and decrease of valence.</p>
 | 
| 
 | 
   499 <p>Group 14 containing C, Si, Ge, Sn, Pb...:</p>
 | 
| 
 | 
   500 <p>Formal charge sign is reversed for positive values. Both positive and negative
 | 
| 
 | 
   501 values result in the decrease of valence.</p>
 | 
| 
 | 
   502 <p>Group 13 containing B, Al, Ga, In, Tl...:</p>
 | 
| 
 | 
   503 <p>Formal charge sign is always reversed. Positive and negative values result in the
 | 
| 
 | 
   504 decrease and increase of valence.</p>
 | 
| 
 | 
   505 <p>Groups 1 (H) through 12 (Zn)...:</p>
 | 
| 
 | 
   506 <p>Formal charge sign is reversed for positive values. Both positive and negative
 | 
| 
 | 
   507 values result in the decrease of valence.</p>
 | 
| 
 | 
   508 <p>Lanthanides and actinides:</p>
 | 
| 
 | 
   509 <p>Formal charge sign is reversed for positive values. Both positive and negative
 | 
| 
 | 
   510 values result in the decrease of valence.</p>
 | 
| 
 | 
   511 </dd>
 | 
| 
 | 
   512 <dt><strong><a name="getlargestbondorder" class="item"><strong>GetLargestBondOrder</strong></a></strong></dt>
 | 
| 
 | 
   513 <dd>
 | 
| 
 | 
   514 <div class="OptionsBox">
 | 
| 
 | 
   515     $LargestBO =$Atom->GetLargestBondOrder();</div>
 | 
| 
 | 
   516 <p>Returns largest bond order for an <em>Atom</em> among the bonds to other atoms in a molecule.</p>
 | 
| 
 | 
   517 </dd>
 | 
| 
 | 
   518 <dt><strong><a name="getlargestbondordertoheavyatoms" class="item"><strong>GetLargestBondOrderToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   519 <dd>
 | 
| 
 | 
   520 <div class="OptionsBox">
 | 
| 
 | 
   521     $LargestBO =$Atom->GetLargestBondOrderToHeavyAtoms();</div>
 | 
| 
 | 
   522 <p>Returns largest bond order for an <em>Atom</em> among the bonds to other heavy atoms in a molecule.</p>
 | 
| 
 | 
   523 </dd>
 | 
| 
 | 
   524 <dt><strong><a name="getlargestbondordertononhydrogenatoms" class="item"><strong>GetLargestBondOrderToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   525 <dd>
 | 
| 
 | 
   526 <div class="OptionsBox">
 | 
| 
 | 
   527     $LargestBO =$Atom->GetLargestBondOrderToNonHydrogenAtoms();</div>
 | 
| 
 | 
   528 <p>Returns largest bond order for an <em>Atom</em> among the bonds to other non-hydrogen atoms
 | 
| 
 | 
   529 in a molecule.</p>
 | 
| 
 | 
   530 </dd>
 | 
| 
 | 
   531 <dt><strong><a name="getlargestring" class="item"><strong>GetLargestRing</strong></a></strong></dt>
 | 
| 
 | 
   532 <dd>
 | 
| 
 | 
   533 <div class="OptionsBox">
 | 
| 
 | 
   534     @RingAtoms = $Atom->GetLargestRing();</div>
 | 
| 
 | 
   535 <p>Returns an array of ring <em>Atom</em> objects corresponding to the largest ring containing <em>Atom</em>
 | 
| 
 | 
   536 in a molecule.</p>
 | 
| 
 | 
   537 </dd>
 | 
| 
 | 
   538 <dt><strong><a name="getlowestcommonvalence" class="item"><strong>GetLowestCommonValence</strong></a></strong></dt>
 | 
| 
 | 
   539 <dd>
 | 
| 
 | 
   540 <div class="OptionsBox">
 | 
| 
 | 
   541     $LowestCommonValence = $Atom->GetLowestCommonValence();</div>
 | 
| 
 | 
   542 <p>Returns lowest common valence of an <em>Atom</em> which corresponds to either explicity set
 | 
| 
 | 
   543 <em>LowestCommonValence</em> atom property or highest common valence of the corresponding
 | 
| 
 | 
   544 element in the periodic table available by <strong>PerodicTable</strong> module.</p>
 | 
| 
 | 
   545 </dd>
 | 
| 
 | 
   546 <dt><strong><a name="getmassnumber" class="item"><strong>GetMassNumber</strong></a></strong></dt>
 | 
| 
 | 
   547 <dd>
 | 
| 
 | 
   548 <div class="OptionsBox">
 | 
| 
 | 
   549     $MassNumber = $Aom->GetMassNumber();</div>
 | 
| 
 | 
   550 <p>Returns atomic weight of an <strong>Atom</strong> which corresponds to either explicity set <em>MassNumber</em>
 | 
| 
 | 
   551 atom property or mass number of the most abundant natural isotope of the corresponding element
 | 
| 
 | 
   552 in the periodic table available by <strong>PeriodicTable</strong> module.</p>
 | 
| 
 | 
   553 </dd>
 | 
| 
 | 
   554 <dt><strong><a name="getmissinghydrogens" class="item"><strong>GetMissingHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   555 <dd>
 | 
| 
 | 
   556 <div class="OptionsBox">
 | 
| 
 | 
   557     $NumOfMissingHydrogens = $Atom->GetMissingHydrogens();</div>
 | 
| 
 | 
   558 <p>Returns number of missing hydrogens for an <em>Atom</em> in a molecule. This value either
 | 
| 
 | 
   559 corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the
 | 
| 
 | 
   560 difference between the value of potential total valence and sum of bond orders to
 | 
| 
 | 
   561 both hydrogen and non-hydrogen atom neighbors.</p>
 | 
| 
 | 
   562 </dd>
 | 
| 
 | 
   563 <dt><strong><a name="getneighbors" class="item"><strong>GetNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   564 <dd>
 | 
| 
 | 
   565 <div class="OptionsBox">
 | 
| 
 | 
   566     $NumOfNeighbors = $Atom->GetNeighbors();
 | 
| 
 | 
   567 <br/>    @Neighbors = $Atom->GetNeighbors();</div>
 | 
| 
 | 
   568 <p>Returns number of neighbor atoms or an array of <em>Atom</em> objects corresponding to all
 | 
| 
 | 
   569 atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   570 </dd>
 | 
| 
 | 
   571 <dt><strong><a name="getneighborsusingatomspecification" class="item"><strong>GetNeighborsUsingAtomSpecification</strong></a></strong></dt>
 | 
| 
 | 
   572 <dd>
 | 
| 
 | 
   573 <div class="OptionsBox">
 | 
| 
 | 
   574     @AtomNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec);
 | 
| 
 | 
   575 <br/>    $NumOfNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec);</div>
 | 
| 
 | 
   576 <div class="OptionsBox">
 | 
| 
 | 
   577     @AtomNeighbors = $Atom->GetNeighborsUsingAtomSpecification($AtomSpec,
 | 
| 
 | 
   578                      @ExcludeNeighbors);</div>
 | 
| 
 | 
   579 <p>Returns number of neighbor atoms or an array of <em>Atom</em> objects matching atom
 | 
| 
 | 
   580 specification corresponding to atom neighbors of an <em>Atom</em> in a molecule. Optionally,
 | 
| 
 | 
   581 <em>Atom</em> neighbors can be excluded from the neighbors list using <em>ExcludeNeighbors</em>.</p>
 | 
| 
 | 
   582 <p>Notes:</p>
 | 
| 
 | 
   583 <div class="OptionsBox">
 | 
| 
 | 
   584     o AtomSpecification correspond to any valid AtomicInvariant based atomic specifications
 | 
| 
 | 
   585       as supported by DoesAtomNeighborhoodMatch method
 | 
| 
 | 
   586 <br/>    o Multiple atom specifications can be used in a string delimited by comma</div>
 | 
| 
 | 
   587 </dd>
 | 
| 
 | 
   588 <dt><strong><a name="getnonhydrogenatomneighbors" class="item"><strong>GetNonHydrogenAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   589 <dd>
 | 
| 
 | 
   590 <div class="OptionsBox">
 | 
| 
 | 
   591     $NumOfNeighbors = $Atom->GetNonHydrogenAtomNeighbors();
 | 
| 
 | 
   592 <br/>    @Neighbors = $Atom->GetNonHydrogenAtomNeighbors();</div>
 | 
| 
 | 
   593 <p>Returns number of non-hydrogen atoms or an array of <strong>Atom</strong> objects corresponding to non-hydrogen
 | 
| 
 | 
   594 atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   595 </dd>
 | 
| 
 | 
   596 <dt><strong><a name="getnonhydrogenatomneighborsatominformation" class="item"><strong>GetNonHydrogenAtomNeighborsAtomInformation</strong></a></strong></dt>
 | 
| 
 | 
   597 <dd>
 | 
| 
 | 
   598 <div class="OptionsBox">
 | 
| 
 | 
   599     ($NumOfAtomNeighbors, $AtomNeighborsRef,
 | 
| 
 | 
   600      $NumOfAtomNeighborsType, $AtomNeighborsTypeMapRef) = $Atom->
 | 
| 
 | 
   601                               GetNonHydrogenAtomNeighborsAtomInformation();</div>
 | 
| 
 | 
   602 <p>Returns atoms information for all non-hydrogen atoms attached to an <em>Atom</em>
 | 
| 
 | 
   603 in a molecule.</p>
 | 
| 
 | 
   604 <p>The following values are returned:</p>
 | 
| 
 | 
   605 <div class="OptionsBox">
 | 
| 
 | 
   606     o Number of non-hydrogen atom neighbors
 | 
| 
 | 
   607 <br/>    o A reference to an array containing atom objects corresponding to
 | 
| 
 | 
   608       non-hydrogen atom neighbors
 | 
| 
 | 
   609 <br/>    o Number of different types of non-hydrogen atom neighbors
 | 
| 
 | 
   610 <br/>    o A reference to a hash containing atom symbol as key with value
 | 
| 
 | 
   611       corresponding to its count for non-hydrogen atom neighbors</div>
 | 
| 
 | 
   612 </dd>
 | 
| 
 | 
   613 <dt><strong><a name="getnonhydrogenatomneighborsbondinformation" class="item"><strong>GetNonHydrogenAtomNeighborsBondInformation</strong></a></strong></dt>
 | 
| 
 | 
   614 <dd>
 | 
| 
 | 
   615 <div class="OptionsBox">
 | 
| 
 | 
   616     ($NumOfBonds, $BondTypeCountMapRef,
 | 
| 
 | 
   617 <br/>    $AtomsBondTypesCountMapRef,
 | 
| 
 | 
   618 <br/>    $AtomsBondTypeAtomsMap) = $Atom->
 | 
| 
 | 
   619                               GetNonHydrogenAtomNeighborsBondInformation();</div>
 | 
| 
 | 
   620 <p>Returns bonds information for all non-hydrogen atoms attached to an <em>Atom</em>
 | 
| 
 | 
   621 in a molecule.</p>
 | 
| 
 | 
   622 <p>The following values are returned:</p>
 | 
| 
 | 
   623 <div class="OptionsBox">
 | 
| 
 | 
   624     o Number of bonds to non-hydrogen atom neighbors
 | 
| 
 | 
   625 <br/>    o A reference to an array containing bond objects corresponding to
 | 
| 
 | 
   626       non-hydrogen atom neighbors
 | 
| 
 | 
   627 <br/>    o A reference to a hash containing bond type as key with value
 | 
| 
 | 
   628       corresponding to its count for non-hydrogen atom neighbors. Bond
 | 
| 
 | 
   629       types are: Single, Double or Triple
 | 
| 
 | 
   630 <br/>    o A reference to a hash containing atom symbol as key pointing to bond
 | 
| 
 | 
   631       type as second key with values corresponding to count of bond types for atom
 | 
| 
 | 
   632       symbol for non-hydrogen atom neighbors
 | 
| 
 | 
   633 <br/>    o A reference to a hash containing atom symbol as key pointing to bond
 | 
| 
 | 
   634       type as second key with values corresponding to atom objects array involved
 | 
| 
 | 
   635       in corresponding bond type for atom symbol for non-hydrogen atom neighbors</div>
 | 
| 
 | 
   636 </dd>
 | 
| 
 | 
   637 <dt><strong><a name="getnonhydrogenneighborofhydrogenatom" class="item"><strong>GetNonHydrogenNeighborOfHydrogenAtom</strong></a></strong></dt>
 | 
| 
 | 
   638 <dd>
 | 
| 
 | 
   639 <div class="OptionsBox">
 | 
| 
 | 
   640     $Atom = $Atom->GetNonHydrogenNeighborOfHydrogenAtom();</div>
 | 
| 
 | 
   641 <p>Returns non-hydrogen or heavy atom neighbor of a hydrogen atom in a molecule..</p>
 | 
| 
 | 
   642 </dd>
 | 
| 
 | 
   643 <dt><strong><a name="getnumofaromaticbondstoheavyatoms" class="item"><strong>GetNumOfAromaticBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   644 <dd>
 | 
| 
 | 
   645 <div class="OptionsBox">
 | 
| 
 | 
   646     $NumOfBonds = $Atom->GetNumOfAromaticBondsToHeavyAtoms();</div>
 | 
| 
 | 
   647 <p>Returns number of aromatic bonds from an <em>Atom</em> to other non-hydrogen or heavy atoms in
 | 
| 
 | 
   648 a molecule.</p>
 | 
| 
 | 
   649 </dd>
 | 
| 
 | 
   650 <dt><strong><a name="getnumofaromaticbondstononhydrogenatoms" class="item"><strong>GetNumOfAromaticBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   651 <dd>
 | 
| 
 | 
   652 <div class="OptionsBox">
 | 
| 
 | 
   653     $NumOfBonds = $Atom->GetNumOfAromaticBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   654 <p>Returns number of aromatic bonds from an <em>Atom</em> to other non-hydrogen or heavy atoms in
 | 
| 
 | 
   655 a molecule.</p>
 | 
| 
 | 
   656 </dd>
 | 
| 
 | 
   657 <dt><strong><a name="getnumofbonds" class="item"><strong>GetNumOfBonds</strong></a></strong></dt>
 | 
| 
 | 
   658 <dd>
 | 
| 
 | 
   659 <div class="OptionsBox">
 | 
| 
 | 
   660     $NumOfBonds = $Atom->GetNumOfBonds();</div>
 | 
| 
 | 
   661 <p>Returns number of bonds from an <em>Atom</em> to other atoms in a molecule.</p>
 | 
| 
 | 
   662 </dd>
 | 
| 
 | 
   663 <dt><strong><a name="getnumofbondsavailableforheavyatoms" class="item"><strong>GetNumOfBondsAvailableForHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   664 <dd>
 | 
| 
 | 
   665 <div class="OptionsBox">
 | 
| 
 | 
   666     $NumOfBonds = $Atom->GetNumOfBondsAvailableForHeavyAtoms();</div>
 | 
| 
 | 
   667 <p>Get number of bonds available to form additional bonds with heavy atoms, excluding
 | 
| 
 | 
   668 any implicit bonds to hydrogens set using <em>ImplicitHydrogens</em> property.</p>
 | 
| 
 | 
   669 <p>It's different from number of implicit or missing hydrogens, both of which are equivalent.</p>
 | 
| 
 | 
   670 <p>For example, in a SMILES string, [nH] ring atom corresponds to an aromatic nitrogen.
 | 
| 
 | 
   671 Although the hydrogen specified for n is treated internally as implicit hydrogen and shows
 | 
| 
 | 
   672 up in missing hydrogen count, it's not available to participate in double bonds to additional
 | 
| 
 | 
   673 heavy atoms.</p>
 | 
| 
 | 
   674 </dd>
 | 
| 
 | 
   675 <dt><strong><a name="getnumofbondsavailablefornonhydrogenatoms" class="item"><strong>GetNumOfBondsAvailableForNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   676 <dd>
 | 
| 
 | 
   677 <div class="OptionsBox">
 | 
| 
 | 
   678     $NumOfBonds = $Atom->GetNumOfBondsAvailableForNonHydrogenAtoms();</div>
 | 
| 
 | 
   679 <p>Get number of bonds available to form additional bonds with heavy atoms, excluding
 | 
| 
 | 
   680 any implicit bonds to hydrogens set using ImplicitHydrogens property.</p>
 | 
| 
 | 
   681 </dd>
 | 
| 
 | 
   682 <dt><strong><a name="getnumofbondstoheavyatoms" class="item"><strong>GetNumOfBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   683 <dd>
 | 
| 
 | 
   684 <div class="OptionsBox">
 | 
| 
 | 
   685     $NumOfBondsToHeavyAtoms = $Atom->GetNumOfBondsToHeavyAtoms();</div>
 | 
| 
 | 
   686 <p>Returns number of bonds from an <em>Atom</em> to other heavy atoms in a molecule.</p>
 | 
| 
 | 
   687 </dd>
 | 
| 
 | 
   688 <dt><strong><a name="getnumofbondstohydrogenatoms" class="item"><strong>GetNumOfBondsToHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   689 <dd>
 | 
| 
 | 
   690 <div class="OptionsBox">
 | 
| 
 | 
   691     $NumOfBonds = $Atom->GetNumOfBondsToHydrogenAtoms();</div>
 | 
| 
 | 
   692 <p>Returns number of bonds from an <em>Atom</em> to other hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   693 </dd>
 | 
| 
 | 
   694 <dt><strong><a name="getnumofbondstononhydrogenatoms" class="item"><strong>GetNumOfBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   695 <dd>
 | 
| 
 | 
   696 <div class="OptionsBox">
 | 
| 
 | 
   697     $NumOfBonds = $Atom->GetNumOfBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   698 <p>Returns number of bonds from an <em>Atom</em> to other non-hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   699 </dd>
 | 
| 
 | 
   700 <dt><strong><a name="getnumofbondtypestoheavyatoms" class="item"><strong>GetNumOfBondTypesToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   701 <dd>
 | 
| 
 | 
   702 <div class="OptionsBox">
 | 
| 
 | 
   703     ($NumOfSingleBonds, $NumOfDoubleBonds,
 | 
| 
 | 
   704      $NumOfTripleBonds, $NumOfAromaticBonds) = $Atom->
 | 
| 
 | 
   705                    GetNumOfBondTypesToHeavyAtoms($CountAromaticBonds);</div>
 | 
| 
 | 
   706 <p>Get number of single, double, triple, and aromatic bonds from an <em>Atom</em> to all other
 | 
| 
 | 
   707 non-hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   708 <p>Value of <em>CountAtomaticBonds</em> parameter controls whether number of aromatic
 | 
| 
 | 
   709 bonds is returned; default is not to count aromatic bonds. During  counting of
 | 
| 
 | 
   710 aromatic bonds, the bond marked aromatic is not included in the count
 | 
| 
 | 
   711 of other bond types.</p>
 | 
| 
 | 
   712 </dd>
 | 
| 
 | 
   713 <dt><strong><a name="getnumofbondtypestononhydrogenatoms" class="item"><strong>GetNumOfBondTypesToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   714 <dd>
 | 
| 
 | 
   715 <div class="OptionsBox">
 | 
| 
 | 
   716     ($NumOfSingleBonds, $NumOfDoubleBonds,
 | 
| 
 | 
   717      $NumOfTripleBonds, $NumOfAromaticBonds) = $Atom->
 | 
| 
 | 
   718              GetNumOfBondTypesToNonHydrogenAtoms($CountAromaticBonds);</div>
 | 
| 
 | 
   719 <p>Get number of single, double, triple, and aromatic bonds from an <em>Atom</em> to all other
 | 
| 
 | 
   720 non-hydrogen atoms in a molecule.</p>
 | 
| 
 | 
   721 <p>Value of <em>CountAtomaticBonds</em> parameter controls whether number of aromatic
 | 
| 
 | 
   722 bonds is returned; default is not to count aromatic bonds. During  counting of
 | 
| 
 | 
   723 aromatic bonds, the bond marked aromatic is not included in the count
 | 
| 
 | 
   724 of other bond types.</p>
 | 
| 
 | 
   725 </dd>
 | 
| 
 | 
   726 <dt><strong><a name="getnumofdoublebondstoheavyatoms" class="item"><strong>GetNumOfDoubleBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   727 <dd>
 | 
| 
 | 
   728 <div class="OptionsBox">
 | 
| 
 | 
   729     $NumOfDoubleBonds = $Atom->GetNumOfDoubleBondsToHeavyAtoms();</div>
 | 
| 
 | 
   730 <p>Returns number of double bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   731 atoms in a molecule.</p>
 | 
| 
 | 
   732 </dd>
 | 
| 
 | 
   733 <dt><strong><a name="getnumofdoublebondstononhydrogenatoms" class="item"><strong>GetNumOfDoubleBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   734 <dd>
 | 
| 
 | 
   735 <div class="OptionsBox">
 | 
| 
 | 
   736     $NumOfDoubleBonds =$Atom->GetNumOfDoubleBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   737 <p>Returns number of double bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   738 atoms in a molecule.</p>
 | 
| 
 | 
   739 </dd>
 | 
| 
 | 
   740 <dt><strong><a name="getnumofheavyatomneighbors" class="item"><strong>GetNumOfHeavyAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   741 <dd>
 | 
| 
 | 
   742 <div class="OptionsBox">
 | 
| 
 | 
   743     $NumOfNeighbors = $Atom->GetNumOfHeavyAtomNeighbors();</div>
 | 
| 
 | 
   744 <p>Returns number heavy atom neighbors for an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   745 </dd>
 | 
| 
 | 
   746 <dt><strong><a name="getnumofhydrogenatomneighbors" class="item"><strong>GetNumOfHydrogenAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   747 <dd>
 | 
| 
 | 
   748 <div class="OptionsBox">
 | 
| 
 | 
   749     $NumOfNeighbors = $Atom->GetNumOfHydrogenAtomNeighbors();</div>
 | 
| 
 | 
   750 <p>Returns number hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   751 </dd>
 | 
| 
 | 
   752 <dt><strong><a name="getnumofmissinghydrogens" class="item"><strong>GetNumOfMissingHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   753 <dd>
 | 
| 
 | 
   754 <div class="OptionsBox">
 | 
| 
 | 
   755     $NumOfMissingHydrogens = $Atom->GetNumOfMissingHydrogens();</div>
 | 
| 
 | 
   756 <p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either
 | 
| 
 | 
   757 corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the
 | 
| 
 | 
   758 difference between the value of potential total valence and sum of bond orders to
 | 
| 
 | 
   759 both hydrogen and non-hydrogen atom neighbors.</p>
 | 
| 
 | 
   760 </dd>
 | 
| 
 | 
   761 <dt><strong><a name="getnumofexplicithydrogens" class="item"><strong>GetNumOfExplicitHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   762 <dd>
 | 
| 
 | 
   763 <div class="OptionsBox">
 | 
| 
 | 
   764     $NumOfExplicitHydrogens = $Atom->GetNumOfExplicitHydrogens();</div>
 | 
| 
 | 
   765 <p>Returns number hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   766 </dd>
 | 
| 
 | 
   767 <dt><strong><a name="getnumofhydrogens" class="item"><strong>GetNumOfHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   768 <dd>
 | 
| 
 | 
   769 <div class="OptionsBox">
 | 
| 
 | 
   770     $NumOfHydrogens = $Atom->GetNumOfHydrogens();</div>
 | 
| 
 | 
   771 <p>Returns total number of hydrogens for an <em>Atom</em> in a molecule including both hydrogen atom
 | 
| 
 | 
   772 neighbors and implicit hydrogens.</p>
 | 
| 
 | 
   773 </dd>
 | 
| 
 | 
   774 <dt><strong><a name="getnumofimplicithydrogens" class="item"><strong>GetNumOfImplicitHydrogens</strong></a></strong></dt>
 | 
| 
 | 
   775 <dd>
 | 
| 
 | 
   776 <div class="OptionsBox">
 | 
| 
 | 
   777     $NumOfImplicitHydrogens = $Atom->GetNumOfImplicitHydrogens();</div>
 | 
| 
 | 
   778 <p>Returns number of implicit hydrogens for an <em>Atom</em> in a molecule. This value either
 | 
| 
 | 
   779 corresponds to explicitly set <em>ImplicitHydrogens</em> atom property or calculated as the
 | 
| 
 | 
   780 difference between the value of potential total valence and sum of bond orders to
 | 
| 
 | 
   781 both hydrogen and non-hydrogen atom neighbors.</p>
 | 
| 
 | 
   782 </dd>
 | 
| 
 | 
   783 <dt><strong><a name="getnumofneighbors" class="item"><strong>GetNumOfNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   784 <dd>
 | 
| 
 | 
   785 <div class="OptionsBox">
 | 
| 
 | 
   786     $NumOfNeighbors = $Atom->GetNumOfNeighbors();</div>
 | 
| 
 | 
   787 <p>Returns number atom neighbors for an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   788 </dd>
 | 
| 
 | 
   789 <dt><strong><a name="getnumofnonhydrogenatomneighbors" class="item"><strong>GetNumOfNonHydrogenAtomNeighbors</strong></a></strong></dt>
 | 
| 
 | 
   790 <dd>
 | 
| 
 | 
   791 <div class="OptionsBox">
 | 
| 
 | 
   792     $NumNeighbors = $This->GetNumOfNonHydrogenAtomNeighbors();</div>
 | 
| 
 | 
   793 <p>Returns number non-hydrogens atom neighbors for an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   794 </dd>
 | 
| 
 | 
   795 <dt><strong><a name="getnumofrings" class="item"><strong>GetNumOfRings</strong></a></strong></dt>
 | 
| 
 | 
   796 <dd>
 | 
| 
 | 
   797 <div class="OptionsBox">
 | 
| 
 | 
   798     $NumOfRings = $Atom->GetNumOfRings();</div>
 | 
| 
 | 
   799 <p>Returns number of rings containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   800 </dd>
 | 
| 
 | 
   801 <dt><strong><a name="getnumofringswithevensize" class="item"><strong>GetNumOfRingsWithEvenSize</strong></a></strong></dt>
 | 
| 
 | 
   802 <dd>
 | 
| 
 | 
   803 <div class="OptionsBox">
 | 
| 
 | 
   804     $NumOfRings = $Atom->GetNumOfRingsWithEvenSize();</div>
 | 
| 
 | 
   805 <p>Returns number of rings with even size containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   806 </dd>
 | 
| 
 | 
   807 <dt><strong><a name="getnumofringswithoddsize" class="item"><strong>GetNumOfRingsWithOddSize</strong></a></strong></dt>
 | 
| 
 | 
   808 <dd>
 | 
| 
 | 
   809 <div class="OptionsBox">
 | 
| 
 | 
   810     $NumOfRings = $Atom->GetNumOfRingsWithOddSize();</div>
 | 
| 
 | 
   811 <p>Returns number of rings with odd size containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   812 </dd>
 | 
| 
 | 
   813 <dt><strong><a name="getnumofringswithsize" class="item"><strong>GetNumOfRingsWithSize</strong></a></strong></dt>
 | 
| 
 | 
   814 <dd>
 | 
| 
 | 
   815 <div class="OptionsBox">
 | 
| 
 | 
   816     $NumOfRings = $Atom->GetNumOfRingsWithSize($RingSize);</div>
 | 
| 
 | 
   817 <p>Returns number of rings with specific <em>RingSize</em> containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   818 </dd>
 | 
| 
 | 
   819 <dt><strong><a name="getnumofringswithsizegreaterthan" class="item"><strong>GetNumOfRingsWithSizeGreaterThan</strong></a></strong></dt>
 | 
| 
 | 
   820 <dd>
 | 
| 
 | 
   821 <div class="OptionsBox">
 | 
| 
 | 
   822     $NumOfRings = $Atom->GetNumOfRingsWithSizeGreaterThan($RingSize);</div>
 | 
| 
 | 
   823 <p>Returns number of rings with size greater than specific <em>RingSize</em> containing <em>Atom</em>
 | 
| 
 | 
   824 in a molecule.</p>
 | 
| 
 | 
   825 </dd>
 | 
| 
 | 
   826 <dt><strong><a name="getnumofringswithsizelessthan" class="item"><strong>GetNumOfRingsWithSizeLessThan</strong></a></strong></dt>
 | 
| 
 | 
   827 <dd>
 | 
| 
 | 
   828 <div class="OptionsBox">
 | 
| 
 | 
   829     $NumOfRings = $Atom->GetNumOfRingsWithSizeLessThan($RingSize);</div>
 | 
| 
 | 
   830 <p>Returns number of rings with size less than specific <em>RingSize</em> containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   831 </dd>
 | 
| 
 | 
   832 <dt><strong><a name="getnumofsigmaandpibondstoheavyatoms" class="item"><strong>GetNumOfSigmaAndPiBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   833 <dd>
 | 
| 
 | 
   834 <div class="OptionsBox">
 | 
| 
 | 
   835     ($NumOfSigmaBonds, $NumOfPiBonds) = $Atom->
 | 
| 
 | 
   836                               GetNumOfSigmaAndPiBondsToHeavyAtoms();</div>
 | 
| 
 | 
   837 <p>Get number of sigma and pi bonds from an <em>Atom</em> to all other non-hydrogen
 | 
| 
 | 
   838 atoms in a molecule.</p>
 | 
| 
 | 
   839 <p>Sigma and pi bonds are counted using the following methodology: a single bond
 | 
| 
 | 
   840 correspond to one sigma bond; a double bond contributes one to sigma bond count
 | 
| 
 | 
   841 and one to pi bond count; a triple bond contributes one to sigma bond count and
 | 
| 
 | 
   842 two to pi bond count.</p>
 | 
| 
 | 
   843 </dd>
 | 
| 
 | 
   844 <dt><strong><a name="getnumofsigmaandpibondstononhydrogenatoms" class="item"><strong>GetNumOfSigmaAndPiBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   845 <dd>
 | 
| 
 | 
   846 <div class="OptionsBox">
 | 
| 
 | 
   847     ($NumOfSigmaBonds, $NumOfPiBonds) = $Atom->
 | 
| 
 | 
   848                               GetNumOfSigmaAndPiBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   849 <p>Get number of sigma and pi bonds from an <em>Atom</em> to all other non-hydrogen
 | 
| 
 | 
   850 atoms in a molecule.</p>
 | 
| 
 | 
   851 <p>Sigma and pi bonds are counted using the following methodology: a single bond
 | 
| 
 | 
   852 correspond to one sigma bond; a double bond contributes one to sigma bond count
 | 
| 
 | 
   853 and one to pi bond count; a triple bond contributes one to sigma bond count and
 | 
| 
 | 
   854 two to pi bond count.</p>
 | 
| 
 | 
   855 </dd>
 | 
| 
 | 
   856 <dt><strong><a name="getnumofsinglebondstononhydrogenatoms" class="item"><strong>GetNumOfSingleBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   857 <dd>
 | 
| 
 | 
   858 <div class="OptionsBox">
 | 
| 
 | 
   859     $NumOfSingleBonds =$Atom->GetNumOfSingleBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   860 <p>Returns number of single bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   861 atoms in a molecule.</p>
 | 
| 
 | 
   862 </dd>
 | 
| 
 | 
   863 <dt><strong><a name="getnumofsinglebondstoheavyatoms" class="item"><strong>GetNumOfSingleBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   864 <dd>
 | 
| 
 | 
   865 <div class="OptionsBox">
 | 
| 
 | 
   866     $NumOfSingleBonds = $Atom->GetNumOfSingleBondsToHeavyAtoms();</div>
 | 
| 
 | 
   867 <p>Returns number of single bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   868 atoms in a molecule.</p>
 | 
| 
 | 
   869 </dd>
 | 
| 
 | 
   870 <dt><strong><a name="getnumoftriplebondstononhydrogenatoms" class="item"><strong>GetNumOfTripleBondsToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   871 <dd>
 | 
| 
 | 
   872 <div class="OptionsBox">
 | 
| 
 | 
   873     $NumOfTripleBonds =$Atom->GetNumOfTripleBondsToNonHydrogenAtoms();</div>
 | 
| 
 | 
   874 <p>Returns number of triple bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   875 atoms in a molecule.</p>
 | 
| 
 | 
   876 </dd>
 | 
| 
 | 
   877 <dt><strong><a name="getnumoftriplebondstoheavyatoms" class="item"><strong>GetNumOfTripleBondsToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   878 <dd>
 | 
| 
 | 
   879 <div class="OptionsBox">
 | 
| 
 | 
   880     $NumOfTripleBonds = $Atom->GetNumOfTripleBondsToHeavyAtoms();</div>
 | 
| 
 | 
   881 <p>Returns number of triple bonds from an <em>Atom</em> to other heavy atoms or non-hydrogen
 | 
| 
 | 
   882 atoms in a molecule.</p>
 | 
| 
 | 
   883 </dd>
 | 
| 
 | 
   884 <dt><strong><a name="getperiodnumber" class="item"><strong>GetPeriodNumber</strong></a></strong></dt>
 | 
| 
 | 
   885 <dd>
 | 
| 
 | 
   886 <div class="OptionsBox">
 | 
| 
 | 
   887     $PeriodNumber = $Atom->GetPeriodNumber();</div>
 | 
| 
 | 
   888 <p>Returns periodic table period number for an <em>Atom</em> in a molecule with a valid atomic number .</p>
 | 
| 
 | 
   889 </dd>
 | 
| 
 | 
   890 <dt><strong><a name="getrings" class="item"><strong>GetRings</strong></a></strong></dt>
 | 
| 
 | 
   891 <dd>
 | 
| 
 | 
   892 <div class="OptionsBox">
 | 
| 
 | 
   893     @Rings = $Aotm->GetRings();</div>
 | 
| 
 | 
   894 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings containing
 | 
| 
 | 
   895 <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   896 </dd>
 | 
| 
 | 
   897 <dt><strong><a name="getringswithevensize" class="item"><strong>GetRingsWithEvenSize</strong></a></strong></dt>
 | 
| 
 | 
   898 <dd>
 | 
| 
 | 
   899 <div class="OptionsBox">
 | 
| 
 | 
   900     @Rings = $Aotm->GetRingsWithEvenSize();</div>
 | 
| 
 | 
   901 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with even size
 | 
| 
 | 
   902 containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   903 </dd>
 | 
| 
 | 
   904 <dt><strong><a name="getringswithoddsize" class="item"><strong>GetRingsWithOddSize</strong></a></strong></dt>
 | 
| 
 | 
   905 <dd>
 | 
| 
 | 
   906 <div class="OptionsBox">
 | 
| 
 | 
   907     @Rings = $Aotm->GetRingsWithOddSize();</div>
 | 
| 
 | 
   908 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with odd size
 | 
| 
 | 
   909 containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   910 </dd>
 | 
| 
 | 
   911 <dt><strong><a name="getringswithsize" class="item"><strong>GetRingsWithSize</strong></a></strong></dt>
 | 
| 
 | 
   912 <dd>
 | 
| 
 | 
   913 <div class="OptionsBox">
 | 
| 
 | 
   914     @Rings = $Aotm->GetRingsWithSize($RingSize);</div>
 | 
| 
 | 
   915 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with specific
 | 
| 
 | 
   916 <em>RingSize </em>containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   917 </dd>
 | 
| 
 | 
   918 <dt><strong><a name="getringswithsizegreaterthan" class="item"><strong>GetRingsWithSizeGreaterThan</strong></a></strong></dt>
 | 
| 
 | 
   919 <dd>
 | 
| 
 | 
   920 <div class="OptionsBox">
 | 
| 
 | 
   921     @Rings = $Aotm->GetRingsWithSizeGreaterThan($RingSize);</div>
 | 
| 
 | 
   922 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size
 | 
| 
 | 
   923 greater than specific <em>RingSize </em>containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   924 </dd>
 | 
| 
 | 
   925 <dt><strong><a name="getringswithsizelessthan" class="item"><strong>GetRingsWithSizeLessThan</strong></a></strong></dt>
 | 
| 
 | 
   926 <dd>
 | 
| 
 | 
   927 <div class="OptionsBox">
 | 
| 
 | 
   928     @Rings = $Aotm->GetRingsWithSizeLessThan($RingSize);</div>
 | 
| 
 | 
   929 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size
 | 
| 
 | 
   930 less than specific <em>RingSize </em>containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   931 </dd>
 | 
| 
 | 
   932 <dt><strong><a name="getsizeoflargestring" class="item"><strong>GetSizeOfLargestRing</strong></a></strong></dt>
 | 
| 
 | 
   933 <dd>
 | 
| 
 | 
   934 <div class="OptionsBox">
 | 
| 
 | 
   935     $Size = $Atom->GetSizeOfLargestRing();</div>
 | 
| 
 | 
   936 <p>Returns size of the largest ring containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   937 </dd>
 | 
| 
 | 
   938 <dt><strong><a name="getsizeofsmallestring" class="item"><strong>GetSizeOfSmallestRing</strong></a></strong></dt>
 | 
| 
 | 
   939 <dd>
 | 
| 
 | 
   940 <div class="OptionsBox">
 | 
| 
 | 
   941     $Size = $Atom->GetSizeOfSmallestRing();</div>
 | 
| 
 | 
   942 <p>Returns size of the smallest ring containing <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   943 </dd>
 | 
| 
 | 
   944 <dt><strong><a name="getsmallestring" class="item"><strong>GetSmallestRing</strong></a></strong></dt>
 | 
| 
 | 
   945 <dd>
 | 
| 
 | 
   946 <div class="OptionsBox">
 | 
| 
 | 
   947     @RingAtoms = $Atom->GetSmallestRing();</div>
 | 
| 
 | 
   948 <p>Returns an array of ring <em>Atom</em> objects corresponding to the largest ring containing <em>Atom</em>
 | 
| 
 | 
   949 in a molecule.</p>
 | 
| 
 | 
   950 </dd>
 | 
| 
 | 
   951 <dt><strong><a name="getspinmultiplicity" class="item"><strong>GetSpinMultiplicity</strong></a></strong></dt>
 | 
| 
 | 
   952 <dd>
 | 
| 
 | 
   953 <div class="OptionsBox">
 | 
| 
 | 
   954     $SpinMultiplicity = $Atom->GetSpinMultiplicity();</div>
 | 
| 
 | 
   955 <p>Returns spin multiplicity of an <em>Atom</em> corresponding to one of these three
 | 
| 
 | 
   956 values: explicitly set <strong>SpinMultiplicity</strong> property value; calculated from
 | 
| 
 | 
   957 <strong>FreeRadicalElectrons</strong> property; value of 0.</p>
 | 
| 
 | 
   958 <p>The <strong>SpinMultiplicity</strong> is calculate from <em>FreeRadicalElectrons</em> property as
 | 
| 
 | 
   959 follows:</p>
 | 
| 
 | 
   960 <div class="OptionsBox">
 | 
| 
 | 
   961     FreeRadicalElectrons: 1; SpinMultiplicity: 2
 | 
| 
 | 
   962 <br/>    FreeRadicalElectrons: 2; SpinMultiplicity: 1
 | 
| 
 | 
   963 <br/>    FreeRadicalElectrons: other; SpinMultiplicity: 0</div>
 | 
| 
 | 
   964 </dd>
 | 
| 
 | 
   965 <dt><strong><a name="getsumofbondorders" class="item"><strong>GetSumOfBondOrders</strong></a></strong></dt>
 | 
| 
 | 
   966 <dd>
 | 
| 
 | 
   967 <div class="OptionsBox">
 | 
| 
 | 
   968     $SumBondOrders = $Atom->GetSumOfBondOrders();</div>
 | 
| 
 | 
   969 <p>Returns sum of bond orders corresponding to all atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   970 </dd>
 | 
| 
 | 
   971 <dt><strong><a name="getsumofbondorderstoheavyatoms" class="item"><strong>GetSumOfBondOrdersToHeavyAtoms</strong></a></strong></dt>
 | 
| 
 | 
   972 <dd>
 | 
| 
 | 
   973 <div class="OptionsBox">
 | 
| 
 | 
   974     $SumBondOrders = $Atom->GetSumOfBondOrdersToHeavyAtoms();</div>
 | 
| 
 | 
   975 <p>Returns sum of bond orders corresponding to all heavy atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   976 </dd>
 | 
| 
 | 
   977 <dt><strong><a name="getsumofbondorderstohydrogenatoms" class="item"><strong>GetSumOfBondOrdersToHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   978 <dd>
 | 
| 
 | 
   979 <div class="OptionsBox">
 | 
| 
 | 
   980     $SumBondOrders = $Atom->GetSumOfBondOrdersToHydrogenAtoms();</div>
 | 
| 
 | 
   981 <p>Returns sum of bond orders corresponding to all hydrogen atoms bonded to an <em>Atom</em> in a molecule.</p>
 | 
| 
 | 
   982 </dd>
 | 
| 
 | 
   983 <dt><strong><a name="getsumofbondorderstononhydrogenatoms" class="item"><strong>GetSumOfBondOrdersToNonHydrogenAtoms</strong></a></strong></dt>
 | 
| 
 | 
   984 <dd>
 | 
| 
 | 
   985 <div class="OptionsBox">
 | 
| 
 | 
   986     $SumBondOrders = $Atom->GetSumOfBondOrdersToNonHydrogenAtoms();</div>
 | 
| 
 | 
   987 <p>Returns sum of bond orders corresponding to all non-hydrogen atoms bonded to an <em>Atom</em>
 | 
| 
 | 
   988 in a molecule.</p>
 | 
| 
 | 
   989 </dd>
 | 
| 
 | 
   990 <dt><strong><a name="getvalence" class="item"><strong>GetValence</strong></a></strong></dt>
 | 
| 
 | 
   991 <dd>
 | 
| 
 | 
   992 <div class="OptionsBox">
 | 
| 
 | 
   993     $Valence = $Atom->GetValence();</div>
 | 
| 
 | 
   994 <p>Returns valence of an <em>Atom</em> in a molecule. Valence corresponds to number of electrons used
 | 
| 
 | 
   995 by an atom in bonding:</p>
 | 
| 
 | 
   996 <div class="OptionsBox">
 | 
| 
 | 
   997     Valence = ValenceElectrons - ValenceFreeElectrons = BondingElectrons</div>
 | 
| 
 | 
   998 <p>Single, double and triple bonds with bond orders of 1, 2, and 3 correspond to
 | 
| 
 | 
   999 contribution of 1, 2, and 3 bonding electrons. So:</p>
 | 
| 
 | 
  1000 <div class="OptionsBox">
 | 
| 
 | 
  1001     Valence = SumOfBondOrders + NumOfMissingHydrogens + FormalCharge</div>
 | 
| 
 | 
  1002 <p>where positive and negative values of FormalCharge increase and decrease the number of bonding
 | 
| 
 | 
  1003 electrons, respectively.</p>
 | 
| 
 | 
  1004 <p>The current release of MayaChemTools supports the following three valence models, which
 | 
| 
 | 
  1005 are used during calculation of implicit hydrogens: MDLValenceModel, DaylightValenceModel,
 | 
| 
 | 
  1006 InternalValenceModel or MayaChemToolsValenceModel.</p>
 | 
| 
 | 
  1007 <p>Notes:</p>
 | 
| 
 | 
  1008 <div class="OptionsBox">
 | 
| 
 | 
  1009     . Missing hydrogens are included in the valence.
 | 
| 
 | 
  1010 <br/>    . For neutral molecules, valence and sum of bond orders are equal.
 | 
| 
 | 
  1011 <br/>    . For molecules containing only single bonds, SumOfBondOrders and
 | 
| 
 | 
  1012       NumOfBonds are equal.
 | 
| 
 | 
  1013 <br/>    . Free radical electrons lead to the decrease in valence. For atoms with
 | 
| 
 | 
  1014       explicit assignment of SpinMultiplicity property values corresponding to
 | 
| 
 | 
  1015       Singlet (two unparied electrons corresponding to one spin state), Doublet
 | 
| 
 | 
  1016       (free radical; an unpaired electron corresponding to two spin states),
 | 
| 
 | 
  1017       and Triplet (two unparied electrons corresponding to three spin states;
 | 
| 
 | 
  1018       divalent carbon atoms (carbenes)), FreeRadicalElectrons are calculated as follows:</div>
 | 
| 
 | 
  1019 <div class="OptionsBox">
 | 
| 
 | 
  1020           SpinMultiplicity: Doublet(2); FreeRadicalElectrons: 1 (one valence
 | 
| 
 | 
  1021 <br/>                  electron not available for bonding)
 | 
| 
 | 
  1022 <br/>          SpinMultiplicity: Singlet(1)/Triplet(3); FreeRadicalElectrons: 2 (two
 | 
| 
 | 
  1023 <br/>                  valence electrons not available for bonding)</div>
 | 
| 
 | 
  1024 </dd>
 | 
| 
 | 
  1025 <dt><strong><a name="getvalenceelectrons" class="item"><strong>GetValenceElectrons</strong></a></strong></dt>
 | 
| 
 | 
  1026 <dd>
 | 
| 
 | 
  1027 <div class="OptionsBox">
 | 
| 
 | 
  1028     $ValenceElectrons = $Atom->GetValenceElectrons();</div>
 | 
| 
 | 
  1029 <p>Returns valence electrons for an <strong>Atom</strong> which corresponds to either explicity set <em>ValenceElectrons</em>
 | 
| 
 | 
  1030 atom property or valence electrons for the corresponding element in the periodic table available by
 | 
| 
 | 
  1031 <strong>PeriodicTable</strong> module.</p>
 | 
| 
 | 
  1032 </dd>
 | 
| 
 | 
  1033 <dt><strong><a name="getvalencefreeelectrons" class="item"><strong>GetValenceFreeElectrons</strong></a></strong></dt>
 | 
| 
 | 
  1034 <dd>
 | 
| 
 | 
  1035 <div class="OptionsBox">
 | 
| 
 | 
  1036     $ValenceFreeElectrons = $Atom->GetValenceFreeElectrons();
 | 
| 
 | 
  1037 <br/>    $ValenceFreeElectrons = $Atom->GetValenceFreeElectrons(
 | 
| 
 | 
  1038                             $ExcludeFreeRadicalElectrons);</div>
 | 
| 
 | 
  1039 <p>Returns valence frees electrons for an <strong>Atom</strong> in a molecule. It corresponds to:</p>
 | 
| 
 | 
  1040 <div class="OptionsBox">
 | 
| 
 | 
  1041     ValenceElectrons - Valence
 | 
| 
 | 
  1042 <br/>    or
 | 
| 
 | 
  1043 <br/>    ValenceElectrons - NumOfMissingHydrogens - SumOfBondOrders - FormalCharge</div>
 | 
| 
 | 
  1044 <p>Free radical electrons are included in the valence free electrons count by default.</p>
 | 
| 
 | 
  1045 <p>Examples:</p>
 | 
| 
 | 
  1046 <div class="OptionsBox">
 | 
| 
 | 
  1047     NH3: ValenceFreeElectrons = 5 - 3 = 5 - 3 - 0 - 0 = 2
 | 
| 
 | 
  1048 <br/>    NH2: ValenceFreeElectrons = 5 - 3 = 5 - 2 - 1 - 0 = 2
 | 
| 
 | 
  1049 <br/>    NH4+; ValenceFreeElectrons = 5 - 5 = 5 - 4 - 0 - 1 = 0
 | 
| 
 | 
  1050 <br/>    NH3+; ValenceFreeElectrons = 5 - 5 = 5 - 3 - 1 - 1 = 0
 | 
| 
 | 
  1051 <br/>    C(=O)O- : ValenceFreeElectrons on O- = 6 - 0 = 6 - 1 - 0 - (-1) = 6
 | 
| 
 | 
  1052 <br/>    C(=O)O- : ValenceFreeElectrons on =O = 6 - 2 = 6 - 2 - 0 - 0 = 4</div>
 | 
| 
 | 
  1053 </dd>
 | 
| 
 | 
  1054 <dt><strong><a name="getx" class="item"><strong>GetX</strong></a></strong></dt>
 | 
| 
 | 
  1055 <dd>
 | 
| 
 | 
  1056 <div class="OptionsBox">
 | 
| 
 | 
  1057     $X = $Atom->GetX();</div>
 | 
| 
 | 
  1058 <p>Returns value of X-coordinate for an <em>Atom</em>.</p>
 | 
| 
 | 
  1059 </dd>
 | 
| 
 | 
  1060 <dt><strong><a name="getxyz" class="item"><strong>GetXYZ</strong></a></strong></dt>
 | 
| 
 | 
  1061 <dd>
 | 
| 
 | 
  1062 <div class="OptionsBox">
 | 
| 
 | 
  1063     @XYZ = $Atom->GetXYZ();
 | 
| 
 | 
  1064 <br/>    $XYZRef = $Atom->GetXYZ();</div>
 | 
| 
 | 
  1065 <p>Returns an array or a reference to an array containing values for <em>Atom</em> coordinates.</p>
 | 
| 
 | 
  1066 </dd>
 | 
| 
 | 
  1067 <dt><strong><a name="getxyzvector" class="item"><strong>GetXYZVector</strong></a></strong></dt>
 | 
| 
 | 
  1068 <dd>
 | 
| 
 | 
  1069 <div class="OptionsBox">
 | 
| 
 | 
  1070     $XYZVector = $Atom->GetXYZVector();</div>
 | 
| 
 | 
  1071 <p>Returns a <em>Vector</em> object containing values for <em>Atom</em> coordinates</p>
 | 
| 
 | 
  1072 </dd>
 | 
| 
 | 
  1073 <dt><strong><a name="gety" class="item"><strong>GetY</strong></a></strong></dt>
 | 
| 
 | 
  1074 <dd>
 | 
| 
 | 
  1075 <div class="OptionsBox">
 | 
| 
 | 
  1076     $Y = $Atom->GetY();</div>
 | 
| 
 | 
  1077 <p>Returns value of Y-coordinate for an <em>Atom</em>.</p>
 | 
| 
 | 
  1078 </dd>
 | 
| 
 | 
  1079 <dt><strong><a name="getz" class="item"><strong>GetZ</strong></a></strong></dt>
 | 
| 
 | 
  1080 <dd>
 | 
| 
 | 
  1081 <div class="OptionsBox">
 | 
| 
 | 
  1082     $Z = $Atom->GetZ();</div>
 | 
| 
 | 
  1083 <p>Returns value of Z-coordinate for an <em>Atom</em>.</p>
 | 
| 
 | 
  1084 </dd>
 | 
| 
 | 
  1085 <dt><strong><a name="isamidecarbon" class="item"><strong>IsAmideCarbon</strong></a></strong></dt>
 | 
| 
 | 
  1086 <dd>
 | 
| 
 | 
  1087 <div class="OptionsBox">
 | 
| 
 | 
  1088     $Status = $Atom->IsAmideCarbon();</div>
 | 
| 
 | 
  1089 <p>Returns 1 or 0 based on whether it's amide carbon <em>Atom</em>.</p>
 | 
| 
 | 
  1090 <p>An amide group is defineds as:</p>
 | 
| 
 | 
  1091 <div class="OptionsBox">
 | 
| 
 | 
  1092     R-C(=O)-N(-R')-R''</div>
 | 
| 
 | 
  1093 <p>where:</p>
 | 
| 
 | 
  1094 <div class="OptionsBox">
 | 
| 
 | 
  1095     o R = Hydrogen or groups of atoms attached through carbon
 | 
| 
 | 
  1096 <br/>    o R' = Hydrogens or groups of atoms attached through carbon or
 | 
| 
 | 
  1097            hetro atoms
 | 
| 
 | 
  1098 <br/>    o R'' = Hydrogens or groups of atoms attached through carbon or
 | 
| 
 | 
  1099            hetro atoms</div>
 | 
| 
 | 
  1100 </dd>
 | 
| 
 | 
  1101 <dt><strong><a name="isamidenitrogen" class="item"><strong>IsAmideNitrogen</strong></a></strong></dt>
 | 
| 
 | 
  1102 <dd>
 | 
| 
 | 
  1103 <div class="OptionsBox">
 | 
| 
 | 
  1104     $Status = $Atom->IsAmideNitrogen();</div>
 | 
| 
 | 
  1105 <p>Returns 1 or 0 based on whether it's amide nitrogen <em>Atom</em>.</p>
 | 
| 
 | 
  1106 </dd>
 | 
| 
 | 
  1107 <dt><strong><a name="isaromatic" class="item"><strong>IsAromatic</strong></a></strong></dt>
 | 
| 
 | 
  1108 <dd>
 | 
| 
 | 
  1109 <div class="OptionsBox">
 | 
| 
 | 
  1110     $Status = $Atom->IsAromatic();</div>
 | 
| 
 | 
  1111 <p>Returns 1 or 0 based on whether it's an aromatic <em>Atom</em>.</p>
 | 
| 
 | 
  1112 </dd>
 | 
| 
 | 
  1113 <dt><strong><a name="isarsenic" class="item"><strong>IsArsenic</strong></a></strong></dt>
 | 
| 
 | 
  1114 <dd>
 | 
| 
 | 
  1115 <div class="OptionsBox">
 | 
| 
 | 
  1116     $Status = $Atom->IsArsenic();</div>
 | 
| 
 | 
  1117 <p>Returns 1 or 0 based on whether it's an arsenic <em>Atom</em>.</p>
 | 
| 
 | 
  1118 </dd>
 | 
| 
 | 
  1119 <dt><strong><a name="isbondedtoatom" class="item"><strong>IsBondedToAtom</strong></a></strong></dt>
 | 
| 
 | 
  1120 <dd>
 | 
| 
 | 
  1121 <div class="OptionsBox">
 | 
| 
 | 
  1122     $Status = $Atom->IsBondedToAtom($OtherAtom);</div>
 | 
| 
 | 
  1123 <p>Returns 1 or 0 based on whether <em>Atom</em> is bonded to <em>OtherAtom</em>.</p>
 | 
| 
 | 
  1124 </dd>
 | 
| 
 | 
  1125 <dt><strong><a name="isbromine" class="item"><strong>IsBromine</strong></a></strong></dt>
 | 
| 
 | 
  1126 <dd>
 | 
| 
 | 
  1127 <div class="OptionsBox">
 | 
| 
 | 
  1128     $Status = $Atom->IsBromine();</div>
 | 
| 
 | 
  1129 <p>Returns 1 or 0 based on whether it's a bromine <em>Atom</em>.</p>
 | 
| 
 | 
  1130 </dd>
 | 
| 
 | 
  1131 <dt><strong><a name="iscarbon" class="item"><strong>IsCarbon</strong></a></strong></dt>
 | 
| 
 | 
  1132 <dd>
 | 
| 
 | 
  1133 <div class="OptionsBox">
 | 
| 
 | 
  1134     $Status = $Atom->IsCarbon();</div>
 | 
| 
 | 
  1135 <p>Returns 1 or 0 based on whether it's a carbon <em>Atom</em>.</p>
 | 
| 
 | 
  1136 </dd>
 | 
| 
 | 
  1137 <dt><strong><a name="iscarboxylcarbon" class="item"><strong>IsCarboxylCarbon</strong></a></strong></dt>
 | 
| 
 | 
  1138 <dd>
 | 
| 
 | 
  1139 <div class="OptionsBox">
 | 
| 
 | 
  1140     $Status = $Atom->IsCarboxylCarbon();</div>
 | 
| 
 | 
  1141 <p>Returns 1 or 0 based on whether it's a carboxyl carbon atom in carboxyl group:
 | 
| 
 | 
  1142 R-C(=O)-OH.</p>
 | 
| 
 | 
  1143 </dd>
 | 
| 
 | 
  1144 <dt><strong><a name="iscarboxyloxygen" class="item"><strong>IsCarboxylOxygen</strong></a></strong></dt>
 | 
| 
 | 
  1145 <dd>
 | 
| 
 | 
  1146 <div class="OptionsBox">
 | 
| 
 | 
  1147     $Status = $Atom->IsCarboxylOxygen();</div>
 | 
| 
 | 
  1148 <p>Returns 1 or 0 based on whether it's a carboxyl oxygen atom in carboxyl group:
 | 
| 
 | 
  1149 R-C(=O)-OH.</p>
 | 
| 
 | 
  1150 </dd>
 | 
| 
 | 
  1151 <dt><strong><a name="iscarboxylatecarbon" class="item"><strong>IsCarboxylateCarbon</strong></a></strong></dt>
 | 
| 
 | 
  1152 <dd>
 | 
| 
 | 
  1153 <div class="OptionsBox">
 | 
| 
 | 
  1154     $Status = $Atom->IsCarboxylateCarbon();</div>
 | 
| 
 | 
  1155 <p>Returns 1 or 0 based on whether it's a carboxylate carbon atom in carboxyl group:
 | 
| 
 | 
  1156 R-C(=O)-O-.</p>
 | 
| 
 | 
  1157 </dd>
 | 
| 
 | 
  1158 <dt><strong><a name="iscarboxylateoxygen" class="item"><strong>IsCarboxylateOxygen</strong></a></strong></dt>
 | 
| 
 | 
  1159 <dd>
 | 
| 
 | 
  1160 <div class="OptionsBox">
 | 
| 
 | 
  1161     $Status = $Atom->IsCarboxylateOxygen();</div>
 | 
| 
 | 
  1162 <p>Returns 1 or 0 based on whether it's a carboxylate oxygen atom in carboxyl group:
 | 
| 
 | 
  1163 R-C(=O)-O-.</p>
 | 
| 
 | 
  1164 </dd>
 | 
| 
 | 
  1165 <dt><strong><a name="ischlorine" class="item"><strong>IsChlorine</strong></a></strong></dt>
 | 
| 
 | 
  1166 <dd>
 | 
| 
 | 
  1167 <div class="OptionsBox">
 | 
| 
 | 
  1168     $Status = $Atom->IsChlorine();</div>
 | 
| 
 | 
  1169 <p>Returns 1 or 0 based on whether it's a chlorine <em>Atom</em>.</p>
 | 
| 
 | 
  1170 </dd>
 | 
| 
 | 
  1171 <dt><strong><a name="isfluorine" class="item"><strong>IsFluorine</strong></a></strong></dt>
 | 
| 
 | 
  1172 <dd>
 | 
| 
 | 
  1173 <div class="OptionsBox">
 | 
| 
 | 
  1174     $Status = $Atom->IsFluorine();</div>
 | 
| 
 | 
  1175 <p>Returns 1 or 0 based on whether it's a fluorine <em>Atom</em>.</p>
 | 
| 
 | 
  1176 </dd>
 | 
| 
 | 
  1177 <dt><strong><a name="isfunctionalclasstype" class="item"><strong>IsFunctionalClassType</strong></a></strong></dt>
 | 
| 
 | 
  1178 <dd>
 | 
| 
 | 
  1179 <div class="OptionsBox">
 | 
| 
 | 
  1180     $Status =$Atom->IsFunctionalClassType($Type);</div>
 | 
| 
 | 
  1181 <p>Returns 1 or 0 based on whether it's a specified functional class <em>Type</em>.</p>
 | 
| 
 | 
  1182 <p>The current release of MayaChemTools supports following abbreviations and descriptive
 | 
| 
 | 
  1183 names for <em>FunctionalClassType</em>:</p>
 | 
| 
 | 
  1184 <div class="OptionsBox">
 | 
| 
 | 
  1185     HBD: HydrogenBondDonor
 | 
| 
 | 
  1186 <br/>    HBA: HydrogenBondAcceptor
 | 
| 
 | 
  1187 <br/>    PI :  PositivelyIonizable
 | 
| 
 | 
  1188 <br/>    NI : NegativelyIonizable
 | 
| 
 | 
  1189 <br/>    Ar : Aromatic
 | 
| 
 | 
  1190 <br/>    Hal : Halogen
 | 
| 
 | 
  1191 <br/>    H : Hydrophobic
 | 
| 
 | 
  1192 <br/>    RA : RingAtom
 | 
| 
 | 
  1193 <br/>    CA : ChainAtom</div>
 | 
| 
 | 
  1194 <p>The following definitions are used to determine functional class types: [ Ref 60-61, Ref 65-66 ]:</p>
 | 
| 
 | 
  1195 <div class="OptionsBox">
 | 
| 
 | 
  1196     HydrogenBondDonor: NH, NH2, OH
 | 
| 
 | 
  1197 <br/>    HydrogenBondAcceptor: N[!H], O
 | 
| 
 | 
  1198 <br/>    PositivelyIonizable: +, NH2
 | 
| 
 | 
  1199 <br/>    NegativelyIonizable: -, C(=O)OH, S(=O)OH, P(=O)OH</div>
 | 
| 
 | 
  1200 </dd>
 | 
| 
 | 
  1201 <dt><strong><a name="isguadiniumcarbon" class="item"><strong>IsGuadiniumCarbon</strong></a></strong></dt>
 | 
| 
 | 
  1202 <dd>
 | 
| 
 | 
  1203 <div class="OptionsBox">
 | 
| 
 | 
  1204     $Status = $Atom->IsGuadiniumCarbon();</div>
 | 
| 
 | 
  1205 <p>Returns 1 or 0 based on whether it's a guadinium carbon in guadinium group by
 | 
| 
 | 
  1206 checking its neighbors for a nitrogen in guadinium group.</p>
 | 
| 
 | 
  1207 </dd>
 | 
| 
 | 
  1208 <dt><strong><a name="isguadiniumnitrogen" class="item"><strong>IsGuadiniumNitrogen</strong></a></strong></dt>
 | 
| 
 | 
  1209 <dd>
 | 
| 
 | 
  1210 <div class="OptionsBox">
 | 
| 
 | 
  1211     $Status = $Atom->IsGuadiniumNitrogen();</div>
 | 
| 
 | 
  1212 <p>Returns 1 or 0 based on whether it's a guadinium nitrogen in guadinium group.</p>
 | 
| 
 | 
  1213 <p>A guadinium group is defined as:</p>
 | 
| 
 | 
  1214 <div class="OptionsBox">
 | 
| 
 | 
  1215     R2N-C(=NR)-(NR2) or R2N-C(=NR2+)-(NR2)</div>
 | 
| 
 | 
  1216 <p>where:</p>
 | 
| 
 | 
  1217 <div class="OptionsBox">
 | 
| 
 | 
  1218     o R = Hydrogens or group of atoms attached through carbon
 | 
| 
 | 
  1219 <br/>    o Only one of the three nitrogens has a double bond to carbon
 | 
| 
 | 
  1220       and has optional formal charge allowing it to be neutral or charged state</div>
 | 
| 
 | 
  1221 </dd>
 | 
| 
 | 
  1222 <dt><strong><a name="ishbondacceptor" class="item"><strong>IsHBondAcceptor</strong></a></strong></dt>
 | 
| 
 | 
  1223 <dd>
 | 
| 
 | 
  1224 <div class="OptionsBox">
 | 
| 
 | 
  1225     $Status =$Atom->IsHBondAcceptor();
 | 
| 
 | 
  1226 <br/>    $Status =$Atom->IsHBondAcceptor($HydrogenBondsType);</div>
 | 
| 
 | 
  1227 <p>Returns 1 or 0 based on whether it's a hydrogen bond acceptor <em>Atom</em>.</p>
 | 
| 
 | 
  1228 </dd>
 | 
| 
 | 
  1229 <dt><strong><a name="ishbonddonor" class="item"><strong>IsHBondDonor</strong></a></strong></dt>
 | 
| 
 | 
  1230 <dd>
 | 
| 
 | 
  1231 <div class="OptionsBox">
 | 
| 
 | 
  1232     $Status =$Atom->IsHBondDonor();
 | 
| 
 | 
  1233 <br/>    $Status =$Atom->IsHBondDonor($HydrogenBondsType);</div>
 | 
| 
 | 
  1234 <p>Returns 1 or 0 based on whether it's a hydrogen bond donor <em>Atom</em>.</p>
 | 
| 
 | 
  1235 </dd>
 | 
| 
 | 
  1236 <dt><strong><a name="ishydrogenbondacceptor" class="item"><strong>IsHydrogenBondAcceptor</strong></a></strong></dt>
 | 
| 
 | 
  1237 <dd>
 | 
| 
 | 
  1238 <div class="OptionsBox">
 | 
| 
 | 
  1239     $Status =$Atom->IsHydrogenBondAcceptor();
 | 
| 
 | 
  1240 <br/>    $Status =$Atom->IsHydrogenBondAcceptor($HydrogenBondsType);</div>
 | 
| 
 | 
  1241 <p>Returns 1 or 0 based on whether it's a hydrogen bond acceptor <em>Atom</em>.</p>
 | 
| 
 | 
  1242 </dd>
 | 
| 
 | 
  1243 <dt><strong><a name="ishydrogenbonddonor" class="item"><strong>IsHydrogenBondDonor</strong></a></strong></dt>
 | 
| 
 | 
  1244 <dd>
 | 
| 
 | 
  1245 <div class="OptionsBox">
 | 
| 
 | 
  1246     $Status =$Atom->IsHydrogenBondDonor();
 | 
| 
 | 
  1247 <br/>    $Status =$Atom->IsHydrogenBondDonor($HydrogenBondsType);</div>
 | 
| 
 | 
  1248 <p>Returns 1 or 0 based on whether it's a hydrogen bond donor <em>Atom</em>.</p>
 | 
| 
 | 
  1249 <p>The current release of MayaChemTools supports identification of two types of hydrogen bond
 | 
| 
 | 
  1250 donor and acceptor atoms with these names:</p>
 | 
| 
 | 
  1251 <div class="OptionsBox">
 | 
| 
 | 
  1252     HBondsType1 or HydrogenBondsType1
 | 
| 
 | 
  1253 <br/>    HBondsType2 or HydrogenBondsType2</div>
 | 
| 
 | 
  1254 <p>The names of these hydrogen bond types are rather arbitrary. However, their definitions have
 | 
| 
 | 
  1255 specific meaning and are as follows:</p>
 | 
| 
 | 
  1256 <div class="OptionsBox">
 | 
| 
 | 
  1257     HydrogenBondsType1 [ Ref 60-61, Ref 65-66 ]:</div>
 | 
| 
 | 
  1258 <div class="OptionsBox">
 | 
| 
 | 
  1259             Donor: NH, NH2, OH - Any N and O with available H
 | 
| 
 | 
  1260         Acceptor: N[!H], O - Any N without available H and any O</div>
 | 
| 
 | 
  1261 <div class="OptionsBox">
 | 
| 
 | 
  1262     HydrogenBondsType2 [ Ref 91 ]:</div>
 | 
| 
 | 
  1263 <div class="OptionsBox">
 | 
| 
 | 
  1264             Donor: NH, NH2, OH - N and O with available H
 | 
| 
 | 
  1265         Acceptor: N, O - And N and O</div>
 | 
| 
 | 
  1266 <p>By default, <em>HydrogenBondsType1</em> is used to calculate number hydrogen bond donor
 | 
| 
 | 
  1267 and acceptor atoms. <em>HydrogenBondsType2</em> corresponds to <strong>RuleOf5</strong> definition
 | 
| 
 | 
  1268 of hydrogen bond donors and acceptors.</p>
 | 
| 
 | 
  1269 </dd>
 | 
| 
 | 
  1270 <dt><strong><a name="ishalogen" class="item"><strong>IsHalogen</strong></a></strong></dt>
 | 
| 
 | 
  1271 <dd>
 | 
| 
 | 
  1272 <div class="OptionsBox">
 | 
| 
 | 
  1273     $Status =$Atom->IsHalogen();</div>
 | 
| 
 | 
  1274 <p>Returns 1 or 0 based on whether it's a halogen <em>Atom</em>.</p>
 | 
| 
 | 
  1275 </dd>
 | 
| 
 | 
  1276 <dt><strong><a name="isheteroatom" class="item"><strong>IsHeteroAtom</strong></a></strong></dt>
 | 
| 
 | 
  1277 <dd>
 | 
| 
 | 
  1278 <div class="OptionsBox">
 | 
| 
 | 
  1279     $Status = $Atom->IsHeteroAtom();</div>
 | 
| 
 | 
  1280 <p>Returns 0 or 1 based on whether it's a hetro <em>Atom</em>. Following atoms are considered hetro atoms:
 | 
| 
 | 
  1281 <strong>N, O, F, P, S, Cl, Br, I</strong>.</p>
 | 
| 
 | 
  1282 </dd>
 | 
| 
 | 
  1283 <dt><strong><a name="ishydrogen" class="item"><strong>IsHydrogen</strong></a></strong></dt>
 | 
| 
 | 
  1284 <dd>
 | 
| 
 | 
  1285 <div class="OptionsBox">
 | 
| 
 | 
  1286     $Status = $Atom->IsHydrogen();</div>
 | 
| 
 | 
  1287 <p>Returns 1 or 0 based on whether it's a hydrogen <em>Atom</em>.</p>
 | 
| 
 | 
  1288 </dd>
 | 
| 
 | 
  1289 <dt><strong><a name="ishydrophobic" class="item"><strong>IsHydrophobic</strong></a></strong></dt>
 | 
| 
 | 
  1290 <dd>
 | 
| 
 | 
  1291 <div class="OptionsBox">
 | 
| 
 | 
  1292     $Status =$Atom->IsHydrophobic();</div>
 | 
| 
 | 
  1293 <p>Returns 1 or 0 based on whether it's a hydrophobic <em>Atom</em>.</p>
 | 
| 
 | 
  1294 </dd>
 | 
| 
 | 
  1295 <dt><strong><a name="isinring" class="item"><strong>IsInRing</strong></a></strong></dt>
 | 
| 
 | 
  1296 <dd>
 | 
| 
 | 
  1297 <div class="OptionsBox">
 | 
| 
 | 
  1298     $Status = $Atom->IsInRing();</div>
 | 
| 
 | 
  1299 <p>Returns 1 or 0 based on whether <em>Atom</em> is present in a ring.</p>
 | 
| 
 | 
  1300 </dd>
 | 
| 
 | 
  1301 <dt><strong><a name="isinringofsize" class="item"><strong>IsInRingOfSize</strong></a></strong></dt>
 | 
| 
 | 
  1302 <dd>
 | 
| 
 | 
  1303 <div class="OptionsBox">
 | 
| 
 | 
  1304     $Status = $Atom->IsInRingOfSize($Size);</div>
 | 
| 
 | 
  1305 <p>Returns 1 or 0 based on whether <em>Atom</em> is present in a ring of specific <em>Size</em>.</p>
 | 
| 
 | 
  1306 </dd>
 | 
| 
 | 
  1307 <dt><strong><a name="isiodine" class="item"><strong>IsIodine</strong></a></strong></dt>
 | 
| 
 | 
  1308 <dd>
 | 
| 
 | 
  1309 <div class="OptionsBox">
 | 
| 
 | 
  1310     $Status = $Atom->IsIodine();</div>
 | 
| 
 | 
  1311 <p>Returns 1 or 0 based on whether it's an iodine <em>Atom</em>.</p>
 | 
| 
 | 
  1312 </dd>
 | 
| 
 | 
  1313 <dt><strong><a name="isisotope" class="item"><strong>IsIsotope</strong></a></strong></dt>
 | 
| 
 | 
  1314 <dd>
 | 
| 
 | 
  1315 <div class="OptionsBox">
 | 
| 
 | 
  1316     $Status =$Atom->IsIsotope();</div>
 | 
| 
 | 
  1317 <p>Returns 1 or 0 based on whether it's an isotope <em>Atom</em>.</p>
 | 
| 
 | 
  1318 </dd>
 | 
| 
 | 
  1319 <dt><strong><a name="islipophilic" class="item"><strong>IsLipophilic</strong></a></strong></dt>
 | 
| 
 | 
  1320 <dd>
 | 
| 
 | 
  1321 <div class="OptionsBox">
 | 
| 
 | 
  1322     $Status =$Atom->IsLipophilic();</div>
 | 
| 
 | 
  1323 <p>Returns 1 or 0 based on whether it's a lipophilic <em>Atom</em>.</p>
 | 
| 
 | 
  1324 </dd>
 | 
| 
 | 
  1325 <dt><strong><a name="ismetallic" class="item"><strong>IsMetallic</strong></a></strong></dt>
 | 
| 
 | 
  1326 <dd>
 | 
| 
 | 
  1327 <div class="OptionsBox">
 | 
| 
 | 
  1328     $Status = $Atom->IsMetallic();</div>
 | 
| 
 | 
  1329 <p>Returns 1 or 0 based on whether it's a metallic <em>Atom</em>.</p>
 | 
| 
 | 
  1330 </dd>
 | 
| 
 | 
  1331 <dt><strong><a name="isnegativelyionizable" class="item"><strong>IsNegativelyIonizable</strong></a></strong></dt>
 | 
| 
 | 
  1332 <dd>
 | 
| 
 | 
  1333 <div class="OptionsBox">
 | 
| 
 | 
  1334     $Status =$Atom->IsNegativelyIonizable();</div>
 | 
| 
 | 
  1335 <p>Returns 1 or 0 based on whether it's a negatively ionizable atom <em>Atom</em>.</p>
 | 
| 
 | 
  1336 </dd>
 | 
| 
 | 
  1337 <dt><strong><a name="isnitrogen" class="item"><strong>IsNitrogen</strong></a></strong></dt>
 | 
| 
 | 
  1338 <dd>
 | 
| 
 | 
  1339 <div class="OptionsBox">
 | 
| 
 | 
  1340     $Status = $Atom->IsNitrogen();</div>
 | 
| 
 | 
  1341 <p>Returns 1 or 0 based on whether it's a nitrogen <em>Atom</em>.</p>
 | 
| 
 | 
  1342 </dd>
 | 
| 
 | 
  1343 <dt><strong><a name="isnoncarbonorhydrogen" class="item"><strong>IsNonCarbonOrHydrogen</strong></a></strong></dt>
 | 
| 
 | 
  1344 <dd>
 | 
| 
 | 
  1345 <div class="OptionsBox">
 | 
| 
 | 
  1346     $Status =$Atom->IsNonCarbonOrHydrogen();</div>
 | 
| 
 | 
  1347 <p>Returns 1 or 0 based on whether it's not a carbon or hydrogen <em>Atom</em>.</p>
 | 
| 
 | 
  1348 </dd>
 | 
| 
 | 
  1349 <dt><strong><a name="isnotinring" class="item"><strong>IsNotInRing</strong></a></strong></dt>
 | 
| 
 | 
  1350 <dd>
 | 
| 
 | 
  1351 <div class="OptionsBox">
 | 
| 
 | 
  1352     $Status = $Atom->IsNotInRing();</div>
 | 
| 
 | 
  1353 <p>Returns 1 or 0 based on whether <em>Atom</em> is not present in a ring.</p>
 | 
| 
 | 
  1354 </dd>
 | 
| 
 | 
  1355 <dt><strong><a name="isonlyinonering" class="item"><strong>IsOnlyInOneRing</strong></a></strong></dt>
 | 
| 
 | 
  1356 <dd>
 | 
| 
 | 
  1357 <div class="OptionsBox">
 | 
| 
 | 
  1358     $Status = $Atom->IsOnlyInOneRing();</div>
 | 
| 
 | 
  1359 <p>Returns 1 or 0 based on whether <em>Atom</em> is only present in one ring.</p>
 | 
| 
 | 
  1360 </dd>
 | 
| 
 | 
  1361 <dt><strong><a name="isoxygen" class="item"><strong>IsOxygen</strong></a></strong></dt>
 | 
| 
 | 
  1362 <dd>
 | 
| 
 | 
  1363 <div class="OptionsBox">
 | 
| 
 | 
  1364     $Status = $Atom->IsOxygen();</div>
 | 
| 
 | 
  1365 <p>Returns 0 or 1 based on whether it's an oxygen <em>Atom</em>.</p>
 | 
| 
 | 
  1366 </dd>
 | 
| 
 | 
  1367 <dt><strong><a name="isphosphorus" class="item"><strong>IsPhosphorus</strong></a></strong></dt>
 | 
| 
 | 
  1368 <dd>
 | 
| 
 | 
  1369 <div class="OptionsBox">
 | 
| 
 | 
  1370     $Status = $Atom->IsPhosphorus();</div>
 | 
| 
 | 
  1371 <p>Returns 0 or 1 based on whether it's a phosphorus <em>Atom</em>.</p>
 | 
| 
 | 
  1372 </dd>
 | 
| 
 | 
  1373 <dt><strong><a name="isphosphateoxygen" class="item"><strong>IsPhosphateOxygen</strong></a></strong></dt>
 | 
| 
 | 
  1374 <dd>
 | 
| 
 | 
  1375 <div class="OptionsBox">
 | 
| 
 | 
  1376     $Status = $Atom->IsPhosphateOxygen();</div>
 | 
| 
 | 
  1377 <p>Returns 1 or 0 based on whether it's a phosphate oxygen in phosphate group.</p>
 | 
| 
 | 
  1378 <p>A phosphate group is defined as:</p>
 | 
| 
 | 
  1379 <div class="OptionsBox">
 | 
| 
 | 
  1380     AO-(O=)P(-OA)-OA</div>
 | 
| 
 | 
  1381 <p>Where:</p>
 | 
| 
 | 
  1382 <div class="OptionsBox">
 | 
| 
 | 
  1383    A - Any group of atoms including hydrogens</div>
 | 
| 
 | 
  1384 </dd>
 | 
| 
 | 
  1385 <dt><strong><a name="isphosphatephosphorus" class="item"><strong>IsPhosphatePhosphorus</strong></a></strong></dt>
 | 
| 
 | 
  1386 <dd>
 | 
| 
 | 
  1387 <div class="OptionsBox">
 | 
| 
 | 
  1388     $Status = $Atom->IsPhosphatePhosphorus();</div>
 | 
| 
 | 
  1389 <p>Returns 1 or 0 based on whether it's a phosphate phosphorus in phosphate group.</p>
 | 
| 
 | 
  1390 </dd>
 | 
| 
 | 
  1391 <dt><strong><a name="ispolaratom" class="item"><strong>IsPolarAtom</strong></a></strong></dt>
 | 
| 
 | 
  1392 <dd>
 | 
| 
 | 
  1393 <div class="OptionsBox">
 | 
| 
 | 
  1394     $Status = $Atom->IsPolarAtom();</div>
 | 
| 
 | 
  1395 <p>Returns 0 or 1 based on whether it's a polar <em>Atom</em>. Following atoms are considered polar atoms:
 | 
| 
 | 
  1396 <strong>N, O, P, S</strong>.</p>
 | 
| 
 | 
  1397 </dd>
 | 
| 
 | 
  1398 <dt><strong><a name="ispolarhydrogen" class="item"><strong>IsPolarHydrogen</strong></a></strong></dt>
 | 
| 
 | 
  1399 <dd>
 | 
| 
 | 
  1400 <div class="OptionsBox">
 | 
| 
 | 
  1401     $Status = $Atom->IsPolarHydrogen();</div>
 | 
| 
 | 
  1402 <p>Returns 0 or 1 based on whether it's a hydrogen <em>Atom</em> bonded to a polar atom.</p>
 | 
| 
 | 
  1403 </dd>
 | 
| 
 | 
  1404 <dt><strong><a name="ispositivelyionizable" class="item"><strong>IsPositivelyIonizable</strong></a></strong></dt>
 | 
| 
 | 
  1405 <dd>
 | 
| 
 | 
  1406 <div class="OptionsBox">
 | 
| 
 | 
  1407     $Status =$Atom->IsPositivelyIonizable();</div>
 | 
| 
 | 
  1408 <p>Returns 1 or 0 based on whether it's a positively ionizable <em>Atom</em>.</p>
 | 
| 
 | 
  1409 </dd>
 | 
| 
 | 
  1410 <dt><strong><a name="issaturated" class="item"><strong>IsSaturated</strong></a></strong></dt>
 | 
| 
 | 
  1411 <dd>
 | 
| 
 | 
  1412 <div class="OptionsBox">
 | 
| 
 | 
  1413     $Status = $Atom->IsSaturated();</div>
 | 
| 
 | 
  1414 <p>Returns 1 or 0 based on whether it's a saturated <em>Atom</em>. An atom attached
 | 
| 
 | 
  1415 to other atoms with only single bonds is considered a saturated atom.</p>
 | 
| 
 | 
  1416 </dd>
 | 
| 
 | 
  1417 <dt><strong><a name="isselenium" class="item"><strong>IsSelenium</strong></a></strong></dt>
 | 
| 
 | 
  1418 <dd>
 | 
| 
 | 
  1419 <div class="OptionsBox">
 | 
| 
 | 
  1420     $Status = $Atom->IsSelenium();</div>
 | 
| 
 | 
  1421 <p>Returns 0 or 1 based on whether it's a selenium <em>Atom</em>.</p>
 | 
| 
 | 
  1422 </dd>
 | 
| 
 | 
  1423 <dt><strong><a name="isstereocenter" class="item"><strong>IsStereoCenter</strong></a></strong></dt>
 | 
| 
 | 
  1424 <dd>
 | 
| 
 | 
  1425 <div class="OptionsBox">
 | 
| 
 | 
  1426     $Status = $Atom->IsStereoCenter();</div>
 | 
| 
 | 
  1427 <p>Returns 0 or 1 based on whether it's marked as a stero center <em>Atom</em> by explicit setting
 | 
| 
 | 
  1428 of <em>StereoCenter</em> atom propert to value of <em>1</em>.</p>
 | 
| 
 | 
  1429 </dd>
 | 
| 
 | 
  1430 <dt><strong><a name="issilicon" class="item"><strong>IsSilicon</strong></a></strong></dt>
 | 
| 
 | 
  1431 <dd>
 | 
| 
 | 
  1432 <div class="OptionsBox">
 | 
| 
 | 
  1433     $Status = $Atom->IsSilicon();</div>
 | 
| 
 | 
  1434 <p>Returns 0 or 1 based on whether it's a silicon <em>Atom</em>.</p>
 | 
| 
 | 
  1435 </dd>
 | 
| 
 | 
  1436 <dt><strong><a name="issulfur" class="item"><strong>IsSulfur</strong></a></strong></dt>
 | 
| 
 | 
  1437 <dd>
 | 
| 
 | 
  1438 <div class="OptionsBox">
 | 
| 
 | 
  1439     $Status = $Atom->IsSulfur();</div>
 | 
| 
 | 
  1440 <p>Returns 0 or 1 based on whether it's a sulfur <em>Atom</em>.</p>
 | 
| 
 | 
  1441 </dd>
 | 
| 
 | 
  1442 <dt><strong><a name="issulphur" class="item"><strong>IsSulphur</strong></a></strong></dt>
 | 
| 
 | 
  1443 <dd>
 | 
| 
 | 
  1444 <div class="OptionsBox">
 | 
| 
 | 
  1445     $Status = $Atom->IsSulphur();</div>
 | 
| 
 | 
  1446 <p>Returns 0 or 1 based on whether it's a sulfur <em>Atom</em>.</p>
 | 
| 
 | 
  1447 </dd>
 | 
| 
 | 
  1448 <dt><strong><a name="istellurium" class="item"><strong>IsTellurium</strong></a></strong></dt>
 | 
| 
 | 
  1449 <dd>
 | 
| 
 | 
  1450 <div class="OptionsBox">
 | 
| 
 | 
  1451     $Status = $Atom->IsTellurium();</div>
 | 
| 
 | 
  1452 <p>Returns 0 or 1 based on whether it's a tellurium <em>Atom</em>.</p>
 | 
| 
 | 
  1453 </dd>
 | 
| 
 | 
  1454 <dt><strong><a name="isterminal" class="item"><strong>IsTerminal</strong></a></strong></dt>
 | 
| 
 | 
  1455 <dd>
 | 
| 
 | 
  1456 <div class="OptionsBox">
 | 
| 
 | 
  1457     $Status = $Atom->IsTerminal();</div>
 | 
| 
 | 
  1458 <p>Returns 0 or 1 based on whether it's a terminal <em>Atom</em> attached to no
 | 
| 
 | 
  1459 more than one non-hydrogen atom.</p>
 | 
| 
 | 
  1460 </dd>
 | 
| 
 | 
  1461 <dt><strong><a name="isunsaturated" class="item"><strong>IsUnsaturated</strong></a></strong></dt>
 | 
| 
 | 
  1462 <dd>
 | 
| 
 | 
  1463 <div class="OptionsBox">
 | 
| 
 | 
  1464     $Status = $Atom->IsUnsaturated();</div>
 | 
| 
 | 
  1465 <p>Returns 1 or 0 based on whether it's as unsaturated <em>Atom</em>. An atom attached
 | 
| 
 | 
  1466 to other atoms with at least one non-single bond is considered an unsaturated atom.</p>
 | 
| 
 | 
  1467 </dd>
 | 
| 
 | 
  1468 <dt><strong><a name="istopologicalpharmacophoretype" class="item"><strong>IsTopologicalPharmacophoreType</strong></a></strong></dt>
 | 
| 
 | 
  1469 <dd>
 | 
| 
 | 
  1470 <div class="OptionsBox">
 | 
| 
 | 
  1471     $Status =$Atom->IsTopologicalPharmacophoreType();</div>
 | 
| 
 | 
  1472 <p>Returns 1 or 0 based on whether it's any of the supportyed topological pharmacophore
 | 
| 
 | 
  1473 <em>Atom</em> type. See <em>IsFunctionalClassType</em> for a list of supported types.</p>
 | 
| 
 | 
  1474 </dd>
 | 
| 
 | 
  1475 <dt><strong><a name="setatomsymbol" class="item"><strong>SetAtomSymbol</strong></a></strong></dt>
 | 
| 
 | 
  1476 <dd>
 | 
| 
 | 
  1477 <div class="OptionsBox">
 | 
| 
 | 
  1478     $Atom->SetAtomSymbol($AtomicSymbol);</div>
 | 
| 
 | 
  1479 <p>Sets atom symbol for <em>Atom</em> and returns <em>Atom</em> object. The appropriate atomic number is also
 | 
| 
 | 
  1480 set automatically.</p>
 | 
| 
 | 
  1481 </dd>
 | 
| 
 | 
  1482 <dt><strong><a name="setatomicnumber" class="item"><strong>SetAtomicNumber</strong></a></strong></dt>
 | 
| 
 | 
  1483 <dd>
 | 
| 
 | 
  1484 <div class="OptionsBox">
 | 
| 
 | 
  1485     $Atom->SetAtomicNumber($AtomicNumber);</div>
 | 
| 
 | 
  1486 <p>Sets atomic number for <em>Atom</em> and returns <em>Atom</em> object. The appropriate atom symbol is also
 | 
| 
 | 
  1487 set automatically.</p>
 | 
| 
 | 
  1488 </dd>
 | 
| 
 | 
  1489 <dt><strong><a name="setmassnumber" class="item"><strong>SetMassNumber</strong></a></strong></dt>
 | 
| 
 | 
  1490 <dd>
 | 
| 
 | 
  1491 <div class="OptionsBox">
 | 
| 
 | 
  1492     $Atom->SetMassNumber($MassNumber);</div>
 | 
| 
 | 
  1493 <p>Sets mass number for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1494 </dd>
 | 
| 
 | 
  1495 <dt><strong><a name="setstereocenter" class="item"><strong>SetStereoCenter</strong></a></strong></dt>
 | 
| 
 | 
  1496 <dd>
 | 
| 
 | 
  1497 <div class="OptionsBox">
 | 
| 
 | 
  1498     $Atom->SetStereoCenter($StereoCenter);</div>
 | 
| 
 | 
  1499 <p>Sets stereo center for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1500 </dd>
 | 
| 
 | 
  1501 <dt><strong><a name="setstereochemistry" class="item"><strong>SetStereochemistry</strong></a></strong></dt>
 | 
| 
 | 
  1502 <dd>
 | 
| 
 | 
  1503 <div class="OptionsBox">
 | 
| 
 | 
  1504     $Atom->SetStereochemistry($Stereochemistry);</div>
 | 
| 
 | 
  1505 <p>Sets stereo chemistry for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1506 </dd>
 | 
| 
 | 
  1507 <dt><strong><a name="setx" class="item"><strong>SetX</strong></a></strong></dt>
 | 
| 
 | 
  1508 <dd>
 | 
| 
 | 
  1509 <div class="OptionsBox">
 | 
| 
 | 
  1510     $Atom->SetX($Value);</div>
 | 
| 
 | 
  1511 <p>Sets X-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1512 </dd>
 | 
| 
 | 
  1513 <dt><strong><a name="setxyz" class="item"><strong>SetXYZ</strong></a></strong></dt>
 | 
| 
 | 
  1514 <dd>
 | 
| 
 | 
  1515 <div class="OptionsBox">
 | 
| 
 | 
  1516     $Atom->SetXYZ(@XYZValues);
 | 
| 
 | 
  1517 <br/>    $Atom->SetXYZ($XYZValuesRef);
 | 
| 
 | 
  1518 <br/>    $Atom->SetXYZ($XYZVector);</div>
 | 
| 
 | 
  1519 <p>Sets <em>Atom</em> coordinates using an array, reference to an array or a <em>Vector</em> object and
 | 
| 
 | 
  1520 returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1521 </dd>
 | 
| 
 | 
  1522 <dt><strong><a name="sety" class="item"><strong>SetY</strong></a></strong></dt>
 | 
| 
 | 
  1523 <dd>
 | 
| 
 | 
  1524 <div class="OptionsBox">
 | 
| 
 | 
  1525     $Atom->SetY($Value);</div>
 | 
| 
 | 
  1526 <p>Sets Y-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1527 </dd>
 | 
| 
 | 
  1528 <dt><strong><a name="setz" class="item"><strong>SetZ</strong></a></strong></dt>
 | 
| 
 | 
  1529 <dd>
 | 
| 
 | 
  1530 <div class="OptionsBox">
 | 
| 
 | 
  1531     $Atom->SetZ($Value);</div>
 | 
| 
 | 
  1532 <p>Sets Z-coordinate value for <em>Atom</em> and returns <em>Atom</em> object.</p>
 | 
| 
 | 
  1533 </dd>
 | 
| 
 | 
  1534 <dt><strong><a name="stringifyatom" class="item"><strong>StringifyAtom</strong></a></strong></dt>
 | 
| 
 | 
  1535 <dd>
 | 
| 
 | 
  1536 <div class="OptionsBox">
 | 
| 
 | 
  1537     $AtomString = $Atom->StringifyAtom();</div>
 | 
| 
 | 
  1538 <p>Returns a string containing information about <em>Atom</em> object.</p>
 | 
| 
 | 
  1539 </dd>
 | 
| 
 | 
  1540 </dl>
 | 
| 
 | 
  1541 <p>
 | 
| 
 | 
  1542 </p>
 | 
| 
 | 
  1543 <h2>AUTHOR</h2>
 | 
| 
 | 
  1544 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
 | 
| 
 | 
  1545 <p>
 | 
| 
 | 
  1546 </p>
 | 
| 
 | 
  1547 <h2>SEE ALSO</h2>
 | 
| 
 | 
  1548 <p><a href="./Bond.html">Bond.pm</a>, <a href="./Molecule.html">Molecule.pm</a>, <a href="./MoleculeFileIO.html">MoleculeFileIO.pm</a>
 | 
| 
 | 
  1549 </p>
 | 
| 
 | 
  1550 <p>
 | 
| 
 | 
  1551 </p>
 | 
| 
 | 
  1552 <h2>COPYRIGHT</h2>
 | 
| 
 | 
  1553 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
 | 
| 
 | 
  1554 <p>This file is part of MayaChemTools.</p>
 | 
| 
 | 
  1555 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
 | 
| 
 | 
  1556 the terms of the GNU Lesser General Public License as published by the Free
 | 
| 
 | 
  1557 Software Foundation; either version 3 of the License, or (at your option)
 | 
| 
 | 
  1558 any later version.</p>
 | 
| 
 | 
  1559 <p> </p><p> </p><div class="DocNav">
 | 
| 
 | 
  1560 <table width="100%" border=0 cellpadding=0 cellspacing=2>
 | 
| 
 | 
  1561 <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>
 | 
| 
 | 
  1562 </table>
 | 
| 
 | 
  1563 </div>
 | 
| 
 | 
  1564 <br />
 | 
| 
 | 
  1565 <center>
 | 
| 
 | 
  1566 <img src="../../images/h2o2.png">
 | 
| 
 | 
  1567 </center>
 | 
| 
 | 
  1568 </body>
 | 
| 
 | 
  1569 </html>
 |