# How can I use align environment in conjuction with iopart.cls class?

I would like to use `align` environment over `eqnarray` for typesetting my equations. However the publisher forces to use the `iopart.cls` as the article class file which, as they mentioned, is incompatible with `amsmath.sty`.

How can I somehow import `align` definition (or even other definitions too) from `amsmath.sty` while sticking to the document class of `iopart.cls` ?

-
I found an `iopart.cls` here and read through the manual and the `.cls` file. It seems that the class file has its own definition of `eqnarray`. For additional fonts, the manual says you have to write `\usepackage{iopams}` which will include the style files: `amsgen`, `amsfonts`, `amssymb`, and `amsbsy`, all version `1995/01/01`. Well, you can try `\RequirePackage{amsmath}` before `\documentclass` but it will not give you the same indentation when using `iopart`'s `eqnarray`. I think there is a workaround but it's beyond my skills. `:-)` – hpesoj626 Jan 29 '13 at 7:41
The `iopart` class corrects the worst error in `eqnarray`. I'm afraid that `amsmath` is "take or leave": extracting one of the environments requires getting also a great part of the auxiliary macros. For instance, `amsmath` redefines the equation numbering system. – egreg Jan 29 '13 at 7:51
@ hpesoj626: Yes in fact, in their manual they explicitly said to avoid `amsmath`, and suggested using `eqnarray`. @ egreg: I didn't know the `eqnarray` of `iopart` is the corrected version. If this is the case, it might be unnecessary for me to switch to `align`! – M.Reza Jan 29 '13 at 13:02

It's very unfortunate that the `iopart` class doesn't want `amsmath`, which is a robust package, very useful for mathematical writing.

Having `eqnarray` only for formatting multiline displays is a big hindrance, but there seems to be nothing else to do. However, the `iopart` version of `eqnarray` at least corrects the worst error in the spacing of the relation symbol used for the alignment.

-

Put following two lines just before `\usepackage{amsmath}`

``````\expandafter\let\csname equation*\endcsname\relax

\expandafter\let\csname endequation*\endcsname\relax
``````

Now even though you have `iopart.cls` as class file chosen, you would still be able to use `amsmath` package without any error. It will go like..

``````\documentclass[12pt]{iopart}

\usepackage{iopams}

\expandafter\let\csname equation*\endcsname\relax

\expandafter\let\csname endequation*\endcsname\relax

\usepackage{amsmath}
``````
-
Welcome to TeX.SX! We usually prefer full answers, i.e. full examples which can be compiled, in conjunction with a screenshot. Please elaborate a little bit on your answer – Christian Hupfer Apr 11 '15 at 20:48