# Class Atom

java.lang.Object
javajs.util.T3
javajs.util.P3
org.jmol.adapter.smarter.Atom

All Implemented Interfaces:
  `Serializable, Cloneable, JSONEncodable`

public class Atom extends P3 implements Cloneable

See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`char`
`altLoc`
`float[]`
`anisoBorU`
`String`
`atomName`
`int`
`atomSerial`
`int`
`atomSetIndex`
`int`
`atomSite`
`float`
`bfactor`
`float`
`bondingRadius`
`BS`
`bsSymmetry`
`int`
`chainID`
`short`
`elementNumber`
`String`
`elementSymbol`
`float`
`foccupancy`
`int`
`formalCharge`
`String`
`group3`
`int`
`index`
`char`
`insertionCode`
`boolean`
`isHetero`
`int`
`part`
`float`
`partialCharge`
`float`
`radius`
`int`
`seqIdOrWyckoffCode`
`int`
`sequenceNumber`
`Lst<Object>`
`tensors`
`String`
`typeSymbol`
`V3`
`vib`

### Fields inherited from class T3

`x, y, z`

## Constructor Summary

Constructors
Constructor
Description
`Atom()`

## Method Summary

Modifier and Type
Method
Description
`Tensor`
`addTensor(Tensor tensor, String type, boolean reset)`
`Atom`
`copyTo(P3 pt, AtomSetCollection asc)`
`Atom`
`getClone()`
`String`
`getElementSymbol()`
`int`
`getMult()`
`static boolean`
`isValidSym1(char ch)`
`static boolean`
`isValidSym2(char ch1, char ch2)`
`static boolean`
`isValidSymNoCase(char ch1, char ch2)`

### Methods inherited from class P3

`getUnlikely, new3, newA, newP`

### Methods inherited from class T3

`add, add2, add3, ave, cross, distance, distanceSquared, dot, equals, floatToIntBits, hashCode, length, lengthSquared, normalize, putP, scale, scaleAdd2, scaleT, set, setA, setP, setT, sub, sub2, toJSON, toString`

### Methods inherited from class Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### atomSetIndex

public int atomSetIndex

### index

public int index

### bsSymmetry

public BS bsSymmetry

### atomSite

public int atomSite

### elementSymbol

public String elementSymbol

### elementNumber

public short elementNumber

### atomName

public String atomName

### formalCharge

public int formalCharge

### partialCharge

public float partialCharge

### vib

public V3 vib

### bfactor

public float bfactor

### foccupancy

public float foccupancy

### radius

public float radius

### isHetero

public boolean isHetero

### atomSerial

public int atomSerial

### chainID

public int chainID

### seqIdOrWyckoffCode

public int seqIdOrWyckoffCode

### bondingRadius

public float bondingRadius

### altLoc

public char altLoc

### group3

public String group3

### sequenceNumber

public int sequenceNumber

### insertionCode

public char insertionCode

### anisoBorU

public float[] anisoBorU

### tensors

public Lst<Object> tensors

### typeSymbol

public String typeSymbol

### part

public int part

## Constructor Details

### Atom

public Atom()

## Method Details

### addTensor

public Tensor addTensor(Tensor tensor, String type, boolean reset)

### getClone

public Atom getClone()

### getElementSymbol

public String getElementSymbol()

### isValidSym1

public static boolean isValidSym1(char ch)

Parameters:
  `ch` -
Returns:
  true if matches a one-character symbol X

### isValidSym2

public static boolean isValidSym2(char ch1, char ch2)

Parameters:
  `ch1` -
  `ch2` -
Returns:
  true if matches a valid symbol Xy

### isValidSymNoCase

public static boolean isValidSymNoCase(char ch1, char ch2)

Parameters:
  `ch1` -
  `ch2` -
Returns:
  true if matches a two-character symbol, XX or Xx

### copyTo

public Atom copyTo(P3 pt, AtomSetCollection asc)

### getMult

public int getMult()