Mercurial > repos > deepakjadmin > mayatool3_test2
comparison docs/modules/man3/Molecule.3 @ 0:4816e4a8ae95 draft default tip
Uploaded
| author | deepakjadmin |
|---|---|
| date | Wed, 20 Jan 2016 09:23:18 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:4816e4a8ae95 |
|---|---|
| 1 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22) | |
| 2 .\" | |
| 3 .\" Standard preamble: | |
| 4 .\" ======================================================================== | |
| 5 .de Sp \" Vertical space (when we can't use .PP) | |
| 6 .if t .sp .5v | |
| 7 .if n .sp | |
| 8 .. | |
| 9 .de Vb \" Begin verbatim text | |
| 10 .ft CW | |
| 11 .nf | |
| 12 .ne \\$1 | |
| 13 .. | |
| 14 .de Ve \" End verbatim text | |
| 15 .ft R | |
| 16 .fi | |
| 17 .. | |
| 18 .\" Set up some character translations and predefined strings. \*(-- will | |
| 19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left | |
| 20 .\" double quote, and \*(R" will give a right double quote. \*(C+ will | |
| 21 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and | |
| 22 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, | |
| 23 .\" nothing in troff, for use with C<>. | |
| 24 .tr \(*W- | |
| 25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' | |
| 26 .ie n \{\ | |
| 27 . ds -- \(*W- | |
| 28 . ds PI pi | |
| 29 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch | |
| 30 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch | |
| 31 . ds L" "" | |
| 32 . ds R" "" | |
| 33 . ds C` "" | |
| 34 . ds C' "" | |
| 35 'br\} | |
| 36 .el\{\ | |
| 37 . ds -- \|\(em\| | |
| 38 . ds PI \(*p | |
| 39 . ds L" `` | |
| 40 . ds R" '' | |
| 41 'br\} | |
| 42 .\" | |
| 43 .\" Escape single quotes in literal strings from groff's Unicode transform. | |
| 44 .ie \n(.g .ds Aq \(aq | |
| 45 .el .ds Aq ' | |
| 46 .\" | |
| 47 .\" If the F register is turned on, we'll generate index entries on stderr for | |
| 48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index | |
| 49 .\" entries marked with X<> in POD. Of course, you'll have to process the | |
| 50 .\" output yourself in some meaningful fashion. | |
| 51 .ie \nF \{\ | |
| 52 . de IX | |
| 53 . tm Index:\\$1\t\\n%\t"\\$2" | |
| 54 .. | |
| 55 . nr % 0 | |
| 56 . rr F | |
| 57 .\} | |
| 58 .el \{\ | |
| 59 . de IX | |
| 60 .. | |
| 61 .\} | |
| 62 .\" | |
| 63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). | |
| 64 .\" Fear. Run. Save yourself. No user-serviceable parts. | |
| 65 . \" fudge factors for nroff and troff | |
| 66 .if n \{\ | |
| 67 . ds #H 0 | |
| 68 . ds #V .8m | |
| 69 . ds #F .3m | |
| 70 . ds #[ \f1 | |
| 71 . ds #] \fP | |
| 72 .\} | |
| 73 .if t \{\ | |
| 74 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) | |
| 75 . ds #V .6m | |
| 76 . ds #F 0 | |
| 77 . ds #[ \& | |
| 78 . ds #] \& | |
| 79 .\} | |
| 80 . \" simple accents for nroff and troff | |
| 81 .if n \{\ | |
| 82 . ds ' \& | |
| 83 . ds ` \& | |
| 84 . ds ^ \& | |
| 85 . ds , \& | |
| 86 . ds ~ ~ | |
| 87 . ds / | |
| 88 .\} | |
| 89 .if t \{\ | |
| 90 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" | |
| 91 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' | |
| 92 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' | |
| 93 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' | |
| 94 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' | |
| 95 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' | |
| 96 .\} | |
| 97 . \" troff and (daisy-wheel) nroff accents | |
| 98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' | |
| 99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' | |
| 100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] | |
| 101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' | |
| 102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' | |
| 103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] | |
| 104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] | |
| 105 .ds ae a\h'-(\w'a'u*4/10)'e | |
| 106 .ds Ae A\h'-(\w'A'u*4/10)'E | |
| 107 . \" corrections for vroff | |
| 108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' | |
| 109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' | |
| 110 . \" for low resolution devices (crt and lpr) | |
| 111 .if \n(.H>23 .if \n(.V>19 \ | |
| 112 \{\ | |
| 113 . ds : e | |
| 114 . ds 8 ss | |
| 115 . ds o a | |
| 116 . ds d- d\h'-1'\(ga | |
| 117 . ds D- D\h'-1'\(hy | |
| 118 . ds th \o'bp' | |
| 119 . ds Th \o'LP' | |
| 120 . ds ae ae | |
| 121 . ds Ae AE | |
| 122 .\} | |
| 123 .rm #[ #] #H #V #F C | |
| 124 .\" ======================================================================== | |
| 125 .\" | |
| 126 .IX Title "MOLECULE 1" | |
| 127 .TH MOLECULE 1 "2015-03-29" "perl v5.14.2" "MayaChemTools" | |
| 128 .\" For nroff, turn off justification. Always turn off hyphenation; it makes | |
| 129 .\" way too many mistakes in technical documents. | |
| 130 .if n .ad l | |
| 131 .nh | |
| 132 .SH "NAME" | |
| 133 Molecule \- Molecule class | |
| 134 .SH "SYNOPSIS" | |
| 135 .IX Header "SYNOPSIS" | |
| 136 use Molecule; | |
| 137 .PP | |
| 138 use Molecule qw(:all); | |
| 139 .SH "DESCRIPTION" | |
| 140 .IX Header "DESCRIPTION" | |
| 141 \&\fBMolecule\fR class provides the following methods: | |
| 142 .PP | |
| 143 new, AddAtom, AddAtoms, AddBond, AddBonds, AddHydrogens, AddPolarHydrogens, | |
| 144 ClearRings, Copy, DeleteAromaticity, DeleteAtom, DeleteAtoms, DeleteBond, | |
| 145 DeleteBonds, DeleteHydrogens, DeletePolarHydrogens, DetectAromaticity, | |
| 146 DetectRings, FormatElementalCompositionInformation, GetAllAtomPaths, | |
| 147 GetAllAtomPathsStartingAt, GetAllAtomPathsStartingAtWithLength, | |
| 148 GetAllAtomPathsStartingAtWithLengthUpto, GetAllAtomPathsWithLength, | |
| 149 GetAllAtomPathsWithLengthUpto, GetAromaticRings, GetAromaticityModel, | |
| 150 GetAtomNeighborhoods, GetAtomNeighborhoodsWithRadiusUpto, | |
| 151 GetAtomNeighborhoodsWithSuccessorAtoms, | |
| 152 GetAtomNeighborhoodsWithSuccessorAtomsAndRadiusUpto, GetAtomPathBonds, | |
| 153 GetAtomPaths, GetAtomPathsBetween, GetAtomPathsStartingAt, | |
| 154 GetAtomPathsStartingAtWithLength, GetAtomPathsStartingAtWithLengthUpto, | |
| 155 GetAtomPathsWithLength, GetAtomPathsWithLengthUpto, GetAtoms, GetBonds, GetCharge, | |
| 156 GetConnectedComponents, GetConnectedComponentsAtoms, GetDimensionality, | |
| 157 GetElementalComposition, GetElementsAndNonElements, GetExactMass, GetFormalCharge, | |
| 158 GetFreeRadicalElectrons, GetFusedAndNonFusedRings, GetLargestConnectedComponent, | |
| 159 GetLargestConnectedComponentAtoms, GetLargestRing, GetMolecularFormula, | |
| 160 GetMolecularWeight, GetNumOfAromaticRings, GetNumOfAtoms, GetNumOfBonds, | |
| 161 GetNumOfConnectedComponents, GetNumOfElementsAndNonElements, GetNumOfHeavyAtoms, | |
| 162 GetNumOfHydrogenAtoms, GetNumOfMissingHydrogenAtoms, GetNumOfNonHydrogenAtoms, | |
| 163 GetNumOfRings, GetNumOfRingsWithEvenSize, GetNumOfRingsWithOddSize, | |
| 164 GetNumOfRingsWithSize, GetNumOfRingsWithSizeGreaterThan, | |
| 165 GetNumOfRingsWithSizeLessThan, GetRingBonds, GetRingBondsFromRings, GetRings, | |
| 166 GetRingsWithEvenSize, GetRingsWithOddSize, GetRingsWithSize, | |
| 167 GetRingsWithSizeGreaterThan, GetRingsWithSizeLessThan, GetSizeOfLargestRing, | |
| 168 GetSizeOfSmallestRing, GetSmallestRing, GetSpinMultiplicity, | |
| 169 GetSupportedAromaticityModels, GetTopologicallySortedAtoms, GetValenceModel, | |
| 170 HasAromaticAtomsInRings, HasAromaticAtomsNotInRings, HasAromaticRings, HasAtom, | |
| 171 HasBond, HasFusedRings, HasNoRings, HasOnlyOneRing, HasRings, IsAromatic, | |
| 172 IsMolecule, IsRingAromatic, IsSupportedAromaticityModel, IsThreeDimensional, | |
| 173 IsTwoDimensional, KeepLargestComponent, KekulizeAromaticAtoms, NewAtom, NewBond, | |
| 174 SetActiveRings, SetAromaticityModel, SetID, SetValenceModel, StringifyMolecule | |
| 175 .PP | |
| 176 The following methods can also be used as functions: | |
| 177 .PP | |
| 178 FormatElementalCompositionInformation, IsMolecule | |
| 179 .PP | |
| 180 \&\fBMolecule\fR class is derived from \fBObjectProperty\fR base class which provides methods not explicitly | |
| 181 defined in \fBMolecule\fR or \fBObjectProperty\fR class using Perl's \s-1AUTOLOAD\s0 functionality. These methods | |
| 182 are generated on-the-fly for a specified object property: | |
| 183 .PP | |
| 184 .Vb 3 | |
| 185 \& Set<PropertyName>(<PropertyValue>); | |
| 186 \& $PropertyValue = Get<PropertyName>(); | |
| 187 \& Delete<PropertyName>(); | |
| 188 .Ve | |
| 189 .SS "\s-1METHODS\s0" | |
| 190 .IX Subsection "METHODS" | |
| 191 .IP "\fBnew\fR" 4 | |
| 192 .IX Item "new" | |
| 193 .Vb 1 | |
| 194 \& $NewMolecule = new Molecule([%PropertyNameAndValues]); | |
| 195 .Ve | |
| 196 .Sp | |
| 197 Using specified \fIAtom\fR property names and values hash, \fBnew\fR method creates a new object | |
| 198 and returns a reference to newly created \fBAtom\fR object. By default, the following properties are | |
| 199 initialized: | |
| 200 .Sp | |
| 201 .Vb 2 | |
| 202 \& ID = SequentialObjectID | |
| 203 \& Name = "Molecule <SequentialObjectID>" | |
| 204 .Ve | |
| 205 .Sp | |
| 206 Examples: | |
| 207 .Sp | |
| 208 .Vb 1 | |
| 209 \& $Molecule = new Molecule(); | |
| 210 \& | |
| 211 \& $WaterMolecule = new Molecule(\*(AqName\*(Aq => \*(AqWater\*(Aq); | |
| 212 \& | |
| 213 \& $Oxygen = new Atom(\*(AqAtomSymbol\*(Aq => \*(AqO\*(Aq, \*(AqXYZ\*(Aq => [0, 0, 0]); | |
| 214 \& $Hydrogen1 = new Atom(\*(AqAtomSymbol\*(Aq => \*(AqH\*(Aq, | |
| 215 \& \*(AqXYZ\*(Aq => [0.7144, 0.4125, 0]); | |
| 216 \& $Hydrogen2 = new Atom(\*(AqAtomSymbol\*(Aq => \*(AqH\*(Aq, | |
| 217 \& \*(AqXYZ\*(Aq => [1.1208, \-0.2959, 0]); | |
| 218 \& $WaterMolecule\->AddAtoms($Oxygen, $Hydrogen1, $Hydrogen2); | |
| 219 \& | |
| 220 \& $Bond1 = new Bond(\*(AqAtoms\*(Aq => [$Oxygen, $Hydrogen1], | |
| 221 \& \*(AqBondOrder\*(Aq => 1); | |
| 222 \& $Bond2 = new Bond(\*(AqAtoms\*(Aq => [$Oxygen, $Hydrogen2], | |
| 223 \& \*(AqBondOrder\*(Aq => 1); | |
| 224 \& $WaterMolecule\->AddBonds($Bond1, $Bond2); | |
| 225 .Ve | |
| 226 .IP "\fBAddAtom\fR" 4 | |
| 227 .IX Item "AddAtom" | |
| 228 .Vb 1 | |
| 229 \& $Molecule\->AddAtom($Atom); | |
| 230 .Ve | |
| 231 .Sp | |
| 232 Adds an \fIAtom\fR to a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 233 .IP "\fBAddAtoms\fR" 4 | |
| 234 .IX Item "AddAtoms" | |
| 235 .Vb 1 | |
| 236 \& $Molecule\->AddAtoms(@Atoms); | |
| 237 .Ve | |
| 238 .Sp | |
| 239 Adds \fIAtoms\fR to a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 240 .IP "\fBAddBond\fR" 4 | |
| 241 .IX Item "AddBond" | |
| 242 .Vb 1 | |
| 243 \& $Molecule\->AddBond($Bond); | |
| 244 .Ve | |
| 245 .Sp | |
| 246 Adds a \fIBond\fR to a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 247 .IP "\fBAddBonds\fR" 4 | |
| 248 .IX Item "AddBonds" | |
| 249 .Vb 1 | |
| 250 \& $Molecule\->AddBonds(@Bonds); | |
| 251 .Ve | |
| 252 .Sp | |
| 253 Adds \fIBonds\fR to a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 254 .IP "\fBAddHydrogens\fR" 4 | |
| 255 .IX Item "AddHydrogens" | |
| 256 .Vb 1 | |
| 257 \& $NumOfHydrogensAdded = $Molecule\->AddHydrogens(); | |
| 258 .Ve | |
| 259 .Sp | |
| 260 Adds hydrogens to each atom in a \fIMolecule\fR and returns total number of hydrogens | |
| 261 added. The current release of MayaChemTools doesn't assign hydrogen positions. | |
| 262 .IP "\fBAddPolarHydrogens\fR" 4 | |
| 263 .IX Item "AddPolarHydrogens" | |
| 264 .Vb 1 | |
| 265 \& $NumOfHydrogensAdded = $Molecule\->AddPolarHydrogens(); | |
| 266 .Ve | |
| 267 .Sp | |
| 268 Adds hydrogens to each polar atom \- N, O, P or S \- in a \fIMolecule\fR and returns total | |
| 269 number of polar hydrogens added. The current release of MayaChemTools doesn't | |
| 270 assign hydrogen positions. | |
| 271 .IP "\fBClearRings\fR" 4 | |
| 272 .IX Item "ClearRings" | |
| 273 .Vb 1 | |
| 274 \& $Molecule\->ClearRings(); | |
| 275 .Ve | |
| 276 .Sp | |
| 277 Deletes all rings associated with \fIMolecule\fR and returns \fIMolecule\fR. | |
| 278 .IP "\fBCopy\fR" 4 | |
| 279 .IX Item "Copy" | |
| 280 .Vb 1 | |
| 281 \& $MoleculeCopy = $Molecule\->Copy(); | |
| 282 .Ve | |
| 283 .Sp | |
| 284 Copies \fIMolecule\fR and its associated data using \fBStorable::dclone\fR and returns a new | |
| 285 \&\fBMolecule\fR object. | |
| 286 .IP "\fBDeleteAromaticity\fR" 4 | |
| 287 .IX Item "DeleteAromaticity" | |
| 288 .Vb 1 | |
| 289 \& $Molecule\->DeleteAromaticity(); | |
| 290 .Ve | |
| 291 .Sp | |
| 292 Deletes aromatic property associated with all atoms and bonds in a \fIMolecule\fR and returns | |
| 293 \&\fIMolecule\fR. | |
| 294 .IP "\fBDeleteAtom\fR" 4 | |
| 295 .IX Item "DeleteAtom" | |
| 296 .Vb 1 | |
| 297 \& $Molecule\->DeleteAtom($Atom); | |
| 298 .Ve | |
| 299 .Sp | |
| 300 Deletes \fIAtom\fR from a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 301 .IP "\fBDeleteAtoms\fR" 4 | |
| 302 .IX Item "DeleteAtoms" | |
| 303 .Vb 1 | |
| 304 \& $Molecule\->DeleteAtoms(@Atoms); | |
| 305 .Ve | |
| 306 .Sp | |
| 307 Deletes \fIAtoms\fR from a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 308 .IP "\fBDeleteBond\fR" 4 | |
| 309 .IX Item "DeleteBond" | |
| 310 .Vb 1 | |
| 311 \& $Molecule\->DeleteBond($Bond); | |
| 312 .Ve | |
| 313 .Sp | |
| 314 Deletes \fIBond\fR from a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 315 .IP "\fBDeleteBonds\fR" 4 | |
| 316 .IX Item "DeleteBonds" | |
| 317 .Vb 1 | |
| 318 \& $Molecule\->DeleteBonds(@Bonds); | |
| 319 .Ve | |
| 320 .Sp | |
| 321 Deletes \fIBonds\fR from a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 322 .IP "\fBDeleteHydrogens\fR" 4 | |
| 323 .IX Item "DeleteHydrogens" | |
| 324 .Vb 1 | |
| 325 \& $NumOfHydrogensDeleted = $Molecule\->DeleteHydrogens(); | |
| 326 .Ve | |
| 327 .Sp | |
| 328 Removes hydrogens from each atom in a \fIMolecule\fR and returns total number of hydrogens | |
| 329 deleted. | |
| 330 .IP "\fBDeletePolarHydrogens\fR" 4 | |
| 331 .IX Item "DeletePolarHydrogens" | |
| 332 .Vb 1 | |
| 333 \& $NumOfHydrogensDeleted = $Molecule\->DeletePolarHydrogens(); | |
| 334 .Ve | |
| 335 .Sp | |
| 336 Removes hydrogens to each polar atom \- N, O, P or S \- in a \fIMolecule\fR and returns total | |
| 337 number of polar hydrogens deleted. | |
| 338 .IP "\fBDetectAromaticity\fR" 4 | |
| 339 .IX Item "DetectAromaticity" | |
| 340 .Vb 1 | |
| 341 \& $Molecule\->DetectAromaticity(); | |
| 342 .Ve | |
| 343 .Sp | |
| 344 Associates \fIAromatic\fR property to atoms and bonds involved in aromatic rings or ring | |
| 345 systems in a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 346 .Sp | |
| 347 This method assumes the ring detection has already been perfomed using \fBDetectRings\fR. | |
| 348 And any existing \fIAromatic\fR property associated with atoms and bonds is deleted before | |
| 349 performing aromaticity detection. | |
| 350 .Sp | |
| 351 What is aromaticity? [ Ref 124 ] It's in the code of the implementer, did you | |
| 352 say? Agree. The implementation of aromaticity varies widely across different | |
| 353 packages [ Ref 125 ]; additionally, the implementation details are not always | |
| 354 completely available, and it's not possible to figure out the exact implementation | |
| 355 of aromaticity across various packages. Using the publicly available information, | |
| 356 however, one can try to reproduce the available results to the extent possible, | |
| 357 along with parameterizing all the control parameters used to implement different | |
| 358 aromaticity models, and that's exactly what the current release of MayaChemTools | |
| 359 does. | |
| 360 .Sp | |
| 361 The implementation of aromaticity corresponding to various aromaticity models in | |
| 362 MayaChemTools package is driven by an external \s-1CSV\s0 file AromaticityModelsData.csv, | |
| 363 which is distributed with the package and is available in lib/data directory. The \s-1CSV\s0 | |
| 364 files contains names of supported aromaticity models, along with various control | |
| 365 parameters and their values. This file is loaded and processed during instantiation | |
| 366 of Molecule class and data corresponding to specific aromaticity model are used | |
| 367 to detect aromaticity for that model. Any new aromaticity model added to the | |
| 368 aromaticity data file, using different combinations of values for existing control | |
| 369 parameters, would work without any changes to the code; the addition of any new | |
| 370 control parameters, however, requires its implementation in the code used to | |
| 371 calculate number of pi electrons available towards delocalization in a ring or ring | |
| 372 systems. | |
| 373 .Sp | |
| 374 The current release of MayaChemTools package supports these aromaticity | |
| 375 models: MDLAromaticityModel, TriposAromaticityModel, MMFFAromaticityModel, | |
| 376 ChemAxonBasicAromaticityModel, ChemAxonGeneralAromaticityModel, | |
| 377 DaylightAromaticityModel, MayaChemToolsAromaticityModel. | |
| 378 .Sp | |
| 379 The current list of control parameters available to detect aromaticity corresponding | |
| 380 to different aromaticity models are: AllowHeteroRingAtoms, HeteroRingAtomsList, | |
| 381 AllowExocyclicDoubleBonds, AllowHomoNuclearExocyclicDoubleBonds, | |
| 382 AllowElectronegativeRingAtomExocyclicDoubleBonds, AllowRingAtomFormalCharge, | |
| 383 AllowHeteroRingAtomFormalCharge, MinimumRingSize. The values for these control | |
| 384 parameters are specified in AromaticityModelsData.csv file. | |
| 385 .Sp | |
| 386 Although definition of aromaticity differs across various aromaticity models, a ring | |
| 387 or a ring system containing 4n + 2 pi electrons (Huckel's rule) corresponding to | |
| 388 alternate single and double bonds, in general, is considered aromatic. | |
| 389 .Sp | |
| 390 The available valence free electrons on heterocyclic ring atoms, involved in two single | |
| 391 ring bonds, are also allowed to participate in pi electron delocalizaiton for most of | |
| 392 the supported aromaticity models. | |
| 393 .Sp | |
| 394 The presence of exocyclic terminal double bond on ring atoms involved in pi electron | |
| 395 delocalization is only allowed for some of the aromaticity models. Additionally, the type | |
| 396 atoms involved in exocyclic terminal double bonds may result in making a ring or ring | |
| 397 system non-aromatic. | |
| 398 .Sp | |
| 399 For molecules containing fused rings, each fused ring set is considered as one aromatic | |
| 400 system for counting pi electrons to satisfy Huckel's rule; In case of a failure, rings in | |
| 401 fused set are treated individually for aromaticity detection. Additionally, non-fused | |
| 402 rings are handled on their own during aromaticity detection. | |
| 403 .IP "\fBDetectRings\fR" 4 | |
| 404 .IX Item "DetectRings" | |
| 405 .Vb 1 | |
| 406 \& $Molecule\->DetectRings(); | |
| 407 .Ve | |
| 408 .Sp | |
| 409 Detects rings in a \fIMolecule\fR and returns \fIMolecule\fR. Ring detection is performed using | |
| 410 \&\fBDetectCycles\fR method avaible in \fBGraph\fR class which in turn uses methods available | |
| 411 \&\fBGraph::CyclesDetection\fR class. \fBGraph::CyclesDetection\fR class implements collapsing path graph | |
| 412 [Ref 31] methodology to detect all cycles in a graph. | |
| 413 .IP "\fBFormatElementalCompositionInformation\fR" 4 | |
| 414 .IX Item "FormatElementalCompositionInformation" | |
| 415 .Vb 6 | |
| 416 \& $FormattedInfo = $Molecule\->FormatElementalCompositionInformation( | |
| 417 \& $ElementsRef, $ElementCompositionRef, | |
| 418 \& [$Precision]); | |
| 419 \& $FormattedInfo = Molecule::FormatElementalCompositionInformation( | |
| 420 \& $ElementsRef, $ElementCompositionRef, | |
| 421 \& [$Precision]); | |
| 422 .Ve | |
| 423 .Sp | |
| 424 Using \fIElementsRef\fR and \fIElementCompositionRef\fR arrays referneces containg informatio | |
| 425 about elements and their composition, formats elemental composition information and returns | |
| 426 a \fIFormattedInfo\fR string. Defaule \fIPrecision\fR value: \fI2\fR. | |
| 427 .IP "\fBGetAromaticityModel\fR" 4 | |
| 428 .IX Item "GetAromaticityModel" | |
| 429 .Vb 1 | |
| 430 \& $AromaticityModel = $Molecule\->GetAromaticityModel(); | |
| 431 .Ve | |
| 432 .Sp | |
| 433 Returns name of \fBAromaticityModel\fR set for \fIMolecule\fR corresponding to \fBAromaticityModel\fR | |
| 434 property or default model name of \fBMayaChemToolsAromaticityModel\fR. | |
| 435 .IP "\fBGetAllAtomPaths\fR" 4 | |
| 436 .IX Item "GetAllAtomPaths" | |
| 437 .Vb 1 | |
| 438 \& $AtomPathsRef = $Molecule\->GetAllAtomPaths([$AllowCycles]); | |
| 439 .Ve | |
| 440 .Sp | |
| 441 Returns all paths as a reference to an array containing reference to arrays with path | |
| 442 \&\fBAtom\fR objects. | |
| 443 .Sp | |
| 444 Path atoms correspond to to all possible paths for each atom in molecule with all | |
| 445 possible lengths and sharing of bonds in paths traversed. By default, rings are | |
| 446 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 447 .Sp | |
| 448 For molecule without any rings, this method returns the same set of atom paths as | |
| 449 \&\fBGetAtomPaths\fR method. | |
| 450 .IP "\fBGetAllAtomPathsStartingAt\fR" 4 | |
| 451 .IX Item "GetAllAtomPathsStartingAt" | |
| 452 .Vb 2 | |
| 453 \& $AtomPathsRef = $Molecule\->GetAllAtomPathsStartingAt($StartAtom, | |
| 454 \& [$AllowCycles]); | |
| 455 .Ve | |
| 456 .Sp | |
| 457 Returns all atom paths starting from \fIStartAtom\fR as a reference to an array containing | |
| 458 reference to arrays with path \fBAtom\fR objects. | |
| 459 .Sp | |
| 460 Path atoms atoms correspond to to all possible paths for specified atom in molecule with all | |
| 461 possible lengths and sharing of bonds in paths traversed. By default, rings are | |
| 462 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 463 .Sp | |
| 464 For molecule without any rings, this method returns the same set of atom paths as | |
| 465 \&\fBGetAtomPathsStartingAt\fR method. | |
| 466 .IP "\fBGetAllAtomPathsStartingAtWithLength\fR" 4 | |
| 467 .IX Item "GetAllAtomPathsStartingAtWithLength" | |
| 468 .Vb 2 | |
| 469 \& $AtomPathsRef = $Molecule\->GetAllAtomPathsStartingAtWithLength( | |
| 470 \& $StartAtom, $Length, [$AllowCycles]); | |
| 471 .Ve | |
| 472 .Sp | |
| 473 Returns all atom paths starting from \fIStartAtom\fR with specified \fILength\fRas a reference | |
| 474 to an array containing reference to arrays with path \fBAtom\fR objects. | |
| 475 .Sp | |
| 476 Path atoms atoms correspond to to all possible paths for specified atom in molecule with all | |
| 477 possible lengths and sharing of bonds in paths traversed. By default, rings are | |
| 478 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 479 .Sp | |
| 480 For molecule without any rings, this method returns the same set of atom paths as | |
| 481 \&\fBGetAtomPathsStartingAtWithLength\fR method. | |
| 482 .IP "\fBGetAllAtomPathsStartingAtWithLengthUpto\fR" 4 | |
| 483 .IX Item "GetAllAtomPathsStartingAtWithLengthUpto" | |
| 484 .Vb 2 | |
| 485 \& $AtomPathsRef = $Molecule\->GetAllAtomPathsStartingAtWithLengthUpto( | |
| 486 \& $StartAtom, $Length, [$AllowCycles]); | |
| 487 .Ve | |
| 488 .Sp | |
| 489 Returns atom paths starting from \fIStartAtom\fR with length up to \fILength\fR as a reference | |
| 490 to an array containing reference to arrays with path \fBAtom\fR objects. | |
| 491 .Sp | |
| 492 Path atoms atoms correspond to all possible paths for specified atom in molecule with length | |
| 493 up to a specified length and sharing of bonds in paths traversed. By default, rings are | |
| 494 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 495 .Sp | |
| 496 For molecule without any rings, this method returns the same set of atom paths as | |
| 497 \&\fIGetAtomPathsStartingAtWithLengthUpto\fR method. | |
| 498 .IP "\fBGetAllAtomPathsWithLength\fR" 4 | |
| 499 .IX Item "GetAllAtomPathsWithLength" | |
| 500 .Vb 2 | |
| 501 \& $AtomPathsRef = $Molecule\->GetAllAtomPathsWithLength($Length, | |
| 502 \& [$AllowCycles]); | |
| 503 .Ve | |
| 504 .Sp | |
| 505 Returns all atom paths with specified \fILength\fR as a reference to an array containing | |
| 506 reference to arrays with path \fBAtom\fR objects. | |
| 507 .Sp | |
| 508 Path atoms correspond to to all possible paths for each atom in molecule with length | |
| 509 up to a specified length and sharing of bonds in paths traversed. By default, rings are | |
| 510 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 511 .Sp | |
| 512 For molecule without any rings, this method returns the same set of atom paths as | |
| 513 as \fIGetAtomPathsWithLength\fR method. | |
| 514 .IP "\fBGetAllAtomPathsWithLengthUpto\fR" 4 | |
| 515 .IX Item "GetAllAtomPathsWithLengthUpto" | |
| 516 .Vb 2 | |
| 517 \& $AtomPathsRef = $Molecule\->GetAllAtomPathsWithLengthUpto($Length, | |
| 518 \& [$AllowCycles]); | |
| 519 .Ve | |
| 520 .Sp | |
| 521 Returns all atom paths with length up to \fILength\fR as a reference to an array containing | |
| 522 reference to arrays with path \fBAtom\fR objects. | |
| 523 .Sp | |
| 524 Path atoms correspond to to all possible paths for each atom in molecule with length | |
| 525 up to a specified length and sharing of bonds in paths traversed. By default, rings are | |
| 526 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 527 .Sp | |
| 528 For molecule without any rings, this method returns the same set of atom paths as | |
| 529 as \fIGetAtomPathsWithLengthUpto\fR method. | |
| 530 .IP "\fBGetAromaticRings\fR" 4 | |
| 531 .IX Item "GetAromaticRings" | |
| 532 .Vb 1 | |
| 533 \& @AtomaticRings = $Molecule\->GetAromaticRings(); | |
| 534 .Ve | |
| 535 .Sp | |
| 536 Returns aromatic rings as an array containing references to arrays of ring \fIAtom\fR objects | |
| 537 in a \fIMolecule\fR. | |
| 538 .IP "\fBGetAtomNeighborhoods\fR" 4 | |
| 539 .IX Item "GetAtomNeighborhoods" | |
| 540 .Vb 1 | |
| 541 \& @Neighborhoods = $Molecule\->GetAtomNeighborhoods($StartAtom); | |
| 542 .Ve | |
| 543 .Sp | |
| 544 Returns atom neighborhoods around a \fIStartAtom\fR as an array containing references | |
| 545 to arrays with neighborhood \fIAtom\fR objects at possible radii. | |
| 546 .IP "\fBGetAtomNeighborhoodsWithRadiusUpto\fR" 4 | |
| 547 .IX Item "GetAtomNeighborhoodsWithRadiusUpto" | |
| 548 .Vb 2 | |
| 549 \& @Neighborhoods = $Molecule\->GetAtomNeighborhoodsWithRadiusUpto($StartAtom, | |
| 550 \& $Radius); | |
| 551 .Ve | |
| 552 .Sp | |
| 553 Returns atom neighborhoods around a \fIStartAtom\fR as an array containing references | |
| 554 to arrays with neighborhood \fIAtom\fR objects up to \fIRadius\fR. | |
| 555 .IP "\fBGetAtomNeighborhoodsWithSuccessorAtoms\fR" 4 | |
| 556 .IX Item "GetAtomNeighborhoodsWithSuccessorAtoms" | |
| 557 .Vb 2 | |
| 558 \& @Neighborhoods = $Molecule\->GetAtomNeighborhoodsWithSuccessorAtoms( | |
| 559 \& $StartAtom); | |
| 560 .Ve | |
| 561 .Sp | |
| 562 Returns atom neighborhood around a specified \fIStartAtom\fR, along with their successor | |
| 563 connected atoms, collected at all radii as an array containing references to arrays with first | |
| 564 value corresponding to neighborhood atom at a specific radius and second value as reference | |
| 565 to an array containing its successor connected atoms. | |
| 566 .Sp | |
| 567 For a neighborhood atom at each radius level, the successor connected atoms correspond to the | |
| 568 neighborhood atoms at the next radius level. Consequently, the neighborhood atoms at the last | |
| 569 radius level don't contain any successor atoms which fall outside the range of specified radius. | |
| 570 .IP "\fBGetAtomNeighborhoodsWithSuccessorAtomsAndRadiusUpto\fR" 4 | |
| 571 .IX Item "GetAtomNeighborhoodsWithSuccessorAtomsAndRadiusUpto" | |
| 572 .Vb 2 | |
| 573 \& @Neighborhoods = $Molecule\->GetAtomNeighborhoodsWithSuccessorAtomsAndRadiusUpto( | |
| 574 \& $StartAtom, $Radius); | |
| 575 .Ve | |
| 576 .Sp | |
| 577 Returns atom neighborhood around a specified \fIStartAtom\fR, along with their successor | |
| 578 connected atoms, collected upto specified \fIRadiud\fR as an array containing references to arrays | |
| 579 with first value corresponding to neighborhood atom at a specific radius and second value as | |
| 580 reference to an array containing its successor connected atoms. | |
| 581 .Sp | |
| 582 For a neighborhood atom at each radius level, the successor connected atoms correspond to the | |
| 583 neighborhood atoms at the next radius level. Consequently, the neighborhood atoms at the last | |
| 584 radius level don't contain any successor atoms which fall outside the range of specified radius. | |
| 585 .IP "\fBGetAtomPathBonds\fR" 4 | |
| 586 .IX Item "GetAtomPathBonds" | |
| 587 .Vb 1 | |
| 588 \& $Return = $Molecule\->GetAtomPathBonds(@PathAtoms); | |
| 589 .Ve | |
| 590 .Sp | |
| 591 Returns an array containing \fBBond\fR objects corresponding to successive pair of | |
| 592 atoms in \fIPathAtoms\fR | |
| 593 .IP "\fBGetAtomPaths\fR" 4 | |
| 594 .IX Item "GetAtomPaths" | |
| 595 .Vb 1 | |
| 596 \& $AtomPathsRef = $Molecule\->GetAtomPaths([$AllowCycles]); | |
| 597 .Ve | |
| 598 .Sp | |
| 599 Returns all paths as a reference to an array containing reference to arrays with path | |
| 600 \&\fBAtom\fR objects. | |
| 601 .Sp | |
| 602 Path atoms correspond to to all possible paths for each atom in molecule with all | |
| 603 possible lengths and no sharing of bonds in paths traversed. By default, rings are | |
| 604 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 605 .IP "\fBGetAtomPathsBetween\fR" 4 | |
| 606 .IX Item "GetAtomPathsBetween" | |
| 607 .Vb 1 | |
| 608 \& $AtomPathsRef = $Molecule\->GetAtomPathsBetween($StartAtom, $EndAtom); | |
| 609 .Ve | |
| 610 .Sp | |
| 611 Returns all paths as between \fIStartAtom\fR and \fIEndAtom\fR as a reference to an array | |
| 612 containing reference to arrays with path \fBAtom\fR objects. | |
| 613 .Sp | |
| 614 For molecules with rings, atom paths array contains may contain two paths. | |
| 615 .IP "\fBGetAtomPathsStartingAt\fR" 4 | |
| 616 .IX Item "GetAtomPathsStartingAt" | |
| 617 .Vb 1 | |
| 618 \& $AtomPathsRef = $Molecule\->GetAtomPathsStartingAt($StartAtom, [$AllowCycles]); | |
| 619 .Ve | |
| 620 .Sp | |
| 621 Returns paths starting at \fIStartAtom\fR as a reference to an array containing reference to | |
| 622 arrays with path \fBAtom\fR objects. | |
| 623 .Sp | |
| 624 Path atoms correspond to all possible paths for specified atom in molecule with all | |
| 625 possible lengths and no sharing of bonds in paths traversed. By default, rings are | |
| 626 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 627 .IP "\fBGetAtomPathsStartingAtWithLength\fR" 4 | |
| 628 .IX Item "GetAtomPathsStartingAtWithLength" | |
| 629 .Vb 2 | |
| 630 \& $AtomPathsRef = $Molecule\->GetAtomPathsStartingAtWithLength($StartAtom, | |
| 631 \& $Length, [$AllowCycles]); | |
| 632 .Ve | |
| 633 .Sp | |
| 634 Returns paths starting at \fIStartAtom\fR with length \fILength\fR as a reference to an array | |
| 635 containing reference to arrays with path \fBAtom\fR objects. | |
| 636 .Sp | |
| 637 Path atoms correspond to all possible paths for specified atom in molecule with length | |
| 638 upto a specified length and no sharing of bonds in paths traversed. By default, rings are | |
| 639 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 640 .IP "\fBGetAtomPathsStartingAtWithLengthUpto\fR" 4 | |
| 641 .IX Item "GetAtomPathsStartingAtWithLengthUpto" | |
| 642 .Vb 2 | |
| 643 \& $AtomPathsRef = $Molecule\->GetAtomPathsStartingAtWithLengthUpto($StartAtom, | |
| 644 \& $Length, [$AllowCycles]); | |
| 645 .Ve | |
| 646 .Sp | |
| 647 Returns paths starting at \fIStartAtom\fR with length up to \fILength\fR as a reference to an array | |
| 648 containing reference to arrays with path \fBAtom\fR objects. | |
| 649 .Sp | |
| 650 Path atoms correspond to all possible paths for specified atom in molecule with length | |
| 651 upto a specified length and no sharing of bonds in paths traversed. By default, rings are | |
| 652 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 653 .IP "\fBGetAtomPathsWithLength\fR" 4 | |
| 654 .IX Item "GetAtomPathsWithLength" | |
| 655 .Vb 1 | |
| 656 \& $AtomPathsRef = $Molecule\->GetAtomPathsWithLength($Length, [$AllowCycles]); | |
| 657 .Ve | |
| 658 .Sp | |
| 659 Returns all paths with specified \fILength\fR as a reference to an array containing reference | |
| 660 to arrays with path \fBAtom\fR objects. | |
| 661 .Sp | |
| 662 Path atoms correspond to all possible paths for each atom in molecule with length | |
| 663 upto a specified length and no sharing of bonds in paths traversed. By default, rings are | |
| 664 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 665 .IP "\fBGetAtomPathsWithLengthUpto\fR" 4 | |
| 666 .IX Item "GetAtomPathsWithLengthUpto" | |
| 667 .Vb 1 | |
| 668 \& $AtomPathsRef = $Molecule\->GetAtomPathsWithLengthUpto($Length, [$AllowCycles]); | |
| 669 .Ve | |
| 670 .Sp | |
| 671 Returns all paths with length up to \fILength\fR as a reference to an array containing reference | |
| 672 to arrays with path \fBAtom\fR objects. | |
| 673 .Sp | |
| 674 Path atoms correspond to all possible paths for each atom in molecule with length | |
| 675 upto a specified length and no sharing of bonds in paths traversed. By default, rings are | |
| 676 included in paths. A path containing a ring is terminated at an atom completing the ring. | |
| 677 .IP "\fBGetAtoms\fR" 4 | |
| 678 .IX Item "GetAtoms" | |
| 679 .Vb 2 | |
| 680 \& @AllAtoms = $Molecule\->GetAtoms(); | |
| 681 \& @PolarAtoms = $Molecule\->GetAtoms(\*(AqIsPolarAtom\*(Aq); | |
| 682 \& | |
| 683 \& $NegateMethodResult = 1; | |
| 684 \& @NonHydrogenAtoms = $Molecule\->GetAtoms(\*(AqIsHydrogenAtom\*(Aq, | |
| 685 \& $NegateMethodResult); | |
| 686 \& | |
| 687 \& $AtomsCount = $Molecule\->GetAtoms(); | |
| 688 .Ve | |
| 689 .Sp | |
| 690 Returns an array of \fIAtoms\fR in a \fIMolecule\fR. In scalar context, it returns number of atoms. | |
| 691 Additionally, \fBAtoms\fR array can be filtered by any user specifiable valid \fBAtom\fR class method | |
| 692 and the result of the \fBAtom\fR class method used to filter the atoms can also be negated by | |
| 693 an optional negate results flag as third parameter. | |
| 694 .IP "\fBGetBonds\fR" 4 | |
| 695 .IX Item "GetBonds" | |
| 696 .Vb 2 | |
| 697 \& @Bonds = $Molecule\->GetBonds(); | |
| 698 \& $BondsCount = $Molecule\->GetBonds(); | |
| 699 .Ve | |
| 700 .Sp | |
| 701 Returns an array of \fIBonds\fR in a \fIMolecule\fR. In scalar context, it returns number of bonds. | |
| 702 .IP "\fBGetCharge\fR" 4 | |
| 703 .IX Item "GetCharge" | |
| 704 .Vb 1 | |
| 705 \& $Charge = $Molecule\->GetCharge(); | |
| 706 .Ve | |
| 707 .Sp | |
| 708 Returns net charge on a \fIMolecule\fR using one of the following two methods: explicitly | |
| 709 set \fBCharge\fR property or sum of partial atomic charges on each atom. | |
| 710 .IP "\fBGetConnectedComponents\fR" 4 | |
| 711 .IX Item "GetConnectedComponents" | |
| 712 .Vb 1 | |
| 713 \& @ConnectedComponents = $Molecule\->GetConnectedComponents(); | |
| 714 .Ve | |
| 715 .Sp | |
| 716 Returns a reference to an array containing \fIMolecule\fR objects corresponding | |
| 717 to connected components sorted in decreasing order of component size in a \fIMolecule\fR. | |
| 718 .IP "\fBGetConnectedComponentsAtoms\fR" 4 | |
| 719 .IX Item "GetConnectedComponentsAtoms" | |
| 720 .Vb 2 | |
| 721 \& @ConnectedComponentsAtoms = | |
| 722 \& $Molecule\->GetConnectedComponentsAtoms(); | |
| 723 .Ve | |
| 724 .Sp | |
| 725 Returns an array containing references to arrays with \fIAtom\fR objects corresponding to | |
| 726 atoms of connected components sorted in order of component decreasing size in a | |
| 727 \&\fIMolecule\fR. | |
| 728 .IP "\fBGetDimensionality\fR" 4 | |
| 729 .IX Item "GetDimensionality" | |
| 730 .Vb 1 | |
| 731 \& $Dimensionality = $Molecule\->GetDimensionality(); | |
| 732 .Ve | |
| 733 .Sp | |
| 734 Returns \fIDimensionality\fR of a \fIMolecule\fR corresponding to explicitly set | |
| 735 \&\fIDimensionality\fR property value or by processing atomic. | |
| 736 .Sp | |
| 737 The \fIDimensionality\fR value from atomic coordinates is calculated as follows: | |
| 738 .Sp | |
| 739 .Vb 4 | |
| 740 \& 3D \- Three dimensional: One of X, Y or Z coordinate is non\-zero | |
| 741 \& 2D \- Two dimensional: One of X or Y coordinate is non\-zero; All Z | |
| 742 \& coordinates are zero | |
| 743 \& 0D \- Zero dimensional: All atomic coordinates are zero | |
| 744 .Ve | |
| 745 .IP "\fBGetElementalComposition\fR" 4 | |
| 746 .IX Item "GetElementalComposition" | |
| 747 .Vb 2 | |
| 748 \& ($ElementsRef, $CompositionRef) = | |
| 749 \& $Molecule\->GetElementalComposition([$IncludeMissingHydrogens]); | |
| 750 .Ve | |
| 751 .Sp | |
| 752 Calculates elemental composition and returns references to arrays containing elements | |
| 753 and their percent composition in a \fIMolecule\fR. By default, missing hydrogens are included | |
| 754 during the calculation. | |
| 755 .IP "\fBGetElementsAndNonElements\fR" 4 | |
| 756 .IX Item "GetElementsAndNonElements" | |
| 757 .Vb 2 | |
| 758 \& ($ElementsRef, $NonElementsRef) = | |
| 759 \& $Molecule\->GetElementsAndNonElements([$IncludeMissingHydrogens]); | |
| 760 .Ve | |
| 761 .Sp | |
| 762 Counts elements and non-elements in a \fIMolecule\fR and returns references to hashes | |
| 763 containing element and non-element as hash keys with values corresponding to their | |
| 764 count. By default, missing hydrogens are not added to the element hash. | |
| 765 .IP "\fBGetExactMass\fR" 4 | |
| 766 .IX Item "GetExactMass" | |
| 767 .Vb 1 | |
| 768 \& $ExactMass = $Molecule\->GetExactMass(); | |
| 769 .Ve | |
| 770 .Sp | |
| 771 Returns exact mass of a \fIMolecule\fR corresponding to sum of exact masses of all | |
| 772 the atoms. | |
| 773 .IP "\fBGetFormalCharge\fR" 4 | |
| 774 .IX Item "GetFormalCharge" | |
| 775 .Vb 1 | |
| 776 \& $FormalCharge = $Molecule\->GetFormalCharge(); | |
| 777 .Ve | |
| 778 .Sp | |
| 779 Returns net formal charge on a \fIMolecule\fR using one of the following two methods: explicitly | |
| 780 set \fBFormalCharge\fR property or sum of formal charges on each atom. | |
| 781 .Sp | |
| 782 \&\fBFormalCharge\fR is different from \fBCharge\fR property of the molecule which corresponds to | |
| 783 sum of partial atomic charges explicitly set for each atom using a specific methodology. | |
| 784 .IP "\fBGetFreeRadicalElectrons\fR" 4 | |
| 785 .IX Item "GetFreeRadicalElectrons" | |
| 786 .Vb 1 | |
| 787 \& $FreeRadicalElectrons = $Molecule\->GetFreeRadicalElectrons(); | |
| 788 .Ve | |
| 789 .Sp | |
| 790 Returns total number of free radical electrons available in a \fIMolecule\fR using one of the | |
| 791 following two methods: explicitly set \fBFreeRadicalElectrons\fR property or sum of available | |
| 792 free radical electrons on each atom. | |
| 793 .IP "\fBGetFusedAndNonFusedRings\fR" 4 | |
| 794 .IX Item "GetFusedAndNonFusedRings" | |
| 795 .Vb 2 | |
| 796 \& ($FusedRingSetRef, $NonFusedRingsRef) = | |
| 797 \& $Molecule\->GetFusedAndNonFusedRings(); | |
| 798 .Ve | |
| 799 .Sp | |
| 800 Returns references to array of fused ring sets and non-fused rings in a \fIMolecule\fR. Fused ring sets | |
| 801 array reference contains refernces to arrays of rings corresponding to ring \fIAtom\fR objects; | |
| 802 Non-fused rings array reference contains references to arrays of ring \fIAtom\fR objects. | |
| 803 .IP "\fBGetLargestConnectedComponent\fR" 4 | |
| 804 .IX Item "GetLargestConnectedComponent" | |
| 805 .Vb 1 | |
| 806 \& $ComponentMolecule = $Molecule\->GetLargestConnectedComponent(); | |
| 807 .Ve | |
| 808 .Sp | |
| 809 Returns a reference to \fBMolecule\fR object corresponding to a largest connected component | |
| 810 in a \fIMolecule\fR. | |
| 811 .IP "\fBGetLargestConnectedComponentAtoms\fR" 4 | |
| 812 .IX Item "GetLargestConnectedComponentAtoms" | |
| 813 .Vb 1 | |
| 814 \& @ComponentAtoms = $Molecule\->GetLargestConnectedComponentAtoms(); | |
| 815 .Ve | |
| 816 .Sp | |
| 817 Returns a reference to an array of \fBAtom\fR objects corresponding to a largest connected | |
| 818 component in a \fIMolecule\fR. | |
| 819 .IP "\fBGetLargestRing\fR" 4 | |
| 820 .IX Item "GetLargestRing" | |
| 821 .Vb 1 | |
| 822 \& @RingAtoms = $Molecule\->GetLargestRing(); | |
| 823 .Ve | |
| 824 .Sp | |
| 825 Returns an array of \fIAtoms\fR objects corresponding to a largest ring in a \fIMolecule\fR. | |
| 826 .IP "\fBGetMolecularFormula\fR" 4 | |
| 827 .IX Item "GetMolecularFormula" | |
| 828 .Vb 3 | |
| 829 \& $FormulaString = $Molecule\->GetMolecularFormula( | |
| 830 \& [$IncludeMissingHydrogens, | |
| 831 \& $IncludeNonElements]); | |
| 832 .Ve | |
| 833 .Sp | |
| 834 Returns molecular formula of a \fIMolecule\fR by collecting information about all atoms in | |
| 835 the molecule and composing the formula using Hills ordering system: | |
| 836 .Sp | |
| 837 .Vb 4 | |
| 838 \& o C shows up first and H follows assuming C is present. | |
| 839 \& o All other standard elements are sorted alphanumerically. | |
| 840 \& o All other non\-stanard atom symbols are also sorted | |
| 841 \& alphanumerically and follow standard elements. | |
| 842 .Ve | |
| 843 .Sp | |
| 844 Notes: | |
| 845 .Sp | |
| 846 .Vb 4 | |
| 847 \& o By default, missing hydrogens and nonelements are also included. | |
| 848 \& o Elements for disconnected fragments are combined into the same | |
| 849 \& formula. | |
| 850 \& o Formal charge is also used during compoisiton of molecular formula. | |
| 851 .Ve | |
| 852 .IP "\fBGetMolecularWeight\fR" 4 | |
| 853 .IX Item "GetMolecularWeight" | |
| 854 .Vb 1 | |
| 855 \& $MolWeight = $Molecule\->GetMolecularWeight(); | |
| 856 .Ve | |
| 857 .Sp | |
| 858 Returns molecular weight of a \fIMolecule\fR corresponding to sum of atomic weights of all | |
| 859 the atoms. | |
| 860 .IP "\fBGetNumOfAromaticRings\fR" 4 | |
| 861 .IX Item "GetNumOfAromaticRings" | |
| 862 .Vb 1 | |
| 863 \& $NumOfAromaticRings = $Molecule\->GetNumOfAromaticRings(); | |
| 864 .Ve | |
| 865 .Sp | |
| 866 Returns number of aromatic rings in a \fIMolecule\fR. | |
| 867 .IP "\fBGetNumOfAtoms\fR" 4 | |
| 868 .IX Item "GetNumOfAtoms" | |
| 869 .Vb 1 | |
| 870 \& $NumOfAtoms = $Molecule\->GetNumOfAtoms(); | |
| 871 .Ve | |
| 872 .Sp | |
| 873 Returns number of atoms in a \fIMolecule\fR. | |
| 874 .IP "\fBGetNumOfBonds\fR" 4 | |
| 875 .IX Item "GetNumOfBonds" | |
| 876 .Vb 1 | |
| 877 \& $NumOfBonds = $Molecule\->GetNumOfBonds(); | |
| 878 .Ve | |
| 879 .Sp | |
| 880 Returns number of bonds in a \fIMolecule\fR. | |
| 881 .IP "\fBGetNumOfConnectedComponents\fR" 4 | |
| 882 .IX Item "GetNumOfConnectedComponents" | |
| 883 .Vb 1 | |
| 884 \& $NumOfComponents = $Molecule\->GetNumOfConnectedComponents(); | |
| 885 .Ve | |
| 886 .Sp | |
| 887 Returns number of connected components in a \fIMolecule\fR. | |
| 888 .IP "\fBGetNumOfElementsAndNonElements\fR" 4 | |
| 889 .IX Item "GetNumOfElementsAndNonElements" | |
| 890 .Vb 4 | |
| 891 \& ($NumOfElements, $NumOfNonElements) = $Molecule\-> | |
| 892 \& GetNumOfElementsAndNonElements(); | |
| 893 \& ($NumOfElements, $NumOfNonElements) = $Molecule\-> | |
| 894 \& GetNumOfElementsAndNonElements($IncludeMissingHydrogens); | |
| 895 .Ve | |
| 896 .Sp | |
| 897 Returns number of elements and non-elements in a \fIMolecule\fR. By default, missing | |
| 898 hydrogens are not added to element count. | |
| 899 .IP "\fBGetNumOfHeavyAtoms\fR" 4 | |
| 900 .IX Item "GetNumOfHeavyAtoms" | |
| 901 .Vb 1 | |
| 902 \& $NumOfHeavyAtoms = $Molecule\->GetNumOfHeavyAtoms(); | |
| 903 .Ve | |
| 904 .Sp | |
| 905 Returns number of heavy atoms, non-hydrogen atoms, in a \fIMolecule\fR. | |
| 906 .IP "\fBGetNumOfHydrogenAtoms\fR" 4 | |
| 907 .IX Item "GetNumOfHydrogenAtoms" | |
| 908 .Vb 1 | |
| 909 \& $NumOfHydrogenAtoms = $Molecule\->GetNumOfHydrogenAtoms(); | |
| 910 .Ve | |
| 911 .Sp | |
| 912 Returns number of hydrogen atoms in a \fIMolecule\fR. | |
| 913 .IP "\fBGetNumOfMissingHydrogenAtoms\fR" 4 | |
| 914 .IX Item "GetNumOfMissingHydrogenAtoms" | |
| 915 .Vb 1 | |
| 916 \& $NumOfMissingHydrogenAtoms = $Molecule\->GetNumOfMissingHydrogenAtoms(); | |
| 917 .Ve | |
| 918 .Sp | |
| 919 Returns number of hydrogen atoms in a \fIMolecule\fR. | |
| 920 .IP "\fBGetNumOfNonHydrogenAtoms\fR" 4 | |
| 921 .IX Item "GetNumOfNonHydrogenAtoms" | |
| 922 .Vb 1 | |
| 923 \& $NumOfNonHydrogenAtoms = $Molecule\->GetNumOfNonHydrogenAtoms(); | |
| 924 .Ve | |
| 925 .Sp | |
| 926 Returns number of non-hydrogen atoms in a \fIMolecule\fR. | |
| 927 .IP "\fBGetNumOfRings\fR" 4 | |
| 928 .IX Item "GetNumOfRings" | |
| 929 .Vb 1 | |
| 930 \& $RingCount = $Molecule\->GetNumOfRings(); | |
| 931 .Ve | |
| 932 .Sp | |
| 933 Returns number of rings in a \fIMolecule\fR. | |
| 934 .IP "\fBGetNumOfRingsWithEvenSize\fR" 4 | |
| 935 .IX Item "GetNumOfRingsWithEvenSize" | |
| 936 .Vb 1 | |
| 937 \& $RingCount = $Molecule\->GetNumOfRingsWithEvenSize(); | |
| 938 .Ve | |
| 939 .Sp | |
| 940 Returns number of rings with even size in a \fIMolecule\fR. | |
| 941 .IP "\fBGetNumOfRingsWithOddSize\fR" 4 | |
| 942 .IX Item "GetNumOfRingsWithOddSize" | |
| 943 .Vb 1 | |
| 944 \& $RingCount = $Molecule\->GetNumOfRingsWithOddSize(); | |
| 945 .Ve | |
| 946 .Sp | |
| 947 Returns number of rings with odd size in a \fIMolecule\fR. | |
| 948 .IP "\fBGetNumOfRingsWithSize\fR" 4 | |
| 949 .IX Item "GetNumOfRingsWithSize" | |
| 950 .Vb 1 | |
| 951 \& $RingCount = $Molecule\->GetNumOfRingsWithSize($Size); | |
| 952 .Ve | |
| 953 .Sp | |
| 954 Returns number of rings with \fISize\fR in a \fIMolecule\fR. | |
| 955 .IP "\fBGetNumOfRingsWithSizeGreaterThan\fR" 4 | |
| 956 .IX Item "GetNumOfRingsWithSizeGreaterThan" | |
| 957 .Vb 1 | |
| 958 \& $RingCount = $Molecule\->GetNumOfRingsWithSizeGreaterThan($Size); | |
| 959 .Ve | |
| 960 .Sp | |
| 961 Returns number of rings with size greater than \fISize\fR in a \fIMolecule\fR. | |
| 962 .IP "\fBGetNumOfRingsWithSizeLessThan\fR" 4 | |
| 963 .IX Item "GetNumOfRingsWithSizeLessThan" | |
| 964 .Vb 1 | |
| 965 \& $RingCount = $Molecule\->GetNumOfRingsWithSizeLessThan($Size); | |
| 966 .Ve | |
| 967 .Sp | |
| 968 Returns number of rings with size less than \fISize\fR in a \fIMolecule\fR. | |
| 969 .IP "\fBGetRingBonds\fR" 4 | |
| 970 .IX Item "GetRingBonds" | |
| 971 .Vb 1 | |
| 972 \& @RingBonds = $Molecule\->GetRingBonds(@RingAtoms); | |
| 973 .Ve | |
| 974 .Sp | |
| 975 Returns an array of ring \fBBond\fR objects correponding to an array of ring \fIAtoms\fR in a | |
| 976 \&\fIMolecule\fR. | |
| 977 .IP "\fBGetRingBondsFromRings\fR" 4 | |
| 978 .IX Item "GetRingBondsFromRings" | |
| 979 .Vb 1 | |
| 980 \& @RingBondsSets = $Molecule\->GetRingBondsFromRings(@RingAtomsSets); | |
| 981 .Ve | |
| 982 .Sp | |
| 983 Returns an array containing references to arrays of ring \fBBond\fR objects for rings specified | |
| 984 in an array of references to ring \fIAtom\fR objects. | |
| 985 .IP "\fBGetRings\fR" 4 | |
| 986 .IX Item "GetRings" | |
| 987 .Vb 1 | |
| 988 \& @Rings = $Molecule\->GetRings(); | |
| 989 .Ve | |
| 990 .Sp | |
| 991 Returns rings as an array containing references to arrays of ring \fIAtom\fR objects in a \fIMolecule\fR. | |
| 992 .IP "\fBGetRingsWithEvenSize\fR" 4 | |
| 993 .IX Item "GetRingsWithEvenSize" | |
| 994 .Vb 1 | |
| 995 \& @Rings = $Molecule\->GetRingsWithEvenSize(); | |
| 996 .Ve | |
| 997 .Sp | |
| 998 Returns even size rings as an array containing references to arrays of ring \fIAtom\fR objects in | |
| 999 a \fIMolecule\fR. | |
| 1000 .IP "\fBGetRingsWithOddSize\fR" 4 | |
| 1001 .IX Item "GetRingsWithOddSize" | |
| 1002 .Vb 1 | |
| 1003 \& @Rings = $Molecule\->GetRingsWithOddSize(); | |
| 1004 .Ve | |
| 1005 .Sp | |
| 1006 Returns odd size rings as an array containing references to arrays of ring \fIAtom\fR objects in | |
| 1007 a \fIMolecule\fR. | |
| 1008 .IP "\fBGetRingsWithSize\fR" 4 | |
| 1009 .IX Item "GetRingsWithSize" | |
| 1010 .Vb 1 | |
| 1011 \& @Rings = $Molecule\->GetRingsWithSize($Size); | |
| 1012 .Ve | |
| 1013 .Sp | |
| 1014 Returns rings with \fISize\fR as an array containing references to arrays of ring \fIAtom\fR objects in | |
| 1015 a \fIMolecule\fR. | |
| 1016 .IP "\fBGetRingsWithSizeGreaterThan\fR" 4 | |
| 1017 .IX Item "GetRingsWithSizeGreaterThan" | |
| 1018 .Vb 1 | |
| 1019 \& @Rings = $Molecule\->GetRingsWithSizeGreaterThan($Size); | |
| 1020 .Ve | |
| 1021 .Sp | |
| 1022 Returns rings with size greater than \fISize\fR as an array containing references to arrays of | |
| 1023 ring \fIAtom\fR objects in a \fIMolecule\fR. | |
| 1024 .IP "\fBGetRingsWithSizeLessThan\fR" 4 | |
| 1025 .IX Item "GetRingsWithSizeLessThan" | |
| 1026 .Vb 1 | |
| 1027 \& @Rings = $Molecule\->GetRingsWithSizeLessThan($Size); | |
| 1028 .Ve | |
| 1029 .Sp | |
| 1030 Returns rings with size less than \fISize\fR as an array containing references to arrays of | |
| 1031 ring \fIAtom\fR objects in a \fIMolecule\fR. | |
| 1032 .IP "\fBGetSizeOfLargestRing\fR" 4 | |
| 1033 .IX Item "GetSizeOfLargestRing" | |
| 1034 .Vb 1 | |
| 1035 \& $Size = $Molecule\->GetSizeOfLargestRing(); | |
| 1036 .Ve | |
| 1037 .Sp | |
| 1038 Returns size of the largest ring in a \fIMolecule\fR. | |
| 1039 .IP "\fBGetSizeOfSmallestRing\fR" 4 | |
| 1040 .IX Item "GetSizeOfSmallestRing" | |
| 1041 .Vb 1 | |
| 1042 \& $Size = $Molecule\->GetSizeOfSmallestRing(); | |
| 1043 .Ve | |
| 1044 .Sp | |
| 1045 Returns size of the smalles ring in a \fIMolecule\fR. | |
| 1046 .IP "\fBGetSmallestRing\fR" 4 | |
| 1047 .IX Item "GetSmallestRing" | |
| 1048 .Vb 1 | |
| 1049 \& @RingAtoms = $Molecule\->GetSmallestRing(); | |
| 1050 .Ve | |
| 1051 .Sp | |
| 1052 Returns an array containing \fIAtom\fR objects corresponding to the smallest ring in | |
| 1053 a \fIMolecule\fR. | |
| 1054 .IP "\fBGetSpinMultiplicity\fR" 4 | |
| 1055 .IX Item "GetSpinMultiplicity" | |
| 1056 .Vb 1 | |
| 1057 \& $SpinMultiplicity = $Molecule\->GetSpinMultiplicity(); | |
| 1058 .Ve | |
| 1059 .Sp | |
| 1060 Returns net spin multiplicity of a \fIMolecule\fR using one of the following two methods: explicitly | |
| 1061 set \fBSpinMultiplicity\fR property or sum of spin multiplicity on each atom. | |
| 1062 .IP "\fBGetSupportedAromaticityModels\fR" 4 | |
| 1063 .IX Item "GetSupportedAromaticityModels" | |
| 1064 .Vb 1 | |
| 1065 \& @SupportedModels = $Molecule\->GetSupportedAromaticityModels(); | |
| 1066 .Ve | |
| 1067 .Sp | |
| 1068 Returns an array containing a list of supported aromaticity models. | |
| 1069 .IP "\fBGetValenceModel\fR" 4 | |
| 1070 .IX Item "GetValenceModel" | |
| 1071 .Vb 1 | |
| 1072 \& $ValenceModel = $Molecule\->GetValenceModel(); | |
| 1073 .Ve | |
| 1074 .Sp | |
| 1075 Returns valence model for \fIMolecule\fR using one of the following two methods: explicitly | |
| 1076 set \fBValenceModel\fR property or defaul value of \fIInternalValenceModel\fR. | |
| 1077 .IP "\fBGetTopologicallySortedAtoms\fR" 4 | |
| 1078 .IX Item "GetTopologicallySortedAtoms" | |
| 1079 .Vb 1 | |
| 1080 \& @SortedAtoms = $Molecule\->GetTopologicallySortedAtoms([$StartAtom]); | |
| 1081 .Ve | |
| 1082 .Sp | |
| 1083 Returns an array of topologically sorted \fIAtom\fR objects starting from \fIStartAtom\fR or | |
| 1084 an arbitrary atom in a \fIMolecule\fR. | |
| 1085 .IP "\fBHasAromaticRings\fR" 4 | |
| 1086 .IX Item "HasAromaticRings" | |
| 1087 .Vb 1 | |
| 1088 \& $Status = $Molecule\->HasAromaticRings(); | |
| 1089 .Ve | |
| 1090 .Sp | |
| 1091 Returns 1 or 0 based on whether any aromatic ring is present in a \fIMolecule\fR. | |
| 1092 .IP "\fBHasAromaticAtomsInRings\fR" 4 | |
| 1093 .IX Item "HasAromaticAtomsInRings" | |
| 1094 .Vb 1 | |
| 1095 \& $Status = $Molecule\->HasAromaticAtomsInRings(); | |
| 1096 .Ve | |
| 1097 .Sp | |
| 1098 Returns 1 or 0 based on whether any aromatic ring atom is present in a \fIMolecule\fR. | |
| 1099 .IP "\fBHasAromaticAtomsNotInRings\fR" 4 | |
| 1100 .IX Item "HasAromaticAtomsNotInRings" | |
| 1101 .Vb 1 | |
| 1102 \& $Status = $Molecule\->HasAromaticAtomsNotInRings(); | |
| 1103 .Ve | |
| 1104 .Sp | |
| 1105 Returns 1 or 0 based on whether any non-ring atom is marked aromatic in a \fIMolecule\fR. | |
| 1106 .IP "\fBHasAtom\fR" 4 | |
| 1107 .IX Item "HasAtom" | |
| 1108 .Vb 1 | |
| 1109 \& $Status = $Molecule\->HasAtom($Atom); | |
| 1110 .Ve | |
| 1111 .Sp | |
| 1112 Returns 1 or 0 based on whether \fIAtom\fR is present in a \fIMolecule\fR. | |
| 1113 .IP "\fBHasBond\fR" 4 | |
| 1114 .IX Item "HasBond" | |
| 1115 .Vb 1 | |
| 1116 \& $Status = $Molecule\->HasBond($Bond); | |
| 1117 .Ve | |
| 1118 .Sp | |
| 1119 Returns 1 or 0 based on whether \fIBond\fR is present in a \fIMolecule\fR. | |
| 1120 .IP "\fBHasFusedRings\fR" 4 | |
| 1121 .IX Item "HasFusedRings" | |
| 1122 .Vb 1 | |
| 1123 \& $Status = $Molecule\->HasFusedRings(); | |
| 1124 .Ve | |
| 1125 .Sp | |
| 1126 Returns 1 or 0 based on whether any fused rings set is present in a \fIMolecule\fR. | |
| 1127 .IP "\fBHasNoRings\fR" 4 | |
| 1128 .IX Item "HasNoRings" | |
| 1129 .Vb 1 | |
| 1130 \& $Status = $Molecule\->HasNoRings(); | |
| 1131 .Ve | |
| 1132 .Sp | |
| 1133 Returns 0 or 1 based on whether any ring is present in a \fIMolecule\fR. | |
| 1134 .IP "\fBHasOnlyOneRing\fR" 4 | |
| 1135 .IX Item "HasOnlyOneRing" | |
| 1136 .Vb 1 | |
| 1137 \& $Status = $Molecule\->HasOnlyOneRing(); | |
| 1138 .Ve | |
| 1139 .Sp | |
| 1140 Returns 1 or 0 based on whether only one ring is present in a \fIMolecule\fR. | |
| 1141 .IP "\fBHasRings\fR" 4 | |
| 1142 .IX Item "HasRings" | |
| 1143 .Vb 1 | |
| 1144 \& $Status = $Molecule\->HasRings(); | |
| 1145 .Ve | |
| 1146 .Sp | |
| 1147 Returns 1 or 0 based on whether rings are present in a \fIMolecule\fR. | |
| 1148 .IP "\fBIsAromatic\fR" 4 | |
| 1149 .IX Item "IsAromatic" | |
| 1150 .Vb 1 | |
| 1151 \& $Status = $Molecule\->IsAromatic(); | |
| 1152 .Ve | |
| 1153 .Sp | |
| 1154 Returns 1 or 0 based on whether \fIMolecule\fR is aromatic. | |
| 1155 .IP "\fBIsMolecule\fR" 4 | |
| 1156 .IX Item "IsMolecule" | |
| 1157 .Vb 1 | |
| 1158 \& $Status = Molecule::IsMolecule(); | |
| 1159 .Ve | |
| 1160 .Sp | |
| 1161 Returns 1 or 0 based on whether \fIObject\fR is a \fBMolecule\fR object. | |
| 1162 .IP "\fBIsRingAromatic\fR" 4 | |
| 1163 .IX Item "IsRingAromatic" | |
| 1164 .Vb 1 | |
| 1165 \& $Status = $Molecule\->IsRingAromatic(@RingAtoms); | |
| 1166 .Ve | |
| 1167 .Sp | |
| 1168 Returns 1 or 0 based on whether all \fIRingAtoms\fR are aromatic. | |
| 1169 .IP "\fBIsSupportedAromaticityModel\fR" 4 | |
| 1170 .IX Item "IsSupportedAromaticityModel" | |
| 1171 .Vb 2 | |
| 1172 \& $Status = $Molecule\->IsSupportedAromaticityModel($AromaticityModel); | |
| 1173 \& $Status = Molecule::IsSupportedAromaticityModel($AromaticityModel); | |
| 1174 .Ve | |
| 1175 .Sp | |
| 1176 Returns 1 or 0 based on whether specified \fIAromaticityModel\fR is supported. | |
| 1177 .IP "\fBIsTwoDimensional\fR" 4 | |
| 1178 .IX Item "IsTwoDimensional" | |
| 1179 .Vb 1 | |
| 1180 \& $Status = $Molecule\->IsTwoDimensional(); | |
| 1181 .Ve | |
| 1182 .Sp | |
| 1183 Returns 1 or 0 based on whether any atom in \fIMolecule\fR has a non-zero value | |
| 1184 for X or Y coordinate and all atoms have zero value for Z coordinates. | |
| 1185 .IP "\fBIsThreeDimensional\fR" 4 | |
| 1186 .IX Item "IsThreeDimensional" | |
| 1187 .Vb 1 | |
| 1188 \& $Status = $Molecule\->IsThreeDimensional(); | |
| 1189 .Ve | |
| 1190 .Sp | |
| 1191 Returns 1 or 0 based on whether any atom in \fIMolecule\fR has a non-zero value | |
| 1192 for Z coordinate. | |
| 1193 .IP "\fBKeepLargestComponent\fR" 4 | |
| 1194 .IX Item "KeepLargestComponent" | |
| 1195 .Vb 1 | |
| 1196 \& $Molecule\->KeepLargestComponent(); | |
| 1197 .Ve | |
| 1198 .Sp | |
| 1199 Deletes atoms corresponding to all other connected components Except for the largest | |
| 1200 connected component in a \fIMolecule\fR and returns \fIMolecule\fR. | |
| 1201 .IP "\fBKekulizeAromaticAtoms\fR" 4 | |
| 1202 .IX Item "KekulizeAromaticAtoms" | |
| 1203 .Vb 1 | |
| 1204 \& $Status = $Molecule\->KekulizeAromaticAtoms(); | |
| 1205 .Ve | |
| 1206 .Sp | |
| 1207 Kekulize marked ring and non-ring aromatic atoms in a molecule and return 1 or 1 based | |
| 1208 on whether the kekulization succeeded. | |
| 1209 .IP "\fBNewAtom\fR" 4 | |
| 1210 .IX Item "NewAtom" | |
| 1211 .Vb 1 | |
| 1212 \& $NewAtom = $Molecule\->NewAtom(%AtomPropertyNamesAndValues); | |
| 1213 .Ve | |
| 1214 .Sp | |
| 1215 Creates a new atom using \fIAtomPropertyNamesAndValues\fR, add its to \fIMolecule\fR, and returns | |
| 1216 new \fBAtom\fR object. | |
| 1217 .IP "\fBNewBond\fR" 4 | |
| 1218 .IX Item "NewBond" | |
| 1219 .Vb 1 | |
| 1220 \& $NewBond = $Molecule\->NewBond(%BondPropertyNamesAndValues); | |
| 1221 .Ve | |
| 1222 .Sp | |
| 1223 Creates a new bond using \fIAtomPropertyNamesAndValues\fR, add its to \fIMolecule\fR, and returns | |
| 1224 new \fBBond\fR object. | |
| 1225 .IP "\fBSetActiveRings\fR" 4 | |
| 1226 .IX Item "SetActiveRings" | |
| 1227 .Vb 1 | |
| 1228 \& $Molecule\->SetActiveRings($RingsType); | |
| 1229 .Ve | |
| 1230 .Sp | |
| 1231 Sets up type of detected ring sets to use during all ring related methods and returns \fIMolecule\fR. | |
| 1232 Possible \fIRingType\fR values: \fIIndependent or All\fR. By default, \fIIndependent\fR ring set is used | |
| 1233 during all ring methods. | |
| 1234 .IP "\fBSetAromaticityModel\fR" 4 | |
| 1235 .IX Item "SetAromaticityModel" | |
| 1236 .Vb 1 | |
| 1237 \& $Molecule = $Molecule\->SetAromaticityModel($AromaticityModel); | |
| 1238 .Ve | |
| 1239 .Sp | |
| 1240 Sets up \fIAromaticityModel\fR property value for \fIMolecule\fR and retrurns \fIMolecule\fR. | |
| 1241 .IP "\fBSetValenceModel\fR" 4 | |
| 1242 .IX Item "SetValenceModel" | |
| 1243 .Vb 1 | |
| 1244 \& $Molecule = $Molecule\->SetValenceModel(ValenceModel); | |
| 1245 .Ve | |
| 1246 .Sp | |
| 1247 Sets up \fIValenceModel\fR property value for \fIMolecule\fR and retrurns \fIMolecule\fR. | |
| 1248 .IP "\fBStringifyMolecule\fR" 4 | |
| 1249 .IX Item "StringifyMolecule" | |
| 1250 .Vb 1 | |
| 1251 \& $MoleculeString = $Molecule\->StringifyMolecule(); | |
| 1252 .Ve | |
| 1253 .Sp | |
| 1254 Returns a string containing information about \fIMolecule\fR object | |
| 1255 .SH "AUTHOR" | |
| 1256 .IX Header "AUTHOR" | |
| 1257 Manish Sud <msud@san.rr.com> | |
| 1258 .SH "SEE ALSO" | |
| 1259 .IX Header "SEE ALSO" | |
| 1260 Atom.pm, Bond.pm, MoleculeFileIO.pm, MolecularFormula.pm | |
| 1261 .SH "COPYRIGHT" | |
| 1262 .IX Header "COPYRIGHT" | |
| 1263 Copyright (C) 2015 Manish Sud. All rights reserved. | |
| 1264 .PP | |
| 1265 This file is part of MayaChemTools. | |
| 1266 .PP | |
| 1267 MayaChemTools is free software; you can redistribute it and/or modify it under | |
| 1268 the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free | |
| 1269 Software Foundation; either version 3 of the License, or (at your option) | |
| 1270 any later version. |
