1

("Reduce spacing between subequations" refers to spacing between equation environments within a subequations environment. This question refers to spacing between two different subequations environments.)

I am using fleqn so that a number of sets of subequations are all aligned on the left side. The space that exists above and below each set of subequations is bigger than I need it to be. And when two sets appear back to back (picture below), this results in a very large vertical space in between.

Is there any (simple) solution to reduce this vertical space before/after every subequations (+align) environment?

\documentclass[11pt]{book}
\usepackage[fleqn]{amsmath}
\usepackage[utf8]{inputenc}
\begin{document}

\begin{subequations}\begin{align}
x = & r_M\cos\beta\cos\alpha        \\
y = & r_M\cos\beta\sin\alpha    \\
z = & r_M\sin\beta
\end{align}\end{subequations}
\begin{subequations}\begin{align}
v_{p_x} = & -v_M\sin\gamma\sin\beta\cos\alpha - v_M\cos\gamma\sin\alpha \\
v_{p_y} = & -v_M\sin\gamma\sin\beta\sin\alpha + v_M\cos\gamma\cos\alpha \\
v_{p_z} = & v_M\cos\beta\sin\gamma
\end{align}\end{subequations}

\end{document}

enter image description here

  • The question this is marked a duplicate from asks about vertical spacing betwen equation environments within a single subequations environment. This question addresses spacing between two subequations environments. I considered it a different case altogether and reckoned the solutions might differ. – user50624 Sep 5 '18 at 13:52
  • 1
    OT: The spacing around your equals sign is wrong. Put the alignment points & before the = signs. – Troy Sep 5 '18 at 15:27
2

You can use \useshortskip from nccmath between consecutive subequations:

\documentclass[11pt]{book}
\usepackage[fleqn]{amsmath, nccmath}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}

\begin{document}

\lipsum[11]
\begin{subequations}\begin{align}
x = & r_M\cos\beta\cos\alpha \\
y = & r_M\cos\beta\sin\alpha \\
z = & r_M\sin\beta
\end{align}\end{subequations}
\useshortskip
\begin{subequations}\begin{align}
v_{p_x} = & -v_M\sin\gamma\sin\beta\cos\alpha - v_M\cos\gamma\sin\alpha \\
v_{p_y} = & -v_M\sin\gamma\sin\beta\sin\alpha + v_M\cos\gamma\cos\alpha \\
v_{p_z} = & v_M\cos\beta\sin\gamma
\end{align}\end{subequations}
\lipsum[11]

\end{document} 

enter image description here

| improve this answer | |
  • Thank you, it seems to work. However, if I add the hyperref package, the vertical space seems to remain untouched. Do you have any extra tips? I understand this is beyond the scope of the original question, and I will accept your answer. – user50624 Sep 5 '18 at 14:42
  • No tip a priori. I'll try to see what can be done. Also, may be a guru will find out what happens between hyperref and nccmath. – Bernard Sep 5 '18 at 14:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy