How to tell if included package interferes with document style or other packages?

I had a problem with `subfig` changing caption formatting when using the Springer `svjour3` style. The answer (using subfig changes fonts in captions of figures) was to tell `subfig` not to include the caption package. Now I'm wondering if any of the other packages I've included (mainly to do with helping layout -`multirow`,`adjustbox` etc) are interfering with the style in an undesirable way.

This got me thinking - is there a general way to tell which parts of any particular documentclass style have been changed or if something has been inadvertently redefined? I don't want to, for example, include a package that lets me highlight a section and have it somehow redefine section headers.

• It is not clear what you are asking. Packages are generally loaded because they change the style - why else would you load one? If you are writing with a prescribed class or package from a publisher or conference, you should not change the style of the document in ways which are not approved in the documentation or comments in the code. For example, you shouldn't format sub-figures using `subfig` (or anything else) unless this is an 'allowed' package. Of course, it depends a bit on what the class/package provides. But, generally, if in doubt, don't load it. – cfr Aug 27 '15 at 2:04
• @cfr Most the packages I use are either related to maths, `amsmath` etc, or allow me to layout things properly, `multicol` and `adjustbox` for example. `subfig` allows me to put captions on subfigures, how else would I do it. From what I can tell Springer style guide doesn't say anything about approved packages. I don't have any packages deliberately included to change the document style. So that is the point of the question: to find out if a package is inadvertently changing the style to make sure my document is styled correctly. – geometrikal Aug 27 '15 at 2:20
• But: (1) we have no idea which packages you are asking about, and (2) `multicol`, `subfig` etc. are definitely changing the style. It is highly unlikely that the journal will want something using `multicol`, for example. They will want a two-column, single-column or mixed layout as specified by them. These are exactly the kinds of changes they are likely to want you not to make. And (3) we don't have access to the class/package you are using `svjour3`. – cfr Aug 27 '15 at 2:26
• `multicol` allows you to combine two table cells, `adjustbox` allows you to vertically center text in a cell, `subfig` lets you add a caption under a subfigure. I doubt these are specifically defined in the document style. Anyway, that is not the point of the question, how can i tell IN GENERAL what a package has over-riden or redefined from a style (cls?) file. Is there some kind of compiler flag etc? – geometrikal Aug 27 '15 at 3:02
• In general you can not tell. – David Carlisle Aug 27 '15 at 9:28

`multicol` package is not about table cells it is about multi-column pages and so changes the output routine so changes the code path (if not the result) of every page in a document.
`adjustbox` can redefine `\includegraphics` so change the code path of every image inclusion in a document even if its facilities are not used.
As you say, `subfig` redefines caption handling, so by design all three of those are making global changes to document commands.
In general any package can redefine any TeX command (and many do) `amsmath` for example changes `\everymath` so changes every command that uses math, which may be more than you expect, `tabular`, `\parbox`, `\footnote`... Typically the different code path does not affect the output of these commands, but the difference shows up if you trace.