# Class NBOParser

java.lang.Object
org.jmol.adapter.readers.quantum.NBOParser

public class NBOParser extends Object

## Constructor Summary

Constructors
Constructor
Description
`NBOParser()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`connectNBO(int modelIndex, String type)`
`Lst<Object>`
`getAllStructures(String output, Lst<Object> list)`
`String`
`getNBOAtomLabel(Atom a)`
get the
`static Map<String,Object>`
`getStructureMap(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
`int`
`getStructures(String data, String nrtType, Lst<Object> list)`
Reads the $NRTSTR $NRTSTRA, $NRTSTRB, and $CHOOSE blocks.
`static void`
`getStructures46(String[] tokens, String type, Lst<Object> structures, int nAtoms)`
Use the .46 file NBO alpha/beta labels to identify bonds, lone pairs, and lone valences.
`boolean`
`isOpenShell()`
`NBOParser`
`set(Viewer vwr)`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### NBOParser

public NBOParser()

## Method Details

### set

public NBOParser set(Viewer vwr)

### getAllStructures

public Lst<Object> getAllStructures(String output, Lst<Object> list)

### getStructures46

public static void getStructures46(String[] tokens, String type, 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` -

### getStructures

public int getStructures(String data, String nrtType, Lst<Object> list)
Reads the $NRTSTR $NRTSTRA, $NRTSTRB, and $CHOOSE blocks. Creates a Lst of Hashtables

Parameters:
  `data` - NBO output block not including $END
  `nrtType` - "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(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 file
  `type` - topoa, topob, nrtstra, nrtstrb, alpha, beta -- last two are from CHOOSE
  `index` - 0-based index for this type
Returns:
  Hashtable or null

### connectNBO

public boolean connectNBO(int modelIndex, String type)

Parameters:
  `modelIndex` -
  `type` - one of alpha|beta|choosea|chooseb|nrtstr_n|nrtstra_n|topo_n|topoa_n| topob_n
Returns:
  true if successful

### getNBOAtomLabel

public String getNBOAtomLabel(Atom a)
get the

Parameters:
  `a` -
Returns:
  label including (lp), (lv), and (if not open-spin) formal charge