view mayachemtools/docs/modules/man3/Bond.3 @ 0:73ae111cf86f draft

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 11:55:01 -0500
parents
children
line wrap: on
line source

.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.ie \nF \{\
.    de IX
.    tm Index:\\$1\t\\n%\t"\\$2"
..
.    nr % 0
.    rr F
.\}
.el \{\
.    de IX
..
.\}
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
.    \" fudge factors for nroff and troff
.if n \{\
.    ds #H 0
.    ds #V .8m
.    ds #F .3m
.    ds #[ \f1
.    ds #] \fP
.\}
.if t \{\
.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
.    ds #V .6m
.    ds #F 0
.    ds #[ \&
.    ds #] \&
.\}
.    \" simple accents for nroff and troff
.if n \{\
.    ds ' \&
.    ds ` \&
.    ds ^ \&
.    ds , \&
.    ds ~ ~
.    ds /
.\}
.if t \{\
.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
.    \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
.    \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
.    \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
.    ds : e
.    ds 8 ss
.    ds o a
.    ds d- d\h'-1'\(ga
.    ds D- D\h'-1'\(hy
.    ds th \o'bp'
.    ds Th \o'LP'
.    ds ae ae
.    ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "BOND 1"
.TH BOND 1 "2015-03-29" "perl v5.14.2" "MayaChemTools"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
Bond
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
use Bond;
.PP
use Bond qw(:all);
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
\&\fBBond\fR class provides the following methods:
.PP
new, Copy, DeleteBond, GetAtoms, GetBondBeginAtom, GetBondEndAtom,
GetBondFromAtom, GetBondToAtom, GetBondedAtom, GetCommonAtom, GetLargestRing,
GetNumOfRings, GetNumOfRingsWithEvenSize, GetNumOfRingsWithOddSize,
GetNumOfRingsWithSize, GetNumOfRingsWithSizeGreaterThan,
GetNumOfRingsWithSizeLessThan, GetRings, GetRingsWithEvenSize,
GetRingsWithOddSize, GetRingsWithSize, GetRingsWithSizeGreaterThan,
GetRingsWithSizeLessThan, GetSizeOfLargestRing, GetSizeOfSmallestRing,
GetSmallestRing, IsAromatic, IsBondStereochemistrySpecified, IsBondTypeSpecified,
IsCis, IsCisOrTrans, IsCoordinate, IsDative, IsDouble, IsDown, IsDownward, IsHash,
IsInRing, IsInRingOfSize, IsIonic, IsNotInRing, IsOnlyInOneRing, IsQuadruple,
IsQuintuple, IsSextuple, IsSingle, IsTautomeric, IsTrans, IsTriple, IsUp,
IsUpOrDown, IsUpward, IsWedge, IsWedgeOrHash, SetAtoms, SetBondOrder,
SetBondStereochemistry, SetBondType, StringifyBond, SwitchBondFromAndToAtoms
.PP
\&\fBBond\fR class is derived from \fBObjectProperty\fR base class which provides methods not explicitly
defined in \fBAtom\fR or \fBObjectProperty\fR class using Perl's \s-1AUTOLOAD\s0 functionality. These methods
are generated on-the-fly for a specified object property:
.PP
.Vb 3
\&    Set<PropertyName>(<PropertyValue>);
\&    $PropertyValue = Get<PropertyName>();
\&    Delete<PropertyName>();
.Ve
.SS "\s-1METHODS\s0"
.IX Subsection "METHODS"
.IP "\fBnew\fR" 4
.IX Item "new"
.Vb 1
\&    $NewBond = new Bond([%PropertyNameAndValues]);
.Ve
.Sp
Using specified \fIBond\fR property names and values hash, \fBnew\fR method creates a new object
and returns a reference to newly created \fBBond\fR object. By default, following properties are
initialized:
.Sp
.Vb 4
\&    ID = SequentialObjectID
\&    @Atoms = ();
\&    BondType = ""
\&    BondOrder = ""
.Ve
.Sp
Except for \fI\s-1ID\s0\fR property, all other default properties and other additional properties can
be set during invocation of this method.
.Sp
Examples:
.Sp
.Vb 3
\&    $Bond = new Bond();
\&    $DoubleBond = new Bond(\*(AqAtoms\*(Aq => [$Atom2, $Atom1],
\&                           \*(AqBondOrder\*(Aq => 2);
.Ve
.IP "\fBCopy\fR" 4
.IX Item "Copy"
.Vb 1
\&    $BondCopy = $Bond\->Copy();
.Ve
.Sp
Copy \fIBond\fR and its associated data using \fBStorable::dclone\fR and return a new
\&\fBBond\fR object.
.IP "\fBDeleteBond\fR" 4
.IX Item "DeleteBond"
.Vb 1
\&    $Bond\->DeleteBond();
.Ve
.Sp
Delete \fIBond\fR between atoms in from a molecule.
.IP "\fBGetAtoms\fR" 4
.IX Item "GetAtoms"
.Vb 1
\&    @BondedAtoms = $Bond\->GetAtoms();
.Ve
.Sp
Returns an array containing \fIAtoms\fR invoved in \fIBond\fR.
.IP "\fBGetBondedAtom\fR" 4
.IX Item "GetBondedAtom"
.Vb 1
\&    $BondedAtom = $Bond\->GetBondedAtom($Atom);
.Ve
.Sp
Returns \fBBondedAtom\fR bonded to \fIAtom\fR in  \fIBond\fR.
.IP "\fBGetBondBeginAtom\fR" 4
.IX Item "GetBondBeginAtom"
.Vb 1
\&    $BeginAtom = $Bond\->GetBondBeginAtom();
.Ve
.Sp
Returns \fBBeginAtom\fR corresponding to bond starting atom in \fIBond\fR.
.IP "\fBGetBondEndAtom\fR" 4
.IX Item "GetBondEndAtom"
.Vb 1
\&    $EndAtom = $Bond\->GetBondEndAtom();
.Ve
.Sp
Returns \fBEndAtom\fR corresponding to bond ending atom in \fIBond\fR.
.IP "\fBGetBondFromAtom\fR" 4
.IX Item "GetBondFromAtom"
.Vb 1
\&    $FromAtom = $Bond\->GetBondFromAtom();
.Ve
.Sp
Returns \fBFromAtom\fR corresponding to bond starting atom in \fIBond\fR.
.IP "\fBGetBondToAtom\fR" 4
.IX Item "GetBondToAtom"
.Vb 1
\&    $ToAotm = $Bond\->GetBondToAtom();
.Ve
.Sp
Returns \fBToAtom\fR corresponding to bond ending atom in \fIBond\fR.
.IP "\fBGetCommonAtom\fR" 4
.IX Item "GetCommonAtom"
.Vb 1
\&    $CommonAtom = $Bond\->GetCommonAtom($OtherBond);
.Ve
.Sp
Returns \fBAtom\fR common to both \fIBond\fR and \fI\f(CI$OtherBond\fI\fR.
.IP "\fBGetLargestRing\fR" 4
.IX Item "GetLargestRing"
.Vb 1
\&    @RingAtoms = $Bond\->GetLargestRing();
.Ve
.Sp
Returns an array of ring \fIAtoms\fR corresponding to the largest ring containing \fIBond\fR.
in a molecule
.IP "\fBGetNumOfRings\fR" 4
.IX Item "GetNumOfRings"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRings();
.Ve
.Sp
Returns number of rings containing \fIBond\fR in a molecule.
.IP "\fBGetNumOfRingsWithEvenSize\fR" 4
.IX Item "GetNumOfRingsWithEvenSize"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRingsWithEvenSize();
.Ve
.Sp
Returns number of rings with even size containing \fIBond\fR in a molecule.
.IP "\fBGetNumOfRingsWithOddSize\fR" 4
.IX Item "GetNumOfRingsWithOddSize"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRingsWithOddSize();
.Ve
.Sp
Returns number of rings with odd size containing \fIBond\fR in a molecule.
.IP "\fBGetNumOfRingsWithSize\fR" 4
.IX Item "GetNumOfRingsWithSize"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRingsWithSize($RingSize);
.Ve
.Sp
Returns number of rings with specific \fIRingSize\fR containing \fIBond\fR in a molecule.
.IP "\fBGetNumOfRingsWithSizeGreaterThan\fR" 4
.IX Item "GetNumOfRingsWithSizeGreaterThan"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRingsWithSizeGreaterThan($RingSize);
.Ve
.Sp
Returns number of rings with size greater than specific \fIRingSize\fR containing
\&\fIBond\fR in a molecule.
.IP "\fBGetNumOfRingsWithSizeLessThan\fR" 4
.IX Item "GetNumOfRingsWithSizeLessThan"
.Vb 1
\&    $NumOfRings = $Bond\->GetNumOfRingsWithSizeLessThan($RingSize);
.Ve
.Sp
Returns number of rings with size less than specific \fIRingSize\fR containing \fIBond\fR
in a molecule.
.IP "\fBGetRings\fR" 4
.IX Item "GetRings"
.Vb 1
\&    @Rings = $Bond\->GetRings();
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding
to all rings containing \fIBond\fR in a molecule.
.IP "\fBGetRingsWithEvenSize\fR" 4
.IX Item "GetRingsWithEvenSize"
.Vb 1
\&    @Rings = $Bond\->GetRingsWithEvenSize();
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding to all rings with even size
containing \fIBond\fR in a molecule.
.IP "\fBGetRingsWithOddSize\fR" 4
.IX Item "GetRingsWithOddSize"
.Vb 1
\&    @Rings = $Bond\->GetRingsWithOddSize();
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding to all rings with odd size
containing \fIBond\fR in a molecule.
.IP "\fBGetRingsWithSize\fR" 4
.IX Item "GetRingsWithSize"
.Vb 1
\&    @Rings = $Bond\->GetRingsWithSize($RingSize);
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding to all rings with specific
\&\fIRingSize \fRcontaining \fIBond\fR in a molecule.
.IP "\fBGetRingsWithSizeGreaterThan\fR" 4
.IX Item "GetRingsWithSizeGreaterThan"
.Vb 1
\&    @Rings = $Bond\->GetRingsWithSizeGreaterThan($RingSize);
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding to all rings with size
greater than specific \fIRingSize \fRcontaining \fIBond\fR in a molecule.
.IP "\fBGetRingsWithSizeLessThan\fR" 4
.IX Item "GetRingsWithSizeLessThan"
.Vb 1
\&    @Rings = $Bond\->GetRingsWithSizeLessThan($RingSize);
.Ve
.Sp
Returns an array of references to arrays containing ring atoms corressponding to all rings with size
less than specific \fIRingSize \fRcontaining \fIBond\fR in a molecule.
.IP "\fBGetSizeOfLargestRing\fR" 4
.IX Item "GetSizeOfLargestRing"
.Vb 1
\&    $Size = $Bond\->GetSizeOfLargestRing();
.Ve
.Sp
Returns size of the largest ring containing \fIBond\fR in a molecule.
.IP "\fBGetSizeOfSmallestRing\fR" 4
.IX Item "GetSizeOfSmallestRing"
.Vb 1
\&    $Size = $Bond\->GetSizeOfSmallestRing();
.Ve
.Sp
Returns size of the smallest ring containing \fIBond\fR in a molecule.
.IP "\fBGetSmallestRing\fR" 4
.IX Item "GetSmallestRing"
.Vb 1
\&    @RingAtoms = $Bond\->GetSmallestRing();
.Ve
.Sp
Returns an array of ring \fIAtoms\fR corresponding to the largest ring containing \fIBond\fR
in a molecule.
.IP "\fBIsAromatic\fR" 4
.IX Item "IsAromatic"
.Vb 1
\&    $Status = $Bond\->IsAromatic();
.Ve
.Sp
Returns 1 or 0 based on whether it's an aromatic \fIBond\fR.
.IP "\fBIsBondStereochemistrySpecified\fR" 4
.IX Item "IsBondStereochemistrySpecified"
.Vb 1
\&    $Status = $Bond\->IsBondStereochemistrySpecified();
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR's sterochemistry is specified.
.IP "\fBIsBondTypeSpecified\fR" 4
.IX Item "IsBondTypeSpecified"
.Vb 1
\&    $Status = $Bond\->IsBondTypeSpecified();
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR's type is specified.
.IP "\fBIsCis\fR" 4
.IX Item "IsCis"
.Vb 1
\&    $Status = $Bond\->IsCis();
.Ve
.Sp
Returns 1 or 0 based on whether it's a cis \fIBond\fR.
.IP "\fBIsCisOrTrans\fR" 4
.IX Item "IsCisOrTrans"
.Vb 1
\&    $Status = $Bond\->IsCisOrTrans();
.Ve
.Sp
Returns 1 or 0 based on whether it's a cis or trans \fIBond\fR.
.IP "\fBIsCoordinate\fR" 4
.IX Item "IsCoordinate"
.Vb 1
\&    $Status = $Bond\->IsCoordinate();
.Ve
.Sp
Returns 1 or 0 based on whether it's a coordinate or dative  \fIBond\fR.
.IP "\fBIsDative\fR" 4
.IX Item "IsDative"
.Vb 1
\&    $Status = $Bond\->IsDative();
.Ve
.Sp
Returns 1 or 0 based on whether it's a coordinate or dative  \fIBond\fR.
.IP "\fBIsDouble\fR" 4
.IX Item "IsDouble"
.Vb 1
\&    $Status =$Bond\->IsDouble();
.Ve
.Sp
Returns 1 or 0 based on whether it's a double \fIBond\fR.
.IP "\fBIsDown\fR" 4
.IX Item "IsDown"
.Vb 1
\&    $Status = $Bond\->IsDown();
.Ve
.Sp
Returns 1 or 0 based on whether it's a hash or down single \fIBond\fR.
.IP "\fBIsDownward\fR" 4
.IX Item "IsDownward"
.Vb 1
\&    $Return = $Bond\->IsDownward();
.Ve
.Sp
Returns 1 or 0 based on whether it's a downward \fIBond\fR.
.IP "\fBIsHash\fR" 4
.IX Item "IsHash"
.Vb 1
\&    $Status = $Bond\->IsHash();
.Ve
.Sp
Returns 1 or 0 based on whether it's a hash or down single \fIBond\fR.
.IP "\fBIsInRing\fR" 4
.IX Item "IsInRing"
.Vb 1
\&    $Status = $Bond\->IsInRing();
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR is present in a ring.
.IP "\fBIsInRingOfSize\fR" 4
.IX Item "IsInRingOfSize"
.Vb 1
\&    $Status = $Bond\->IsInRingOfSize($Size);
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR is present in a ring of specific \fISize\fR.
.IP "\fBIsIonic\fR" 4
.IX Item "IsIonic"
.Vb 1
\&    $Status = $Bond\->IsIonic();
.Ve
.Sp
Returns 1 or 0 based on whether it's an ionic \fIBond\fR.
.IP "\fBIsNotInRing\fR" 4
.IX Item "IsNotInRing"
.Vb 1
\&    $Status = $Bond\->IsNotInRing();
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR is not present in a ring.
.IP "\fBIsOnlyInOneRing\fR" 4
.IX Item "IsOnlyInOneRing"
.Vb 1
\&    $Status = $Bond\->IsOnlyInOneRing();
.Ve
.Sp
Returns 1 or 0 based on whether \fIBond\fR is only present in one ring.
.IP "\fBIsQuadruple\fR" 4
.IX Item "IsQuadruple"
.Vb 1
\&    $Status = $Bond\->IsQuadruple();
.Ve
.Sp
Returns 1 or 0 based on whether it's a quadruple \fIBond\fR.
.IP "\fBIsQuintuple\fR" 4
.IX Item "IsQuintuple"
.Vb 1
\&    $Status = $Bond\->IsQuintuple();
.Ve
.Sp
Returns 1 or 0 based on whether it's a quintuple \fIBond\fR.
.IP "\fBIsSextuple\fR" 4
.IX Item "IsSextuple"
.Vb 1
\&    $Status = $Bond\->IsSextuple();
.Ve
.Sp
Returns 1 or 0 based on whether it's a sextuple \fIBond\fR.
.IP "\fBIsSingle\fR" 4
.IX Item "IsSingle"
.Vb 1
\&    $Status =$Bond\->IsSingle();
.Ve
.Sp
Returns 1 or 0 based on whether it's a single \fIBond\fR.
.IP "\fBIsTriple\fR" 4
.IX Item "IsTriple"
.Vb 1
\&    $Status =$Bond\->IsTriple();
.Ve
.Sp
Returns 1 or 0 based on whether it's a triple \fIBond\fR.
.IP "\fBIsTautomeric\fR" 4
.IX Item "IsTautomeric"
.Vb 1
\&    $Status = $Bond\->IsTautomeric();
.Ve
.Sp
Returns 1 or 0 based on whether it's a \fIBond\fR.
.IP "\fBIsTrans\fR" 4
.IX Item "IsTrans"
.Vb 1
\&    $Status = $Bond\->IsTrans();
.Ve
.Sp
Returns 1 or 0 based on whether it's a trans \fIBond\fR.
.IP "\fBIsUp\fR" 4
.IX Item "IsUp"
.Vb 1
\&    $Status = $Bond\->IsUp();
.Ve
.Sp
Returns 1 or 0 based on whether it's a up \fIBond\fR.
.IP "\fBIsUpOrDown\fR" 4
.IX Item "IsUpOrDown"
.Vb 1
\&    $Status = $Bond\->IsUpOrDown();
.Ve
.Sp
Returns 1 or 0 based on whether it's an up or down \fIBond\fR.
.IP "\fBIsUpward\fR" 4
.IX Item "IsUpward"
.Vb 1
\&    $Status = $Bond\->IsUpward();
.Ve
.Sp
Returns 1 or 0 based on whether it's an upward \fIBond\fR.
.IP "\fBIsWedge\fR" 4
.IX Item "IsWedge"
.Vb 1
\&    $Status = $Bond\->IsWedge();
.Ve
.Sp
Returns 1 or 0 based on whether it's a wedge \fIBond\fR.
.IP "\fBIsWedgeOrHash\fR" 4
.IX Item "IsWedgeOrHash"
.Vb 1
\&    $Status = $Bond\->IsWedgeOrHash();
.Ve
.Sp
Returns 1 or 0 based on whether it's a wedge or hash \fIBond\fR.
.IP "\fBSetAtoms\fR" 4
.IX Item "SetAtoms"
.Vb 2
\&    $Bond\->SetAtoms($AtomsRef);
\&    $Bond\->SetAtoms(@Atoms);
.Ve
.Sp
Set atoms of \fIBond\fR to atoms in \fIAtoms\fR array or in a reference to an array of atoms
and return \fIBond\fR.
.IP "\fBSetBondOrder\fR" 4
.IX Item "SetBondOrder"
.Vb 1
\&    $Bond\->SetBondOrder($BondOrder);
.Ve
.Sp
Sets bond order of \fIBond\fR to specified \fIBondOrder\fR and returns \fIBond\fR. Possible bond order
values: 1 = Single, 1.5 = Aromatic, 2 = Double, 3 = Triple, 4 = Quadruple, 5 = Quintuple,
6 = Sextuple, 7 = Septuple
.Sp
Notes:
.Sp
.Vb 8
\&    . BondType property is automatically assigned using default BondType
\&      values for specified BondOrder.
\&    . BondType values can also be explicit set.
\&    . To make bonds aromatic in a ring, explicitly set "Aromatic"
\&      property for bond/atoms and make sure appropriate BondOrder
\&      values are assigned.
\&    . Dative or coordinate bond types are treated as single bond types with
\&      explicit formal charge of + and \- on first and second bond atoms.
.Ve
.IP "\fBSetBondType\fR" 4
.IX Item "SetBondType"
.Vb 1
\&    $Bond\->SetBondType($BondType);
.Ve
.Sp
Sets bond type for \fIBond\fR to specified \fIBondType\fR and returns \fIBond\fR. Possible bond type
values for different bond orders are:
.Sp
.Vb 9
\&    0: None, Ionic, Unspecified
\&    1 : Single, Dative, Coordinate, SingleOrDouble, SingleOrAromatic, Tautomeric
\&    2 : Double, SingleOrDouble, DoubleOrAromatic, Tautomeric
\&    3 : Triple
\&    4 : Quadruple
\&    5 : Quintuple
\&    6 : Sextuple
\&    7 : Septuple
\&    1.5 : Aromatic, Resonance, SingleOrAromatic, DoubleOrAromatic
.Ve
.Sp
Notes:
.Sp
.Vb 3
\&    o BondType Any is valid for all BondOrders.
\&    o BondOrder property is automatically assigned using default BondOrder
\&      values for specified BondType.
.Ve
.Sp
Possible bond stereochemistry values for different bond orders are:
.Sp
.Vb 4
\&    0 : None, Unspecified
\&    1 : Wedge, Up, Hash, Down, Wavy, WedgeOrHash, UpOrDown, Upward, Downward,
\&        None, Unspecified
\&    2 : Cis, Trans, Z, E, DoubleCross, CisOrTrans, None, Unspecified
.Ve
.IP "\fBSetBondStereochemistry\fR" 4
.IX Item "SetBondStereochemistry"
.Vb 1
\&    $Bond = $Bond\->SetBondStereochemistry($BondStereochemistry);
.Ve
.Sp
Sets bond stereochemistry of \fIBond\fR to specified \fIBondStereochemistry\fR and
returns \fIBond\fR. Possible \fIBondStereoChemistry\fR values for different bond orders
are:
.Sp
BondOrder: 1
.Sp
.Vb 1
\&    None, Unspecified: Not a stereo bond or unspecified
\&
\&    Wedge, Up : Wedge end pointing up
\&    Hash, Down: Wedge end pointing down
\&    Wavy, WedgeOrHash, UpOrDown: Wedge end up or down
\&
\&    Upward: Single bond around cis/trans double bonds pointing upward
\&    Downward: Single bond around cis/trans double bonds pointing upward
.Ve
.Sp
Notes:
.Sp
.Vb 3
\&    o Wedge starts at begin atom of a bond making wedge pointed end always
\&      at this atom.
\&    o Upward/downward bonds start at atoms involved in cis/trans double bonds.
.Ve
.Sp
BondOrder: 2
.Sp
.Vb 1
\&    None, Unspecified: Not a stereo bond or unspecified
\&
\&    Z, cis: Similar groups on same side of double bond
\&    E, trans: Similar groups on different side of double bond
\&
\&    CisOrTrans, DoubleCross: cis or trans
.Ve
.IP "\fBStringifyBond\fR" 4
.IX Item "StringifyBond"
.Vb 1
\&    $BondString = $Bond\->StringifyBond();
.Ve
.Sp
Returns a string containing information about \fIbond\fR object.
.IP "\fBSwitchBondFromAndToAtoms\fR" 4
.IX Item "SwitchBondFromAndToAtoms"
.Vb 1
\&    $Bond = $Bond\->SwitchBondFromAndToAtoms();
.Ve
.Sp
Swaps bond from and to atoms in \fIBond\fR and returns \fIBond\fR.
.SH "AUTHOR"
.IX Header "AUTHOR"
Manish Sud <msud@san.rr.com>
.SH "SEE ALSO"
.IX Header "SEE ALSO"
Atom.pm, Molecule.pm
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
Copyright (C) 2015 Manish Sud. All rights reserved.
.PP
This file is part of MayaChemTools.
.PP
MayaChemTools is free software; you can redistribute it and/or modify it under
the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free
Software Foundation; either version 3 of the License, or (at your option)
any later version.