Package org.jmol.adapter.readers.quantum
Class NBOParser
java.lang.Object
org.jmol.adapter.readers.quantum.NBOParser
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
connectNBO
(int modelIndex, String type) private static void
dumpMatrix
(String nrtType, int index, int[][] matrix) javajs.util.Lst
<Object> getAllStructures
(String output, javajs.util.Lst<Object> list) private static int
getAtomIndex
(String xx99) private String
private String
get thegetStructureMap
(javajs.util.Lst<Object> structureList, String type, int index) Find the map for a specified structure, producing a structure that can be used to generate lone pairs and bonds for a Lewis structureint
getStructures
(String data, String nrtType, javajs.util.Lst<Object> list) Reads the $NRTSTR $NRTSTRA, $NRTSTRB, and $CHOOSE blocks.static void
getStructures46
(String[] tokens, String type, javajs.util.Lst<Object> structures, int nAtoms) Use the .46 file NBO alpha/beta labels to identify bonds, lone pairs, and lone valences.private void
getStructuresTOPO
(String data, String nrtType, javajs.util.Lst<Object> list) boolean
private boolean
setJmolLewisStructure
(Map<String, Object> structureMap, int modelIndex, int resNo) Starting with a structure map, do what needs to be done to change the current Jmol structure to that in terms of bonding and formal charge.
-
Field Details
-
vwr
-
haveBeta
private boolean haveBeta
-
-
Constructor Details
-
NBOParser
public NBOParser()
-
-
Method Details
-
set
-
getAllStructures
-
getBlock
-
getStructures46
public static void getStructures46(String[] tokens, String type, javajs.util.Lst<Object> structures, int nAtoms) Use the .46 file NBO alpha/beta labels to identify bonds, lone pairs, and lone valences.- Parameters:
tokens
-type
-structures
-nAtoms
-
-
getAtomIndex
-
getStructuresTOPO
-
dumpMatrix
-
getData
-
getStructures
Reads the $NRTSTR $NRTSTRA, $NRTSTRB, and $CHOOSE blocks. Creates a Lst of Hashtables- Parameters:
data
- NBO output block not including $ENDnrtType
- "CHOOSE", "NRTSTRA", "NRTSTRB"list
- to fill- Returns:
- number of structures found or -1 for an error
-
isOpenShell
public boolean isOpenShell() -
getStructureMap
public static Map<String,Object> getStructureMap(javajs.util.Lst<Object> structureList, String type, int index) Find the map for a specified structure, producing a structure that can be used to generate lone pairs and bonds for a Lewis structure- Parameters:
structureList
- a list of structural information from this class created from an NBO filetype
- topoa, topob, nrtstra, nrtstrb, alpha, beta -- last two are from CHOOSEindex
- 0-based index for this type- Returns:
- Hashtable or null
-
connectNBO
- Parameters:
modelIndex
-type
- one of alpha|beta|choosea|chooseb|nrtstr_n|nrtstra_n|topo_n|topoa_n| topob_n- Returns:
- true if successful
-
setJmolLewisStructure
Starting with a structure map, do what needs to be done to change the current Jmol structure to that in terms of bonding and formal charge. Three map configurations are supported: bond/lone/3c data from $CHOOSE or $NRTSTR, $NRTSTRA, or $NRTSTRB matrix from TOPO map of atom names from the .46 file NBO alpha/beta lists- Parameters:
structureMap
-modelIndex
-resNo
-- Returns:
- true if successful
-
getNBOAtomLabel
get the- Parameters:
a
-- Returns:
- label including (lp), (lv), and (if not open-spin) formal charge
-