[Tex/LaTex] Table caption in uppercase. I don’t know why

captionsieeetran

    \documentclass{IEEEtran}

    \begin{document}

    \begin{table}[ht]

    \centering

    \begin{tabular}{|l|c|}

    \hline
      \multicolumn{2}{|c|}{Default Parameters} \\
      \hline
    Disk Purchase cost & $\$100$ \\
    Disk Operating Cost & $\$66$ \\
    Flash Purchase Cost & $\$500$\\
    Flash Operating cost & $\$20$\\
    Duration & 100 years\\
    $K_r$& .15\\
    \hline
    \end{tabular}

    \label{tab:default}
    \caption{Default parameters used for Monte Carlo Model.}
    \end{table}
    \end{document}

Can someone tell me why I am getting caption like this

TABLE 1
DEFAULT PARAMETERS…

Best Answer

It is not in upper case, but in small caps.

As other things, this is a design decision of the class you are using, as Joseph Wright points out in his comment.

But if you really want to change this behavior, you can patch the command \@makecaption, responsible of the caption formatting, so to don't print the caption in small caps.

That is, add the following lines to your preamble:

\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatother

Complete example (note that I've put the \caption at the beginning of the table, as required by IEEEtran AND the \label after it, see Why does an environment's label have to appear after the caption?)

\documentclass{IEEEtran}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatother

\begin{document}
\begin{table}[ht]
\centering
\caption{Default parameters used for Monte Carlo Model.}
\label{tab:default}
\begin{tabular}{|l|c|}
\hline
  \multicolumn{2}{|c|}{Default Parameters} \\
  \hline
Disk Purchase cost & $\$100$ \\
Disk Operating Cost & $\$66$ \\
Flash Purchase Cost & $\$500$\\
Flash Operating cost & $\$20$\\
Duration & 100 years\\
$K_r$& .15\\
\hline
\end{tabular}
\end{table}
\end{document} 

Output:

enter image description here

If you also don't like the word "TABLE" to be upper cased, add the following line to your preamble:

\def\tablename{Table}

Output:

enter image description here


EDIT

If you want to bring the table caption in the same line of "Table I" you also have to add the following lines in your preamble:

\patchcmd{\@makecaption}
  {\\}
  {.\ }
  {}
  {}

Change the period to whatever separator you like.

MWE:

\documentclass{IEEEtran}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatletter
\patchcmd{\@makecaption}
  {\\}
  {.\ }
  {}
  {}
\makeatother
\def\tablename{Table}

\begin{document}
\begin{table}[ht]
\centering
\caption{Default parameters used for Monte Carlo Model.}
\label{tab:default}
\begin{tabular}{|l|c|}
\hline
  \multicolumn{2}{|c|}{Default Parameters} \\
  \hline
Disk Purchase cost & $\$100$ \\
Disk Operating Cost & $\$66$ \\
Flash Purchase Cost & $\$500$\\
Flash Operating cost & $\$20$\\
Duration & 100 years\\
$K_r$& .15\\
\hline
\end{tabular}
\end{table}
\end{document} 

Output:

enter image description here