# GH_MarkovChain class

Namespace: [Grasshopper.Kernel](https://developer.rhino3d.com/api/gh1/namespace/grasshopper.kernel.md) · Assembly: [Grasshopper](https://developer.rhino3d.com/api/gh1/assembly/grasshopper.md)

```cs
public class GH_MarkovChain
```

Represents a database with multi-depth markov chains.

## Constructors

- [GH_MarkovChain](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/ctor.md)

## Properties

- [Level1](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/level1.md): Gets all level 1 patterns stored in this chain database.
- [Level2](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/level2.md): Gets all level 2 patterns stored in this chain database.
- [Level3](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/level3.md): Gets all level 3 patterns stored in this chain database.
- [PatternCount](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/patterncount.md): Gets the total number of patterns stored in this database.

## Methods

- [AppendPattern](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/appendpattern.md): Append a new pattern to the database or grow a pattern which already exists.
- [Clear](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/clear.md): Reset the markov database.
- [Description](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/description.md): Gets a description of the entire Markov database.
- [ExtendHistory](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/extendhistory.md): Append a new ID to the history record and cache the implied pattern.
- [FindPattern](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/findpattern.md): (3 overloads) Finds the pattern in the level 1 chain that matches the given ID.
- [ReadFromDisc](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/readfromdisc.md): Read the markov database from the disc.
- [ReduceDataset](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/reducedataset.md): Reduce the data set by removing the least significant members.
- [SuggestEvents](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/suggestevents.md): Suggests the likely future events based on the past three events and the recorded history. Events are returned in order of likelyhood.
- [WriteToDisc](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.gh-markovchain/writetodisc.md): Write the Markov database to disc.
