# Class Modulation

java.lang.Object
org.jmol.util.Modulation

public class Modulation extends Object
A class to allow for more complex vibrations and associated phenomena, such as modulated crystals, including Fourier series, Crenel functions, and sawtooth functions

Author:
  Bob Hanson hansonr@stolaf.edu 8/8/2013

## Field Summary

Fields
Modifier and Type
Field
Description
`static final char`
`TYPE_DISP_FOURIER`
`static final char`
`TYPE_DISP_LEGENDRE`
`static final char`
`TYPE_DISP_SAWTOOTH`
`static final char`
`TYPE_OCC_CRENEL`
`static final char`
`TYPE_OCC_FOURIER`
`static final char`
`TYPE_SPIN_FOURIER`
`static final char`
`TYPE_SPIN_SAWTOOTH`
`static final char`
`TYPE_U_FOURIER`
`static final char`
`TYPE_U_LEGENDRE`

## Constructor Summary

Constructors
Constructor
Description
`Modulation(char axis, char type, double[] params, String utens, double[] qCoefs)`
Each atomic modulation involves a fractional coordinate wave vector q, a Fourier power n, a modulation axis (x, y, or, z), and specified parameters that depend upon the type of function.

## Method Summary

Modifier and Type
Method
Description
`Hashtable<String,Object>`
`getInfo()`
`String`
`toString()`

### Methods inherited from class Object

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

## Field Details

### TYPE_DISP_FOURIER

public static final char TYPE_DISP_FOURIER

See Also:
  - Constant Field Values

### TYPE_SPIN_FOURIER

public static final char TYPE_SPIN_FOURIER

See Also:
  - Constant Field Values

### TYPE_SPIN_SAWTOOTH

public static final char TYPE_SPIN_SAWTOOTH

See Also:
  - Constant Field Values

### TYPE_DISP_SAWTOOTH

public static final char TYPE_DISP_SAWTOOTH

See Also:
  - Constant Field Values

### TYPE_OCC_FOURIER

public static final char TYPE_OCC_FOURIER

See Also:
  - Constant Field Values

### TYPE_OCC_CRENEL

public static final char TYPE_OCC_CRENEL

See Also:
  - Constant Field Values

### TYPE_U_FOURIER

public static final char TYPE_U_FOURIER

See Also:
  - Constant Field Values

### TYPE_DISP_LEGENDRE

public static final char TYPE_DISP_LEGENDRE

See Also:
  - Constant Field Values

### TYPE_U_LEGENDRE

public static final char TYPE_U_LEGENDRE

See Also:
  - Constant Field Values

## Constructor Details

### Modulation

public Modulation(char axis, char type, double[] params, String utens, double[] qCoefs)
Each atomic modulation involves a fractional coordinate wave vector q, a Fourier power n, a modulation axis (x, y, or, z), and specified parameters that depend upon the type of function. Types supported: Fourier [csin, ccos] Legendre [center, width, coeff, order] Crenel [center, width, amplitude] Sawtooth [center, width, amplitude]

Parameters:
  `axis` -
  `type` -
  `params` -
  `utens` - TODO
  `qCoefs` -

## Method Details

### getInfo

public Hashtable<String,Object> getInfo()

### toString

public String toString()

Overrides:
  `toString` in class `Object`