# Manual

The following is information about the relax manual.

## Find the manual

The homepage manual

## Get help

The help section in relax is the best you can get !

Just start relax in terminal:

> relax

# Then write, to see options which is related to relax_disp.
relax> help(relax_disp)

For example:
help(relax_disp.select_model)
# Here you can find link to the online HTML manual, and the API documentation.

# You may want to read:
relax> help(relax_disp.exp_type)
relax> help(spectrum)
relax> help(spectrum.replicated)
relax> help(spectrum.baseplane_rmsd)
relax> help(spectrometer)

# This a very very fast an useful method to quickly understand the functions.

# If you are unsure how to find where each method function is put, start the GUI.
# In the top menu, go through the settings.
# They are ordered the same way. ! :-)

# For example.
relax> help(grid_search)

## Write to the mail lists to get personal help

See the wiki page Mailing archives, to read how to sign up and write to the mail archives.

## Build the manual

### Latex requirements

The html.sty is needed from the latex package latex2html.

A windows MiKTeX installation should fetch it automatically.

When compiling the pdf latex manual, only html.sty is needed. The easiest is just to place that in your LaTeX installation. See this guide.

cd $HOME/Downloads ; wget http://mirrors.ctan.org/support/latex2html/latex2html-2012.tgz ; tar -xzf latex2html-2012.tgz ; rm latex2html-2012.tgz ; cd where latex | xargs dirname cd ../../texmf-local/tex/latex # OR cd ../../texmf-dist/tex/latex cp -r /$HOME/Downloads/latex2html-2012/texinputs latex2html
# Then update latex index
texhash

For a complete build of latex2html in linux, you could do something like this installation. But this is only for the building of user_manual_html. It is now advised to do this normally.

sudo yum install latex2html

OR

cd $HOME/Downloads ; wget http://www.latex2html.org/~latex2ht/current/latex2html-2012.tar.gz ; tar -xzf latex2html-2012.tar.gz ; rm latex2html-2012.tar.gz ; cd latex2html-2012 ; mkdir build ; ./configure --help ./configure #Or make a custom build ./configure --prefix=$PWD/build
make

### Build pdf manual

The manual ends up in docs/relax.pdf

Go to the relax base directory.
Then issue the command

scons user_manual_pdf


This triggers a range of functions, which create some files. If they do not need to be updated, following compilation can be performed much faster with

scons user_manual_pdf_nofetch


### Build html manual

This needs quite some time to figure out to install and run latex2html.

Go to the relax base directory.
Then issue the command

scons user_manual_html


And faster

scons user_manual_html_nofetch


## Build API (Application programming interface) documentation

The html documentation ends up in docs/api/

### Epydoc python package installation

#### Windows epydoc

take the win32 bit versions.

Open WinPython Control Panel, and drag the .exe into the window.

Install graphviz Windows binaries from http://www.graphviz.org.

set PATH=%PATH%;C:\Program Files (x86)\Graphviz2.32\bin

#### Linux

sudo yum install epydoc
sudo yum install graphviz-python


### Build API

The API ends up in docs/api/index.html

You need to run 'scons clean' first to remove the *.pyc files and any other temporary files.

scons clean


Build the API documentation

scons api_manual_html


### Regarding error messages

The "No documentation available!" errors are normal as these are for non-python files which are not part of relax. It's safe to ignore these.

The wxPython indentation errors are also fine. epydoc is scanning the wx module docstrings, but it cannot be stopped.

The "Unable to render Graphviz dot graph" are because the Graphviz software is not available.
Windows binaries are available though (http://www.graphviz.org).