| 
0
 | 
     1 <html>
 | 
| 
 | 
     2 <head>
 | 
| 
 | 
     3 <title>MayaChemTools:Documentation:Bond.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="./BitVector.html" title="BitVector.html">Previous</a>  <a href="./index.html" title="Table of Contents">TOC</a>  <a href="./Constants.html" title="Constants.html">Next</a></td><td width="34%" align="middle"><strong>Bond.pm</strong></td><td width="33%" align="right"><a href="././code/Bond.html" title="View source code">Code</a> | <a href="./../pdf/Bond.pdf" title="PDF US Letter Size">PDF</a> | <a href="./../pdfgreen/Bond.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a> | <a href="./../pdfa4/Bond.pdf" title="PDF A4 Size">PDFA4</a> | <a href="./../pdfa4green/Bond.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>Bond</p>
 | 
| 
 | 
    22 <p>
 | 
| 
 | 
    23 </p>
 | 
| 
 | 
    24 <h2>SYNOPSIS</h2>
 | 
| 
 | 
    25 <p>use Bond;</p>
 | 
| 
 | 
    26 <p>use Bond qw(:all);</p>
 | 
| 
 | 
    27 <p>
 | 
| 
 | 
    28 </p>
 | 
| 
 | 
    29 <h2>DESCRIPTION</h2>
 | 
| 
 | 
    30 <p><strong>Bond</strong> class provides the following methods:</p>
 | 
| 
 | 
    31 <p> <a href="#new">new</a>, <a href="#copy">Copy</a>, <a href="#deletebond">DeleteBond</a>, <a href="#getatoms">GetAtoms</a>, <a href="#getbondbeginatom">GetBondBeginAtom</a>, <a href="#getbondendatom">GetBondEndAtom</a>
 | 
| 
 | 
    32 , <a href="#getbondfromatom">GetBondFromAtom</a>, <a href="#getbondtoatom">GetBondToAtom</a>, <a href="#getbondedatom">GetBondedAtom</a>, <a href="#getcommonatom">GetCommonAtom</a>, <a href="#getlargestring">GetLargestRing</a>
 | 
| 
 | 
    33 , <a href="#getnumofrings">GetNumOfRings</a>, <a href="#getnumofringswithevensize">GetNumOfRingsWithEvenSize</a>, <a href="#getnumofringswithoddsize">GetNumOfRingsWithOddSize</a>
 | 
| 
 | 
    34 , <a href="#getnumofringswithsize">GetNumOfRingsWithSize</a>, <a href="#getnumofringswithsizegreaterthan">GetNumOfRingsWithSizeGreaterThan</a>
 | 
| 
 | 
    35 , <a href="#getnumofringswithsizelessthan">GetNumOfRingsWithSizeLessThan</a>, <a href="#getrings">GetRings</a>, <a href="#getringswithevensize">GetRingsWithEvenSize</a>
 | 
| 
 | 
    36 , <a href="#getringswithoddsize">GetRingsWithOddSize</a>, <a href="#getringswithsize">GetRingsWithSize</a>, <a href="#getringswithsizegreaterthan">GetRingsWithSizeGreaterThan</a>
 | 
| 
 | 
    37 , <a href="#getringswithsizelessthan">GetRingsWithSizeLessThan</a>, <a href="#getsizeoflargestring">GetSizeOfLargestRing</a>, <a href="#getsizeofsmallestring">GetSizeOfSmallestRing</a>
 | 
| 
 | 
    38 , <a href="#getsmallestring">GetSmallestRing</a>, <a href="#isaromatic">IsAromatic</a>, <a href="#isbondstereochemistryspecified">IsBondStereochemistrySpecified</a>, <a href="#isbondtypespecified">IsBondTypeSpecified</a>
 | 
| 
 | 
    39 , <a href="#iscis">IsCis</a>, <a href="#iscisortrans">IsCisOrTrans</a>, <a href="#iscoordinate">IsCoordinate</a>, <a href="#isdative">IsDative</a>, <a href="#isdouble">IsDouble</a>, <a href="#isdown">IsDown</a>, <a href="#isdownward">IsDownward</a>, <a href="#ishash">IsHash</a>
 | 
| 
 | 
    40 , <a href="#isinring">IsInRing</a>, <a href="#isinringofsize">IsInRingOfSize</a>, <a href="#isionic">IsIonic</a>, <a href="#isnotinring">IsNotInRing</a>, <a href="#isonlyinonering">IsOnlyInOneRing</a>, <a href="#isquadruple">IsQuadruple</a>
 | 
| 
 | 
    41 , <a href="#isquintuple">IsQuintuple</a>, <a href="#issextuple">IsSextuple</a>, <a href="#issingle">IsSingle</a>, <a href="#istautomeric">IsTautomeric</a>, <a href="#istrans">IsTrans</a>, <a href="#istriple">IsTriple</a>, <a href="#isup">IsUp</a>
 | 
| 
 | 
    42 , <a href="#isupordown">IsUpOrDown</a>, <a href="#isupward">IsUpward</a>, <a href="#iswedge">IsWedge</a>, <a href="#iswedgeorhash">IsWedgeOrHash</a>, <a href="#setatoms">SetAtoms</a>, <a href="#setbondorder">SetBondOrder</a>
 | 
| 
 | 
    43 , <a href="#setbondstereochemistry">SetBondStereochemistry</a>, <a href="#setbondtype">SetBondType</a>, <a href="#stringifybond">StringifyBond</a>, <a href="#switchbondfromandtoatoms">SwitchBondFromAndToAtoms</a>
 | 
| 
 | 
    44 </p><p><strong>Bond</strong> class is derived from <strong>ObjectProperty</strong> base class which provides methods not explicitly
 | 
| 
 | 
    45 defined in <strong>Atom</strong> or <strong>ObjectProperty</strong> class using Perl's AUTOLOAD functionality. These methods
 | 
| 
 | 
    46 are generated on-the-fly for a specified object property:</p>
 | 
| 
 | 
    47 <div class="OptionsBox">
 | 
| 
 | 
    48     Set<PropertyName>(<PropertyValue>);
 | 
| 
 | 
    49 <br/>    $PropertyValue = Get<PropertyName>();
 | 
| 
 | 
    50 <br/>    Delete<PropertyName>();</div>
 | 
| 
 | 
    51 <p>
 | 
| 
 | 
    52 </p>
 | 
| 
 | 
    53 <h2>METHODS</h2>
 | 
| 
 | 
    54 <dl>
 | 
| 
 | 
    55 <dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
 | 
| 
 | 
    56 <dd>
 | 
| 
 | 
    57 <div class="OptionsBox">
 | 
| 
 | 
    58     $NewBond = new Bond([%PropertyNameAndValues]);</div>
 | 
| 
 | 
    59 <p>Using specified <em>Bond</em> property names and values hash, <strong>new</strong> method creates a new object
 | 
| 
 | 
    60 and returns a reference to newly created <strong>Bond</strong> object. By default, following properties are
 | 
| 
 | 
    61 initialized:</p>
 | 
| 
 | 
    62 <div class="OptionsBox">
 | 
| 
 | 
    63     ID = SequentialObjectID
 | 
| 
 | 
    64 <br/>    @Atoms = ();
 | 
| 
 | 
    65 <br/>    BondType = ""
 | 
| 
 | 
    66 <br/>    BondOrder = ""</div>
 | 
| 
 | 
    67 <p>Except for <em>ID</em> property, all other default properties and other additional properties can
 | 
| 
 | 
    68 be set during invocation of this method.</p>
 | 
| 
 | 
    69 <p>Examples:</p>
 | 
| 
 | 
    70 <div class="OptionsBox">
 | 
| 
 | 
    71     $Bond = new Bond();
 | 
| 
 | 
    72 <br/>    $DoubleBond = new Bond('Atoms' => [$Atom2, $Atom1],
 | 
| 
 | 
    73                            'BondOrder' => 2);</div>
 | 
| 
 | 
    74 </dd>
 | 
| 
 | 
    75 <dt><strong><a name="copy" class="item"><strong>Copy</strong></a></strong></dt>
 | 
| 
 | 
    76 <dd>
 | 
| 
 | 
    77 <div class="OptionsBox">
 | 
| 
 | 
    78     $BondCopy = $Bond->Copy();</div>
 | 
| 
 | 
    79 <p>Copy <em>Bond</em> and its associated data using <strong>Storable::dclone</strong> and return a new
 | 
| 
 | 
    80 <strong>Bond</strong> object.</p>
 | 
| 
 | 
    81 </dd>
 | 
| 
 | 
    82 <dt><strong><a name="deletebond" class="item"><strong>DeleteBond</strong></a></strong></dt>
 | 
| 
 | 
    83 <dd>
 | 
| 
 | 
    84 <div class="OptionsBox">
 | 
| 
 | 
    85     $Bond->DeleteBond();</div>
 | 
| 
 | 
    86 <p>Delete <em>Bond</em> between atoms in from a molecule.</p>
 | 
| 
 | 
    87 </dd>
 | 
| 
 | 
    88 <dt><strong><a name="getatoms" class="item"><strong>GetAtoms</strong></a></strong></dt>
 | 
| 
 | 
    89 <dd>
 | 
| 
 | 
    90 <div class="OptionsBox">
 | 
| 
 | 
    91     @BondedAtoms = $Bond->GetAtoms();</div>
 | 
| 
 | 
    92 <p>Returns an array containing <em>Atoms</em> invoved in <em>Bond</em>.</p>
 | 
| 
 | 
    93 </dd>
 | 
| 
 | 
    94 <dt><strong><a name="getbondedatom" class="item"><strong>GetBondedAtom</strong></a></strong></dt>
 | 
| 
 | 
    95 <dd>
 | 
| 
 | 
    96 <div class="OptionsBox">
 | 
| 
 | 
    97     $BondedAtom = $Bond->GetBondedAtom($Atom);</div>
 | 
| 
 | 
    98 <p>Returns <strong>BondedAtom</strong> bonded to <em>Atom</em> in  <em>Bond</em>.</p>
 | 
| 
 | 
    99 </dd>
 | 
| 
 | 
   100 <dt><strong><a name="getbondbeginatom" class="item"><strong>GetBondBeginAtom</strong></a></strong></dt>
 | 
| 
 | 
   101 <dd>
 | 
| 
 | 
   102 <div class="OptionsBox">
 | 
| 
 | 
   103     $BeginAtom = $Bond->GetBondBeginAtom();</div>
 | 
| 
 | 
   104 <p>Returns <strong>BeginAtom</strong> corresponding to bond starting atom in <em>Bond</em>.</p>
 | 
| 
 | 
   105 </dd>
 | 
| 
 | 
   106 <dt><strong><a name="getbondendatom" class="item"><strong>GetBondEndAtom</strong></a></strong></dt>
 | 
| 
 | 
   107 <dd>
 | 
| 
 | 
   108 <div class="OptionsBox">
 | 
| 
 | 
   109     $EndAtom = $Bond->GetBondEndAtom();</div>
 | 
| 
 | 
   110 <p>Returns <strong>EndAtom</strong> corresponding to bond ending atom in <em>Bond</em>.</p>
 | 
| 
 | 
   111 </dd>
 | 
| 
 | 
   112 <dt><strong><a name="getbondfromatom" class="item"><strong>GetBondFromAtom</strong></a></strong></dt>
 | 
| 
 | 
   113 <dd>
 | 
| 
 | 
   114 <div class="OptionsBox">
 | 
| 
 | 
   115     $FromAtom = $Bond->GetBondFromAtom();</div>
 | 
| 
 | 
   116 <p>Returns <strong>FromAtom</strong> corresponding to bond starting atom in <em>Bond</em>.</p>
 | 
| 
 | 
   117 </dd>
 | 
| 
 | 
   118 <dt><strong><a name="getbondtoatom" class="item"><strong>GetBondToAtom</strong></a></strong></dt>
 | 
| 
 | 
   119 <dd>
 | 
| 
 | 
   120 <div class="OptionsBox">
 | 
| 
 | 
   121     $ToAotm = $Bond->GetBondToAtom();</div>
 | 
| 
 | 
   122 <p>Returns <strong>ToAtom</strong> corresponding to bond ending atom in <em>Bond</em>.</p>
 | 
| 
 | 
   123 </dd>
 | 
| 
 | 
   124 <dt><strong><a name="getcommonatom" class="item"><strong>GetCommonAtom</strong></a></strong></dt>
 | 
| 
 | 
   125 <dd>
 | 
| 
 | 
   126 <div class="OptionsBox">
 | 
| 
 | 
   127     $CommonAtom = $Bond->GetCommonAtom($OtherBond);</div>
 | 
| 
 | 
   128 <p>Returns <strong>Atom</strong> common to both <em>Bond</em> and <em>$OtherBond</em>.</p>
 | 
| 
 | 
   129 </dd>
 | 
| 
 | 
   130 <dt><strong><a name="getlargestring" class="item"><strong>GetLargestRing</strong></a></strong></dt>
 | 
| 
 | 
   131 <dd>
 | 
| 
 | 
   132 <div class="OptionsBox">
 | 
| 
 | 
   133     @RingAtoms = $Bond->GetLargestRing();</div>
 | 
| 
 | 
   134 <p>Returns an array of ring <em>Atoms</em> corresponding to the largest ring containing <em>Bond</em>.
 | 
| 
 | 
   135 in a molecule</p>
 | 
| 
 | 
   136 </dd>
 | 
| 
 | 
   137 <dt><strong><a name="getnumofrings" class="item"><strong>GetNumOfRings</strong></a></strong></dt>
 | 
| 
 | 
   138 <dd>
 | 
| 
 | 
   139 <div class="OptionsBox">
 | 
| 
 | 
   140     $NumOfRings = $Bond->GetNumOfRings();</div>
 | 
| 
 | 
   141 <p>Returns number of rings containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   142 </dd>
 | 
| 
 | 
   143 <dt><strong><a name="getnumofringswithevensize" class="item"><strong>GetNumOfRingsWithEvenSize</strong></a></strong></dt>
 | 
| 
 | 
   144 <dd>
 | 
| 
 | 
   145 <div class="OptionsBox">
 | 
| 
 | 
   146     $NumOfRings = $Bond->GetNumOfRingsWithEvenSize();</div>
 | 
| 
 | 
   147 <p>Returns number of rings with even size containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   148 </dd>
 | 
| 
 | 
   149 <dt><strong><a name="getnumofringswithoddsize" class="item"><strong>GetNumOfRingsWithOddSize</strong></a></strong></dt>
 | 
| 
 | 
   150 <dd>
 | 
| 
 | 
   151 <div class="OptionsBox">
 | 
| 
 | 
   152     $NumOfRings = $Bond->GetNumOfRingsWithOddSize();</div>
 | 
| 
 | 
   153 <p>Returns number of rings with odd size containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   154 </dd>
 | 
| 
 | 
   155 <dt><strong><a name="getnumofringswithsize" class="item"><strong>GetNumOfRingsWithSize</strong></a></strong></dt>
 | 
| 
 | 
   156 <dd>
 | 
| 
 | 
   157 <div class="OptionsBox">
 | 
| 
 | 
   158     $NumOfRings = $Bond->GetNumOfRingsWithSize($RingSize);</div>
 | 
| 
 | 
   159 <p>Returns number of rings with specific <em>RingSize</em> containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   160 </dd>
 | 
| 
 | 
   161 <dt><strong><a name="getnumofringswithsizegreaterthan" class="item"><strong>GetNumOfRingsWithSizeGreaterThan</strong></a></strong></dt>
 | 
| 
 | 
   162 <dd>
 | 
| 
 | 
   163 <div class="OptionsBox">
 | 
| 
 | 
   164     $NumOfRings = $Bond->GetNumOfRingsWithSizeGreaterThan($RingSize);</div>
 | 
| 
 | 
   165 <p>Returns number of rings with size greater than specific <em>RingSize</em> containing
 | 
| 
 | 
   166 <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   167 </dd>
 | 
| 
 | 
   168 <dt><strong><a name="getnumofringswithsizelessthan" class="item"><strong>GetNumOfRingsWithSizeLessThan</strong></a></strong></dt>
 | 
| 
 | 
   169 <dd>
 | 
| 
 | 
   170 <div class="OptionsBox">
 | 
| 
 | 
   171     $NumOfRings = $Bond->GetNumOfRingsWithSizeLessThan($RingSize);</div>
 | 
| 
 | 
   172 <p>Returns number of rings with size less than specific <em>RingSize</em> containing <em>Bond</em>
 | 
| 
 | 
   173 in a molecule.</p>
 | 
| 
 | 
   174 </dd>
 | 
| 
 | 
   175 <dt><strong><a name="getrings" class="item"><strong>GetRings</strong></a></strong></dt>
 | 
| 
 | 
   176 <dd>
 | 
| 
 | 
   177 <div class="OptionsBox">
 | 
| 
 | 
   178     @Rings = $Bond->GetRings();</div>
 | 
| 
 | 
   179 <p>Returns an array of references to arrays containing ring atoms corressponding
 | 
| 
 | 
   180 to all rings containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   181 </dd>
 | 
| 
 | 
   182 <dt><strong><a name="getringswithevensize" class="item"><strong>GetRingsWithEvenSize</strong></a></strong></dt>
 | 
| 
 | 
   183 <dd>
 | 
| 
 | 
   184 <div class="OptionsBox">
 | 
| 
 | 
   185     @Rings = $Bond->GetRingsWithEvenSize();</div>
 | 
| 
 | 
   186 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with even size
 | 
| 
 | 
   187 containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   188 </dd>
 | 
| 
 | 
   189 <dt><strong><a name="getringswithoddsize" class="item"><strong>GetRingsWithOddSize</strong></a></strong></dt>
 | 
| 
 | 
   190 <dd>
 | 
| 
 | 
   191 <div class="OptionsBox">
 | 
| 
 | 
   192     @Rings = $Bond->GetRingsWithOddSize();</div>
 | 
| 
 | 
   193 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with odd size
 | 
| 
 | 
   194 containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   195 </dd>
 | 
| 
 | 
   196 <dt><strong><a name="getringswithsize" class="item"><strong>GetRingsWithSize</strong></a></strong></dt>
 | 
| 
 | 
   197 <dd>
 | 
| 
 | 
   198 <div class="OptionsBox">
 | 
| 
 | 
   199     @Rings = $Bond->GetRingsWithSize($RingSize);</div>
 | 
| 
 | 
   200 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with specific
 | 
| 
 | 
   201 <em>RingSize </em>containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   202 </dd>
 | 
| 
 | 
   203 <dt><strong><a name="getringswithsizegreaterthan" class="item"><strong>GetRingsWithSizeGreaterThan</strong></a></strong></dt>
 | 
| 
 | 
   204 <dd>
 | 
| 
 | 
   205 <div class="OptionsBox">
 | 
| 
 | 
   206     @Rings = $Bond->GetRingsWithSizeGreaterThan($RingSize);</div>
 | 
| 
 | 
   207 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size
 | 
| 
 | 
   208 greater than specific <em>RingSize </em>containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   209 </dd>
 | 
| 
 | 
   210 <dt><strong><a name="getringswithsizelessthan" class="item"><strong>GetRingsWithSizeLessThan</strong></a></strong></dt>
 | 
| 
 | 
   211 <dd>
 | 
| 
 | 
   212 <div class="OptionsBox">
 | 
| 
 | 
   213     @Rings = $Bond->GetRingsWithSizeLessThan($RingSize);</div>
 | 
| 
 | 
   214 <p>Returns an array of references to arrays containing ring atoms corressponding to all rings with size
 | 
| 
 | 
   215 less than specific <em>RingSize </em>containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   216 </dd>
 | 
| 
 | 
   217 <dt><strong><a name="getsizeoflargestring" class="item"><strong>GetSizeOfLargestRing</strong></a></strong></dt>
 | 
| 
 | 
   218 <dd>
 | 
| 
 | 
   219 <div class="OptionsBox">
 | 
| 
 | 
   220     $Size = $Bond->GetSizeOfLargestRing();</div>
 | 
| 
 | 
   221 <p>Returns size of the largest ring containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   222 </dd>
 | 
| 
 | 
   223 <dt><strong><a name="getsizeofsmallestring" class="item"><strong>GetSizeOfSmallestRing</strong></a></strong></dt>
 | 
| 
 | 
   224 <dd>
 | 
| 
 | 
   225 <div class="OptionsBox">
 | 
| 
 | 
   226     $Size = $Bond->GetSizeOfSmallestRing();</div>
 | 
| 
 | 
   227 <p>Returns size of the smallest ring containing <em>Bond</em> in a molecule.</p>
 | 
| 
 | 
   228 </dd>
 | 
| 
 | 
   229 <dt><strong><a name="getsmallestring" class="item"><strong>GetSmallestRing</strong></a></strong></dt>
 | 
| 
 | 
   230 <dd>
 | 
| 
 | 
   231 <div class="OptionsBox">
 | 
| 
 | 
   232     @RingAtoms = $Bond->GetSmallestRing();</div>
 | 
| 
 | 
   233 <p>Returns an array of ring <em>Atoms</em> corresponding to the largest ring containing <em>Bond</em>
 | 
| 
 | 
   234 in a molecule.</p>
 | 
| 
 | 
   235 </dd>
 | 
| 
 | 
   236 <dt><strong><a name="isaromatic" class="item"><strong>IsAromatic</strong></a></strong></dt>
 | 
| 
 | 
   237 <dd>
 | 
| 
 | 
   238 <div class="OptionsBox">
 | 
| 
 | 
   239     $Status = $Bond->IsAromatic();</div>
 | 
| 
 | 
   240 <p>Returns 1 or 0 based on whether it's an aromatic <em>Bond</em>.</p>
 | 
| 
 | 
   241 </dd>
 | 
| 
 | 
   242 <dt><strong><a name="isbondstereochemistryspecified" class="item"><strong>IsBondStereochemistrySpecified</strong></a></strong></dt>
 | 
| 
 | 
   243 <dd>
 | 
| 
 | 
   244 <div class="OptionsBox">
 | 
| 
 | 
   245     $Status = $Bond->IsBondStereochemistrySpecified();</div>
 | 
| 
 | 
   246 <p>Returns 1 or 0 based on whether <em>Bond</em>'s sterochemistry is specified.</p>
 | 
| 
 | 
   247 </dd>
 | 
| 
 | 
   248 <dt><strong><a name="isbondtypespecified" class="item"><strong>IsBondTypeSpecified</strong></a></strong></dt>
 | 
| 
 | 
   249 <dd>
 | 
| 
 | 
   250 <div class="OptionsBox">
 | 
| 
 | 
   251     $Status = $Bond->IsBondTypeSpecified();</div>
 | 
| 
 | 
   252 <p>Returns 1 or 0 based on whether <em>Bond</em>'s type is specified.</p>
 | 
| 
 | 
   253 </dd>
 | 
| 
 | 
   254 <dt><strong><a name="iscis" class="item"><strong>IsCis</strong></a></strong></dt>
 | 
| 
 | 
   255 <dd>
 | 
| 
 | 
   256 <div class="OptionsBox">
 | 
| 
 | 
   257     $Status = $Bond->IsCis();</div>
 | 
| 
 | 
   258 <p>Returns 1 or 0 based on whether it's a cis <em>Bond</em>.</p>
 | 
| 
 | 
   259 </dd>
 | 
| 
 | 
   260 <dt><strong><a name="iscisortrans" class="item"><strong>IsCisOrTrans</strong></a></strong></dt>
 | 
| 
 | 
   261 <dd>
 | 
| 
 | 
   262 <div class="OptionsBox">
 | 
| 
 | 
   263     $Status = $Bond->IsCisOrTrans();</div>
 | 
| 
 | 
   264 <p>Returns 1 or 0 based on whether it's a cis or trans <em>Bond</em>.</p>
 | 
| 
 | 
   265 </dd>
 | 
| 
 | 
   266 <dt><strong><a name="iscoordinate" class="item"><strong>IsCoordinate</strong></a></strong></dt>
 | 
| 
 | 
   267 <dd>
 | 
| 
 | 
   268 <div class="OptionsBox">
 | 
| 
 | 
   269     $Status = $Bond->IsCoordinate();</div>
 | 
| 
 | 
   270 <p>Returns 1 or 0 based on whether it's a coordinate or dative  <em>Bond</em>.</p>
 | 
| 
 | 
   271 </dd>
 | 
| 
 | 
   272 <dt><strong><a name="isdative" class="item"><strong>IsDative</strong></a></strong></dt>
 | 
| 
 | 
   273 <dd>
 | 
| 
 | 
   274 <div class="OptionsBox">
 | 
| 
 | 
   275     $Status = $Bond->IsDative();</div>
 | 
| 
 | 
   276 <p>Returns 1 or 0 based on whether it's a coordinate or dative  <em>Bond</em>.</p>
 | 
| 
 | 
   277 </dd>
 | 
| 
 | 
   278 <dt><strong><a name="isdouble" class="item"><strong>IsDouble</strong></a></strong></dt>
 | 
| 
 | 
   279 <dd>
 | 
| 
 | 
   280 <div class="OptionsBox">
 | 
| 
 | 
   281     $Status =$Bond->IsDouble();</div>
 | 
| 
 | 
   282 <p>Returns 1 or 0 based on whether it's a double <em>Bond</em>.</p>
 | 
| 
 | 
   283 </dd>
 | 
| 
 | 
   284 <dt><strong><a name="isdown" class="item"><strong>IsDown</strong></a></strong></dt>
 | 
| 
 | 
   285 <dd>
 | 
| 
 | 
   286 <div class="OptionsBox">
 | 
| 
 | 
   287     $Status = $Bond->IsDown();</div>
 | 
| 
 | 
   288 <p>Returns 1 or 0 based on whether it's a hash or down single <em>Bond</em>.</p>
 | 
| 
 | 
   289 </dd>
 | 
| 
 | 
   290 <dt><strong><a name="isdownward" class="item"><strong>IsDownward</strong></a></strong></dt>
 | 
| 
 | 
   291 <dd>
 | 
| 
 | 
   292 <div class="OptionsBox">
 | 
| 
 | 
   293     $Return = $Bond->IsDownward();</div>
 | 
| 
 | 
   294 <p>Returns 1 or 0 based on whether it's a downward <em>Bond</em>.</p>
 | 
| 
 | 
   295 </dd>
 | 
| 
 | 
   296 <dt><strong><a name="ishash" class="item"><strong>IsHash</strong></a></strong></dt>
 | 
| 
 | 
   297 <dd>
 | 
| 
 | 
   298 <div class="OptionsBox">
 | 
| 
 | 
   299     $Status = $Bond->IsHash();</div>
 | 
| 
 | 
   300 <p>Returns 1 or 0 based on whether it's a hash or down single <em>Bond</em>.</p>
 | 
| 
 | 
   301 </dd>
 | 
| 
 | 
   302 <dt><strong><a name="isinring" class="item"><strong>IsInRing</strong></a></strong></dt>
 | 
| 
 | 
   303 <dd>
 | 
| 
 | 
   304 <div class="OptionsBox">
 | 
| 
 | 
   305     $Status = $Bond->IsInRing();</div>
 | 
| 
 | 
   306 <p>Returns 1 or 0 based on whether <em>Bond</em> is present in a ring.</p>
 | 
| 
 | 
   307 </dd>
 | 
| 
 | 
   308 <dt><strong><a name="isinringofsize" class="item"><strong>IsInRingOfSize</strong></a></strong></dt>
 | 
| 
 | 
   309 <dd>
 | 
| 
 | 
   310 <div class="OptionsBox">
 | 
| 
 | 
   311     $Status = $Bond->IsInRingOfSize($Size);</div>
 | 
| 
 | 
   312 <p>Returns 1 or 0 based on whether <em>Bond</em> is present in a ring of specific <em>Size</em>.</p>
 | 
| 
 | 
   313 </dd>
 | 
| 
 | 
   314 <dt><strong><a name="isionic" class="item"><strong>IsIonic</strong></a></strong></dt>
 | 
| 
 | 
   315 <dd>
 | 
| 
 | 
   316 <div class="OptionsBox">
 | 
| 
 | 
   317     $Status = $Bond->IsIonic();</div>
 | 
| 
 | 
   318 <p>Returns 1 or 0 based on whether it's an ionic <em>Bond</em>.</p>
 | 
| 
 | 
   319 </dd>
 | 
| 
 | 
   320 <dt><strong><a name="isnotinring" class="item"><strong>IsNotInRing</strong></a></strong></dt>
 | 
| 
 | 
   321 <dd>
 | 
| 
 | 
   322 <div class="OptionsBox">
 | 
| 
 | 
   323     $Status = $Bond->IsNotInRing();</div>
 | 
| 
 | 
   324 <p>Returns 1 or 0 based on whether <em>Bond</em> is not present in a ring.</p>
 | 
| 
 | 
   325 </dd>
 | 
| 
 | 
   326 <dt><strong><a name="isonlyinonering" class="item"><strong>IsOnlyInOneRing</strong></a></strong></dt>
 | 
| 
 | 
   327 <dd>
 | 
| 
 | 
   328 <div class="OptionsBox">
 | 
| 
 | 
   329     $Status = $Bond->IsOnlyInOneRing();</div>
 | 
| 
 | 
   330 <p>Returns 1 or 0 based on whether <em>Bond</em> is only present in one ring.</p>
 | 
| 
 | 
   331 </dd>
 | 
| 
 | 
   332 <dt><strong><a name="isquadruple" class="item"><strong>IsQuadruple</strong></a></strong></dt>
 | 
| 
 | 
   333 <dd>
 | 
| 
 | 
   334 <div class="OptionsBox">
 | 
| 
 | 
   335     $Status = $Bond->IsQuadruple();</div>
 | 
| 
 | 
   336 <p>Returns 1 or 0 based on whether it's a quadruple <em>Bond</em>.</p>
 | 
| 
 | 
   337 </dd>
 | 
| 
 | 
   338 <dt><strong><a name="isquintuple" class="item"><strong>IsQuintuple</strong></a></strong></dt>
 | 
| 
 | 
   339 <dd>
 | 
| 
 | 
   340 <div class="OptionsBox">
 | 
| 
 | 
   341     $Status = $Bond->IsQuintuple();</div>
 | 
| 
 | 
   342 <p>Returns 1 or 0 based on whether it's a quintuple <em>Bond</em>.</p>
 | 
| 
 | 
   343 </dd>
 | 
| 
 | 
   344 <dt><strong><a name="issextuple" class="item"><strong>IsSextuple</strong></a></strong></dt>
 | 
| 
 | 
   345 <dd>
 | 
| 
 | 
   346 <div class="OptionsBox">
 | 
| 
 | 
   347     $Status = $Bond->IsSextuple();</div>
 | 
| 
 | 
   348 <p>Returns 1 or 0 based on whether it's a sextuple <em>Bond</em>.</p>
 | 
| 
 | 
   349 </dd>
 | 
| 
 | 
   350 <dt><strong><a name="issingle" class="item"><strong>IsSingle</strong></a></strong></dt>
 | 
| 
 | 
   351 <dd>
 | 
| 
 | 
   352 <div class="OptionsBox">
 | 
| 
 | 
   353     $Status =$Bond->IsSingle();</div>
 | 
| 
 | 
   354 <p>Returns 1 or 0 based on whether it's a single <em>Bond</em>.</p>
 | 
| 
 | 
   355 </dd>
 | 
| 
 | 
   356 <dt><strong><a name="istriple" class="item"><strong>IsTriple</strong></a></strong></dt>
 | 
| 
 | 
   357 <dd>
 | 
| 
 | 
   358 <div class="OptionsBox">
 | 
| 
 | 
   359     $Status =$Bond->IsTriple();</div>
 | 
| 
 | 
   360 <p>Returns 1 or 0 based on whether it's a triple <em>Bond</em>.</p>
 | 
| 
 | 
   361 </dd>
 | 
| 
 | 
   362 <dt><strong><a name="istautomeric" class="item"><strong>IsTautomeric</strong></a></strong></dt>
 | 
| 
 | 
   363 <dd>
 | 
| 
 | 
   364 <div class="OptionsBox">
 | 
| 
 | 
   365     $Status = $Bond->IsTautomeric();</div>
 | 
| 
 | 
   366 <p>Returns 1 or 0 based on whether it's a <em>Bond</em>.</p>
 | 
| 
 | 
   367 </dd>
 | 
| 
 | 
   368 <dt><strong><a name="istrans" class="item"><strong>IsTrans</strong></a></strong></dt>
 | 
| 
 | 
   369 <dd>
 | 
| 
 | 
   370 <div class="OptionsBox">
 | 
| 
 | 
   371     $Status = $Bond->IsTrans();</div>
 | 
| 
 | 
   372 <p>Returns 1 or 0 based on whether it's a trans <em>Bond</em>.</p>
 | 
| 
 | 
   373 </dd>
 | 
| 
 | 
   374 <dt><strong><a name="isup" class="item"><strong>IsUp</strong></a></strong></dt>
 | 
| 
 | 
   375 <dd>
 | 
| 
 | 
   376 <div class="OptionsBox">
 | 
| 
 | 
   377     $Status = $Bond->IsUp();</div>
 | 
| 
 | 
   378 <p>Returns 1 or 0 based on whether it's a up <em>Bond</em>.</p>
 | 
| 
 | 
   379 </dd>
 | 
| 
 | 
   380 <dt><strong><a name="isupordown" class="item"><strong>IsUpOrDown</strong></a></strong></dt>
 | 
| 
 | 
   381 <dd>
 | 
| 
 | 
   382 <div class="OptionsBox">
 | 
| 
 | 
   383     $Status = $Bond->IsUpOrDown();</div>
 | 
| 
 | 
   384 <p>Returns 1 or 0 based on whether it's an up or down <em>Bond</em>.</p>
 | 
| 
 | 
   385 </dd>
 | 
| 
 | 
   386 <dt><strong><a name="isupward" class="item"><strong>IsUpward</strong></a></strong></dt>
 | 
| 
 | 
   387 <dd>
 | 
| 
 | 
   388 <div class="OptionsBox">
 | 
| 
 | 
   389     $Status = $Bond->IsUpward();</div>
 | 
| 
 | 
   390 <p>Returns 1 or 0 based on whether it's an upward <em>Bond</em>.</p>
 | 
| 
 | 
   391 </dd>
 | 
| 
 | 
   392 <dt><strong><a name="iswedge" class="item"><strong>IsWedge</strong></a></strong></dt>
 | 
| 
 | 
   393 <dd>
 | 
| 
 | 
   394 <div class="OptionsBox">
 | 
| 
 | 
   395     $Status = $Bond->IsWedge();</div>
 | 
| 
 | 
   396 <p>Returns 1 or 0 based on whether it's a wedge <em>Bond</em>.</p>
 | 
| 
 | 
   397 </dd>
 | 
| 
 | 
   398 <dt><strong><a name="iswedgeorhash" class="item"><strong>IsWedgeOrHash</strong></a></strong></dt>
 | 
| 
 | 
   399 <dd>
 | 
| 
 | 
   400 <div class="OptionsBox">
 | 
| 
 | 
   401     $Status = $Bond->IsWedgeOrHash();</div>
 | 
| 
 | 
   402 <p>Returns 1 or 0 based on whether it's a wedge or hash <em>Bond</em>.</p>
 | 
| 
 | 
   403 </dd>
 | 
| 
 | 
   404 <dt><strong><a name="setatoms" class="item"><strong>SetAtoms</strong></a></strong></dt>
 | 
| 
 | 
   405 <dd>
 | 
| 
 | 
   406 <div class="OptionsBox">
 | 
| 
 | 
   407     $Bond->SetAtoms($AtomsRef);
 | 
| 
 | 
   408 <br/>    $Bond->SetAtoms(@Atoms);</div>
 | 
| 
 | 
   409 <p>Set atoms of <em>Bond</em> to atoms in <em>Atoms</em> array or in a reference to an array of atoms
 | 
| 
 | 
   410 and return <em>Bond</em>.</p>
 | 
| 
 | 
   411 </dd>
 | 
| 
 | 
   412 <dt><strong><a name="setbondorder" class="item"><strong>SetBondOrder</strong></a></strong></dt>
 | 
| 
 | 
   413 <dd>
 | 
| 
 | 
   414 <div class="OptionsBox">
 | 
| 
 | 
   415     $Bond->SetBondOrder($BondOrder);</div>
 | 
| 
 | 
   416 <p>Sets bond order of <em>Bond</em> to specified <em>BondOrder</em> and returns <em>Bond</em>. Possible bond order
 | 
| 
 | 
   417 values: 1 = Single, 1.5 = Aromatic, 2 = Double, 3 = Triple, 4 = Quadruple, 5 = Quintuple,
 | 
| 
 | 
   418 6 = Sextuple, 7 = Septuple</p>
 | 
| 
 | 
   419 <p>Notes:</p>
 | 
| 
 | 
   420 <div class="OptionsBox">
 | 
| 
 | 
   421     . BondType property is automatically assigned using default BondType
 | 
| 
 | 
   422       values for specified BondOrder.
 | 
| 
 | 
   423 <br/>    . BondType values can also be explicit set.
 | 
| 
 | 
   424 <br/>    . To make bonds aromatic in a ring, explicitly set "Aromatic"
 | 
| 
 | 
   425       property for bond/atoms and make sure appropriate BondOrder
 | 
| 
 | 
   426       values are assigned.
 | 
| 
 | 
   427 <br/>    . Dative or coordinate bond types are treated as single bond types with
 | 
| 
 | 
   428       explicit formal charge of + and - on first and second bond atoms.</div>
 | 
| 
 | 
   429 </dd>
 | 
| 
 | 
   430 <dt><strong><a name="setbondtype" class="item"><strong>SetBondType</strong></a></strong></dt>
 | 
| 
 | 
   431 <dd>
 | 
| 
 | 
   432 <div class="OptionsBox">
 | 
| 
 | 
   433     $Bond->SetBondType($BondType);</div>
 | 
| 
 | 
   434 <p>Sets bond type for <em>Bond</em> to specified <em>BondType</em> and returns <em>Bond</em>. Possible bond type
 | 
| 
 | 
   435 values for different bond orders are:</p>
 | 
| 
 | 
   436 <div class="OptionsBox">
 | 
| 
 | 
   437     0: None, Ionic, Unspecified
 | 
| 
 | 
   438 <br/>    1 : Single, Dative, Coordinate, SingleOrDouble, SingleOrAromatic, Tautomeric
 | 
| 
 | 
   439 <br/>    2 : Double, SingleOrDouble, DoubleOrAromatic, Tautomeric
 | 
| 
 | 
   440 <br/>    3 : Triple
 | 
| 
 | 
   441 <br/>    4 : Quadruple
 | 
| 
 | 
   442 <br/>    5 : Quintuple
 | 
| 
 | 
   443 <br/>    6 : Sextuple
 | 
| 
 | 
   444 <br/>    7 : Septuple
 | 
| 
 | 
   445 <br/>    1.5 : Aromatic, Resonance, SingleOrAromatic, DoubleOrAromatic</div>
 | 
| 
 | 
   446 <p>Notes:</p>
 | 
| 
 | 
   447 <div class="OptionsBox">
 | 
| 
 | 
   448     o BondType Any is valid for all BondOrders.
 | 
| 
 | 
   449 <br/>    o BondOrder property is automatically assigned using default BondOrder
 | 
| 
 | 
   450       values for specified BondType.</div>
 | 
| 
 | 
   451 <p>Possible bond stereochemistry values for different bond orders are:</p>
 | 
| 
 | 
   452 <div class="OptionsBox">
 | 
| 
 | 
   453     0 : None, Unspecified
 | 
| 
 | 
   454 <br/>    1 : Wedge, Up, Hash, Down, Wavy, WedgeOrHash, UpOrDown, Upward, Downward,
 | 
| 
 | 
   455 <br/>            None, Unspecified
 | 
| 
 | 
   456 <br/>    2 : Cis, Trans, Z, E, DoubleCross, CisOrTrans, None, Unspecified</div>
 | 
| 
 | 
   457 </dd>
 | 
| 
 | 
   458 <dt><strong><a name="setbondstereochemistry" class="item"><strong>SetBondStereochemistry</strong></a></strong></dt>
 | 
| 
 | 
   459 <dd>
 | 
| 
 | 
   460 <div class="OptionsBox">
 | 
| 
 | 
   461     $Bond = $Bond->SetBondStereochemistry($BondStereochemistry);</div>
 | 
| 
 | 
   462 <p>Sets bond stereochemistry of <em>Bond</em> to specified <em>BondStereochemistry</em> and
 | 
| 
 | 
   463 returns <em>Bond</em>. Possible <em>BondStereoChemistry</em> values for different bond orders
 | 
| 
 | 
   464 are:</p>
 | 
| 
 | 
   465 <p>BondOrder: 1</p>
 | 
| 
 | 
   466 <div class="OptionsBox">
 | 
| 
 | 
   467     None, Unspecified: Not a stereo bond or unspecified</div>
 | 
| 
 | 
   468 <div class="OptionsBox">
 | 
| 
 | 
   469     Wedge, Up : Wedge end pointing up
 | 
| 
 | 
   470 <br/>    Hash, Down: Wedge end pointing down
 | 
| 
 | 
   471 <br/>    Wavy, WedgeOrHash, UpOrDown: Wedge end up or down</div>
 | 
| 
 | 
   472 <div class="OptionsBox">
 | 
| 
 | 
   473     Upward: Single bond around cis/trans double bonds pointing upward
 | 
| 
 | 
   474 <br/>    Downward: Single bond around cis/trans double bonds pointing upward</div>
 | 
| 
 | 
   475 <p>Notes:</p>
 | 
| 
 | 
   476 <div class="OptionsBox">
 | 
| 
 | 
   477     o Wedge starts at begin atom of a bond making wedge pointed end always
 | 
| 
 | 
   478       at this atom.
 | 
| 
 | 
   479 <br/>    o Upward/downward bonds start at atoms involved in cis/trans double bonds.</div>
 | 
| 
 | 
   480 <p>BondOrder: 2</p>
 | 
| 
 | 
   481 <div class="OptionsBox">
 | 
| 
 | 
   482     None, Unspecified: Not a stereo bond or unspecified</div>
 | 
| 
 | 
   483 <div class="OptionsBox">
 | 
| 
 | 
   484     Z, cis: Similar groups on same side of double bond
 | 
| 
 | 
   485 <br/>    E, trans: Similar groups on different side of double bond</div>
 | 
| 
 | 
   486 <div class="OptionsBox">
 | 
| 
 | 
   487     CisOrTrans, DoubleCross: cis or trans</div>
 | 
| 
 | 
   488 </dd>
 | 
| 
 | 
   489 <dt><strong><a name="stringifybond" class="item"><strong>StringifyBond</strong></a></strong></dt>
 | 
| 
 | 
   490 <dd>
 | 
| 
 | 
   491 <div class="OptionsBox">
 | 
| 
 | 
   492     $BondString = $Bond->StringifyBond();</div>
 | 
| 
 | 
   493 <p>Returns a string containing information about <em>bond</em> object.</p>
 | 
| 
 | 
   494 </dd>
 | 
| 
 | 
   495 <dt><strong><a name="switchbondfromandtoatoms" class="item"><strong>SwitchBondFromAndToAtoms</strong></a></strong></dt>
 | 
| 
 | 
   496 <dd>
 | 
| 
 | 
   497 <div class="OptionsBox">
 | 
| 
 | 
   498     $Bond = $Bond->SwitchBondFromAndToAtoms();</div>
 | 
| 
 | 
   499 <p>Swaps bond from and to atoms in <em>Bond</em> and returns <em>Bond</em>.</p>
 | 
| 
 | 
   500 </dd>
 | 
| 
 | 
   501 </dl>
 | 
| 
 | 
   502 <p>
 | 
| 
 | 
   503 </p>
 | 
| 
 | 
   504 <h2>AUTHOR</h2>
 | 
| 
 | 
   505 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
 | 
| 
 | 
   506 <p>
 | 
| 
 | 
   507 </p>
 | 
| 
 | 
   508 <h2>SEE ALSO</h2>
 | 
| 
 | 
   509 <p><a href="./Atom.html">Atom.pm</a>, <a href="./Molecule.html">Molecule.pm</a>
 | 
| 
 | 
   510 </p>
 | 
| 
 | 
   511 <p>
 | 
| 
 | 
   512 </p>
 | 
| 
 | 
   513 <h2>COPYRIGHT</h2>
 | 
| 
 | 
   514 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
 | 
| 
 | 
   515 <p>This file is part of MayaChemTools.</p>
 | 
| 
 | 
   516 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
 | 
| 
 | 
   517 the terms of the GNU Lesser General Public License as published by the Free
 | 
| 
 | 
   518 Software Foundation; either version 3 of the License, or (at your option)
 | 
| 
 | 
   519 any later version.</p>
 | 
| 
 | 
   520 <p> </p><p> </p><div class="DocNav">
 | 
| 
 | 
   521 <table width="100%" border=0 cellpadding=0 cellspacing=2>
 | 
| 
 | 
   522 <tr align="left" valign="top"><td width="33%" align="left"><a href="./BitVector.html" title="BitVector.html">Previous</a>  <a href="./index.html" title="Table of Contents">TOC</a>  <a href="./Constants.html" title="Constants.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>Bond.pm</strong></td></tr>
 | 
| 
 | 
   523 </table>
 | 
| 
 | 
   524 </div>
 | 
| 
 | 
   525 <br />
 | 
| 
 | 
   526 <center>
 | 
| 
 | 
   527 <img src="../../images/h2o2.png">
 | 
| 
 | 
   528 </center>
 | 
| 
 | 
   529 </body>
 | 
| 
 | 
   530 </html>
 |