From 81b84b7dd9317ff78106e50e4282c16f2796f579 Mon Sep 17 00:00:00 2001
From: pfperroni <pfperroni@inf.ufpr.br>
Date: Mon, 3 Jul 2017 17:23:20 -0300
Subject: [PATCH] delete unnecessary files.

---
 doc/latex/CSMOn__wrapper_8cpp.tex             |   83 --
 doc/latex/CSMOn__wrapper_8cpp__incl.md5       |    1 -
 doc/latex/CSMOn__wrapper_8cpp__incl.pdf       |  Bin 15546 -> 0 bytes
 doc/latex/Makefile                            |   21 -
 doc/latex/annotated.tex                       |    8 -
 doc/latex/classCSMOn.tex                      |  147 --
 doc/latex/classISearch.tex                    |  138 --
 doc/latex/classISearch__inherit__graph.md5    |    1 -
 doc/latex/classISearch__inherit__graph.pdf    |  Bin 11343 -> 0 bytes
 doc/latex/classPSO.tex                        |  231 ---
 doc/latex/classPSO__coll__graph.md5           |    1 -
 doc/latex/classPSO__coll__graph.pdf           |  Bin 11340 -> 0 bytes
 doc/latex/classPSO__inherit__graph.md5        |    1 -
 doc/latex/classPSO__inherit__graph.pdf        |  Bin 11340 -> 0 bytes
 .../dir_7837fde3ab9c1fb2fc5be7b717af8d79.tex  |   15 -
 ...r_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5 |    1 -
 ...r_7837fde3ab9c1fb2fc5be7b717af8d79_dep.pdf |  Bin 10510 -> 0 bytes
 .../dir_df511e5bd85cec96854b39d5e1c27aa8.tex  |   25 -
 ...r_df511e5bd85cec96854b39d5e1c27aa8_dep.md5 |    1 -
 ...r_df511e5bd85cec96854b39d5e1c27aa8_dep.pdf |  Bin 9835 -> 0 bytes
 doc/latex/doxygen.sty                         |  468 ------
 doc/latex/files.tex                           |   10 -
 doc/latex/hierarchy.tex                       |   10 -
 doc/latex/index.tex                           |    8 -
 doc/latex/pso__example_8cpp.tex               |   57 -
 doc/latex/pso__example_8cpp__incl.md5         |    1 -
 doc/latex/pso__example_8cpp__incl.pdf         |  Bin 15537 -> 0 bytes
 doc/latex/refman.tex                          |  166 ---
 doc/latex/struct__Param.tex                   |   41 -
 doc/latex/struct__point.tex                   |   47 -
 doc/rtf/CSMOn__wrapper_8cpp__incl.md5         |    1 -
 doc/rtf/CSMOn__wrapper_8cpp__incl.png         |  Bin 23948 -> 0 bytes
 doc/rtf/classISearch__inherit__graph.md5      |    1 -
 doc/rtf/classISearch__inherit__graph.png      |  Bin 2145 -> 0 bytes
 doc/rtf/classPSO__coll__graph.md5             |    1 -
 doc/rtf/classPSO__coll__graph.png             |  Bin 2167 -> 0 bytes
 doc/rtf/classPSO__inherit__graph.md5          |    1 -
 doc/rtf/classPSO__inherit__graph.png          |  Bin 2167 -> 0 bytes
 .../dir_7837fde3ab9c1fb2fc5be7b717af8d79.rtf  |  102 --
 ...r_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5 |    1 -
 ...r_7837fde3ab9c1fb2fc5be7b717af8d79_dep.png |  Bin 1199 -> 0 bytes
 .../dir_df511e5bd85cec96854b39d5e1c27aa8.rtf  |  112 --
 ...r_df511e5bd85cec96854b39d5e1c27aa8_dep.md5 |    1 -
 ...r_df511e5bd85cec96854b39d5e1c27aa8_dep.png |  Bin 759 -> 0 bytes
 doc/rtf/pso__example_8cpp__incl.md5           |    1 -
 doc/rtf/pso__example_8cpp__incl.png           |  Bin 22820 -> 0 bytes
 doc/rtf/refman.rtf                            | 1276 -----------------
 47 files changed, 2979 deletions(-)
 delete mode 100644 doc/latex/CSMOn__wrapper_8cpp.tex
 delete mode 100644 doc/latex/CSMOn__wrapper_8cpp__incl.md5
 delete mode 100644 doc/latex/CSMOn__wrapper_8cpp__incl.pdf
 delete mode 100644 doc/latex/Makefile
 delete mode 100644 doc/latex/annotated.tex
 delete mode 100644 doc/latex/classCSMOn.tex
 delete mode 100644 doc/latex/classISearch.tex
 delete mode 100644 doc/latex/classISearch__inherit__graph.md5
 delete mode 100644 doc/latex/classISearch__inherit__graph.pdf
 delete mode 100644 doc/latex/classPSO.tex
 delete mode 100644 doc/latex/classPSO__coll__graph.md5
 delete mode 100644 doc/latex/classPSO__coll__graph.pdf
 delete mode 100644 doc/latex/classPSO__inherit__graph.md5
 delete mode 100644 doc/latex/classPSO__inherit__graph.pdf
 delete mode 100644 doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79.tex
 delete mode 100644 doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
 delete mode 100644 doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.pdf
 delete mode 100644 doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8.tex
 delete mode 100644 doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
 delete mode 100644 doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.pdf
 delete mode 100644 doc/latex/doxygen.sty
 delete mode 100644 doc/latex/files.tex
 delete mode 100644 doc/latex/hierarchy.tex
 delete mode 100644 doc/latex/index.tex
 delete mode 100644 doc/latex/pso__example_8cpp.tex
 delete mode 100644 doc/latex/pso__example_8cpp__incl.md5
 delete mode 100644 doc/latex/pso__example_8cpp__incl.pdf
 delete mode 100644 doc/latex/refman.tex
 delete mode 100644 doc/latex/struct__Param.tex
 delete mode 100644 doc/latex/struct__point.tex
 delete mode 100644 doc/rtf/CSMOn__wrapper_8cpp__incl.md5
 delete mode 100644 doc/rtf/CSMOn__wrapper_8cpp__incl.png
 delete mode 100644 doc/rtf/classISearch__inherit__graph.md5
 delete mode 100644 doc/rtf/classISearch__inherit__graph.png
 delete mode 100644 doc/rtf/classPSO__coll__graph.md5
 delete mode 100644 doc/rtf/classPSO__coll__graph.png
 delete mode 100644 doc/rtf/classPSO__inherit__graph.md5
 delete mode 100644 doc/rtf/classPSO__inherit__graph.png
 delete mode 100644 doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79.rtf
 delete mode 100644 doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
 delete mode 100644 doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.png
 delete mode 100644 doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8.rtf
 delete mode 100644 doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
 delete mode 100644 doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.png
 delete mode 100644 doc/rtf/pso__example_8cpp__incl.md5
 delete mode 100644 doc/rtf/pso__example_8cpp__incl.png
 delete mode 100644 doc/rtf/refman.rtf

diff --git a/doc/latex/CSMOn__wrapper_8cpp.tex b/doc/latex/CSMOn__wrapper_8cpp.tex
deleted file mode 100644
index c0c6150..0000000
--- a/doc/latex/CSMOn__wrapper_8cpp.tex
+++ /dev/null
@@ -1,83 +0,0 @@
-\hypertarget{CSMOn__wrapper_8cpp}{\section{python/\+C\+S\+M\+On\+\_\+wrapper.cpp File Reference}
-\label{CSMOn__wrapper_8cpp}\index{python/\+C\+S\+M\+On\+\_\+wrapper.\+cpp@{python/\+C\+S\+M\+On\+\_\+wrapper.\+cpp}}
-}
-{\ttfamily \#include $<$stdio.\+h$>$}\\*
-{\ttfamily \#include $<$string.\+h$>$}\\*
-{\ttfamily \#include $<$iostream$>$}\\*
-{\ttfamily \#include \char`\"{}P\+S\+O.\+hpp\char`\"{}}\\*
-{\ttfamily \#include \char`\"{}C\+S\+M\+On.\+hpp\char`\"{}}\\*
-Include dependency graph for C\+S\+M\+On\+\_\+wrapper.\+cpp\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=350pt]{CSMOn__wrapper_8cpp__incl}
-\end{center}
-\end{figure}
-\subsection*{Data Structures}
-\begin{DoxyCompactItemize}
-\item 
-struct \hyperlink{struct__Param}{\+\_\+\+Param}
-\begin{DoxyCompactList}\small\item\em Contains a parameter received from / sent to the Python caller. \end{DoxyCompactList}\end{DoxyCompactItemize}
-\subsection*{Typedefs}
-\begin{DoxyCompactItemize}
-\item 
-\hypertarget{CSMOn__wrapper_8cpp_a376fcabfd8429288efa3398dc2f3e8e1}{typedef struct \hyperlink{struct__Param}{\+\_\+\+Param} \hyperlink{CSMOn__wrapper_8cpp_a376fcabfd8429288efa3398dc2f3e8e1}{Param}}\label{CSMOn__wrapper_8cpp_a376fcabfd8429288efa3398dc2f3e8e1}
-
-\begin{DoxyCompactList}\small\item\em Contains a parameter received from / sent to the Python caller. \end{DoxyCompactList}\end{DoxyCompactItemize}
-\subsection*{Functions}
-\begin{DoxyCompactItemize}
-\item 
-void \hyperlink{CSMOn__wrapper_8cpp_a918c532a1803542131c64811335fe6d7}{search} (char $\ast$method, \hyperlink{CSMOn__wrapper_8cpp_a376fcabfd8429288efa3398dc2f3e8e1}{Param} $\ast$in\+Param, \hyperlink{CSMOn__wrapper_8cpp_a376fcabfd8429288efa3398dc2f3e8e1}{Param} $\ast$out\+Param, double $\ast$out\+Pos, callback\+\_\+t \hyperlink{pso__example_8cpp_a83166d0bb0a7ea8732e9af3c35951372}{fitness\+Function})
-\begin{DoxyCompactList}\small\item\em The wrapper function for Python calls. \end{DoxyCompactList}\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-This file contains the wrapper code for Python calls.
-
-\begin{DoxyDate}{Date}
-02/\+Jul/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition in file \hyperlink{CSMOn__wrapper_8cpp_source}{C\+S\+M\+On\+\_\+wrapper.\+cpp}.
-
-
-
-\subsection{Function Documentation}
-\hypertarget{CSMOn__wrapper_8cpp_a918c532a1803542131c64811335fe6d7}{\index{C\+S\+M\+On\+\_\+wrapper.\+cpp@{C\+S\+M\+On\+\_\+wrapper.\+cpp}!search@{search}}
-\index{search@{search}!C\+S\+M\+On\+\_\+wrapper.\+cpp@{C\+S\+M\+On\+\_\+wrapper.\+cpp}}
-\subsubsection[{search}]{\setlength{\rightskip}{0pt plus 5cm}void search (
-\begin{DoxyParamCaption}
-\item[{char $\ast$}]{method, }
-\item[{{\bf Param} $\ast$}]{in\+Param, }
-\item[{{\bf Param} $\ast$}]{out\+Param, }
-\item[{double $\ast$}]{out\+Pos, }
-\item[{callback\+\_\+t}]{fitness\+Function}
-\end{DoxyParamCaption}
-)}}\label{CSMOn__wrapper_8cpp_a918c532a1803542131c64811335fe6d7}
-
-
-The wrapper function for Python calls. 
-
-Call this method from Python using ctypes interface.
-
-
-\begin{DoxyParams}{Parameters}
-{\em method} & A string speficying the search method to be used. \\
-\hline
-{\em in\+Param} & The parameters required to call the search method specified. \\
-\hline
-{\em out\+Param} & The parameters returned by the search method called. This will be returned back to the Python caller. \\
-\hline
-{\em out\+Pos} & The final result containing the optimized position. This will be returned back to the Python caller. \\
-\hline
-{\em fitness\+Function} & The callback Python function containing the code for the fitness function evaluation. \\
-\hline
-\end{DoxyParams}
-
-
-Definition at line 69 of file C\+S\+M\+On\+\_\+wrapper.\+cpp.
-
diff --git a/doc/latex/CSMOn__wrapper_8cpp__incl.md5 b/doc/latex/CSMOn__wrapper_8cpp__incl.md5
deleted file mode 100644
index 3f5e56f..0000000
--- a/doc/latex/CSMOn__wrapper_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-fe0aa22124a8f0a749f01ace9a7ee3f4
\ No newline at end of file
diff --git a/doc/latex/CSMOn__wrapper_8cpp__incl.pdf b/doc/latex/CSMOn__wrapper_8cpp__incl.pdf
deleted file mode 100644
index 198d6a6afbeb765437ba522e860c6dc12cd54242..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 15546
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

diff --git a/doc/latex/Makefile b/doc/latex/Makefile
deleted file mode 100644
index 8cc3866..0000000
--- a/doc/latex/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-all: refman.pdf
-
-pdf: refman.pdf
-
-refman.pdf: clean refman.tex
-	pdflatex refman
-	makeindex refman.idx
-	pdflatex refman
-	latex_count=8 ; \
-	while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\
-	    do \
-	      echo "Rerunning latex...." ;\
-	      pdflatex refman ;\
-	      latex_count=`expr $$latex_count - 1` ;\
-	    done
-	makeindex refman.idx
-	pdflatex refman
-
-
-clean:
-	rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf
diff --git a/doc/latex/annotated.tex b/doc/latex/annotated.tex
deleted file mode 100644
index 25f8ca6..0000000
--- a/doc/latex/annotated.tex
+++ /dev/null
@@ -1,8 +0,0 @@
-\section{Data Structures}
-Here are the data structures with brief descriptions\+:\begin{DoxyCompactList}
-\item\contentsline{section}{\hyperlink{struct__Param}{\+\_\+\+Param} \\*Contains a parameter received from / sent to the Python caller }{\pageref{struct__Param}}{}
-\item\contentsline{section}{\hyperlink{struct__point}{\+\_\+point} \\*A point representing the number of evaluations and the respective fitness value }{\pageref{struct__point}}{}
-\item\contentsline{section}{\hyperlink{classCSMOn}{C\+S\+M\+On} \\*Convergence Stabilization Modeling operating in Online Mode }{\pageref{classCSMOn}}{}
-\item\contentsline{section}{\hyperlink{classISearch}{I\+Search} \\*The interface that the search methods must to implement }{\pageref{classISearch}}{}
-\item\contentsline{section}{\hyperlink{classPSO}{P\+S\+O} \\*Particle Swarm Optimization }{\pageref{classPSO}}{}
-\end{DoxyCompactList}
diff --git a/doc/latex/classCSMOn.tex b/doc/latex/classCSMOn.tex
deleted file mode 100644
index 962cbd6..0000000
--- a/doc/latex/classCSMOn.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\hypertarget{classCSMOn}{\section{C\+S\+M\+On Class Reference}
-\label{classCSMOn}\index{C\+S\+M\+On@{C\+S\+M\+On}}
-}
-
-
-Convergence Stabilization Modeling operating in Online Mode.  
-
-
-
-
-{\ttfamily \#include $<$C\+S\+M\+On.\+hpp$>$}
-
-\subsection*{Public Member Functions}
-\begin{DoxyCompactItemize}
-\item 
-\hyperlink{classCSMOn_a9b25325acfda9b579b3a272ed474480e}{C\+S\+M\+On} (\hyperlink{classISearch}{I\+Search} $\ast$search, int M, double R, double min\+Estimated\+Fit)
-\begin{DoxyCompactList}\small\item\em Class for \hyperlink{classCSMOn}{C\+S\+M\+On}. \end{DoxyCompactList}\item 
-\hypertarget{classCSMOn_a287ef04ef03f758a2a121057e9798c22}{void \hyperlink{classCSMOn_a287ef04ef03f758a2a121057e9798c22}{run} ()}\label{classCSMOn_a287ef04ef03f758a2a121057e9798c22}
-
-\begin{DoxyCompactList}\small\item\em Call this method to execute the search. \end{DoxyCompactList}\item 
-\hypertarget{classCSMOn_a758de932efcf1be4537984541123774b}{void {\bfseries get\+Best} (int n\+Best)}\label{classCSMOn_a758de932efcf1be4537984541123774b}
-
-\item 
-\hypertarget{classCSMOn_a231fc5e5b6a478e8315f1fc867771ff2}{int {\bfseries adjust\+Exp} (double r)}\label{classCSMOn_a231fc5e5b6a478e8315f1fc867771ff2}
-
-\item 
-\hypertarget{classCSMOn_a2c2ce1d69d99154585fe49908cd40fa7}{int {\bfseries adjust\+Log} (double r, int p\+T)}\label{classCSMOn_a2c2ce1d69d99154585fe49908cd40fa7}
-
-\item 
-int \hyperlink{classCSMOn_af423cda7d5f129d768ec5d4ef6f80593}{get\+N\+Evals} ()
-\begin{DoxyCompactList}\small\item\em Get the actual number of evaluations executed. \end{DoxyCompactList}\item 
-double \hyperlink{classCSMOn_a4b1a2a4e99746adec24b3cdf683f31c5}{get\+Fitness} ()
-\begin{DoxyCompactList}\small\item\em Get the final fitness value. \end{DoxyCompactList}\item 
-int \hyperlink{classCSMOn_ac5665384c5c4af241bbead4f98fdb3c6}{get\+Best\+Pos} (double $\ast$x)
-\begin{DoxyCompactList}\small\item\em Get the final optimized result (position). \end{DoxyCompactList}\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-Convergence Stabilization Modeling operating in Online Mode. 
-
-\begin{DoxyDate}{Date}
-04/\+Mar/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition at line 75 of file C\+S\+M\+On.\+hpp.
-
-
-
-\subsection{Constructor \& Destructor Documentation}
-\hypertarget{classCSMOn_a9b25325acfda9b579b3a272ed474480e}{\index{C\+S\+M\+On@{C\+S\+M\+On}!C\+S\+M\+On@{C\+S\+M\+On}}
-\index{C\+S\+M\+On@{C\+S\+M\+On}!C\+S\+M\+On@{C\+S\+M\+On}}
-\subsubsection[{C\+S\+M\+On}]{\setlength{\rightskip}{0pt plus 5cm}C\+S\+M\+On\+::\+C\+S\+M\+On (
-\begin{DoxyParamCaption}
-\item[{{\bf I\+Search} $\ast$}]{search, }
-\item[{int}]{M, }
-\item[{double}]{R, }
-\item[{double}]{min\+Estimated\+Fit}
-\end{DoxyParamCaption}
-)}}\label{classCSMOn_a9b25325acfda9b579b3a272ed474480e}
-
-
-Class for \hyperlink{classCSMOn}{C\+S\+M\+On}. 
-
-Always call this class directly (instead of the search method).
-
-
-\begin{DoxyParams}{Parameters}
-{\em search} & The instance for the search method. \\
-\hline
-{\em M} & The maximum number of fitness function evaluations allocated for this run. \\
-\hline
-{\em R} & The relaxation to be used for the limit calculations, in the interval \mbox{]}0,1\mbox{[}. For decreasing relaxation, provide it in negative values. \\
-\hline
-{\em min\+Estimated\+Fit} & The lowest fitness value expected. \\
-\hline
-\end{DoxyParams}
-
-
-Definition at line 43 of file C\+S\+M\+On.\+cpp.
-
-
-
-\subsection{Member Function Documentation}
-\hypertarget{classCSMOn_ac5665384c5c4af241bbead4f98fdb3c6}{\index{C\+S\+M\+On@{C\+S\+M\+On}!get\+Best\+Pos@{get\+Best\+Pos}}
-\index{get\+Best\+Pos@{get\+Best\+Pos}!C\+S\+M\+On@{C\+S\+M\+On}}
-\subsubsection[{get\+Best\+Pos}]{\setlength{\rightskip}{0pt plus 5cm}int C\+S\+M\+On\+::get\+Best\+Pos (
-\begin{DoxyParamCaption}
-\item[{double $\ast$}]{x}
-\end{DoxyParamCaption}
-)}}\label{classCSMOn_ac5665384c5c4af241bbead4f98fdb3c6}
-
-
-Get the final optimized result (position). 
-
-\begin{DoxyReturn}{Returns}
-The final position. 
-\end{DoxyReturn}
-
-
-Definition at line 198 of file C\+S\+M\+On.\+cpp.
-
-\hypertarget{classCSMOn_a4b1a2a4e99746adec24b3cdf683f31c5}{\index{C\+S\+M\+On@{C\+S\+M\+On}!get\+Fitness@{get\+Fitness}}
-\index{get\+Fitness@{get\+Fitness}!C\+S\+M\+On@{C\+S\+M\+On}}
-\subsubsection[{get\+Fitness}]{\setlength{\rightskip}{0pt plus 5cm}double C\+S\+M\+On\+::get\+Fitness (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)}}\label{classCSMOn_a4b1a2a4e99746adec24b3cdf683f31c5}
-
-
-Get the final fitness value. 
-
-\begin{DoxyReturn}{Returns}
-The final fitness value. 
-\end{DoxyReturn}
-
-
-Definition at line 178 of file C\+S\+M\+On.\+cpp.
-
-\hypertarget{classCSMOn_af423cda7d5f129d768ec5d4ef6f80593}{\index{C\+S\+M\+On@{C\+S\+M\+On}!get\+N\+Evals@{get\+N\+Evals}}
-\index{get\+N\+Evals@{get\+N\+Evals}!C\+S\+M\+On@{C\+S\+M\+On}}
-\subsubsection[{get\+N\+Evals}]{\setlength{\rightskip}{0pt plus 5cm}int C\+S\+M\+On\+::get\+N\+Evals (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)}}\label{classCSMOn_af423cda7d5f129d768ec5d4ef6f80593}
-
-
-Get the actual number of evaluations executed. 
-
-\begin{DoxyReturn}{Returns}
-The actual number of evaluations executed. 
-\end{DoxyReturn}
-
-
-Definition at line 188 of file C\+S\+M\+On.\+cpp.
-
-
-
-The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
-\item 
-cpp/C\+S\+M\+On.\+hpp\item 
-cpp/C\+S\+M\+On.\+cpp\end{DoxyCompactItemize}
diff --git a/doc/latex/classISearch.tex b/doc/latex/classISearch.tex
deleted file mode 100644
index 6ad0d7a..0000000
--- a/doc/latex/classISearch.tex
+++ /dev/null
@@ -1,138 +0,0 @@
-\hypertarget{classISearch}{\section{I\+Search Class Reference}
-\label{classISearch}\index{I\+Search@{I\+Search}}
-}
-
-
-The interface that the search methods must to implement.  
-
-
-
-
-{\ttfamily \#include $<$I\+Search.\+hpp$>$}
-
-
-
-Inheritance diagram for I\+Search\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=130pt]{classISearch__inherit__graph}
-\end{center}
-\end{figure}
-\subsection*{Public Member Functions}
-\begin{DoxyCompactItemize}
-\item 
-\hypertarget{classISearch_a8eabe4ae3ed69ede2646a536f558f2fe}{virtual void \hyperlink{classISearch_a8eabe4ae3ed69ede2646a536f558f2fe}{startup} ()=0}\label{classISearch_a8eabe4ae3ed69ede2646a536f558f2fe}
-
-\begin{DoxyCompactList}\small\item\em Startup the search method. \end{DoxyCompactList}\item 
-virtual void \hyperlink{classISearch_ae3cc643bf0fbe9d9bac1d43642bbb129}{next} (int M)=0
-\begin{DoxyCompactList}\small\item\em Obtain the next improvement. \end{DoxyCompactList}\item 
-virtual int \hyperlink{classISearch_a9cee257ee19c02341da60440c5cddbd8}{get\+Best\+Pos} (double $\ast$\+\_\+x)=0
-\begin{DoxyCompactList}\small\item\em Get the best result obtained up to the moment. \end{DoxyCompactList}\item 
-virtual int \hyperlink{classISearch_a56f6b069cc3dd7f8e3f2ff38bb681639}{get\+N\+Evals} ()=0
-\begin{DoxyCompactList}\small\item\em Get the number of fitness function evaluations performed up to the moment. \end{DoxyCompactList}\item 
-virtual double \hyperlink{classISearch_a3504ed6684ca6c82aa79c40b965d5237}{get\+Fitness} ()=0
-\begin{DoxyCompactList}\small\item\em Get the best fitness value found up to the moment. \end{DoxyCompactList}\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-The interface that the search methods must to implement. 
-
-\begin{DoxyDate}{Date}
-04/\+Mar/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition at line 40 of file I\+Search.\+hpp.
-
-
-
-\subsection{Member Function Documentation}
-\hypertarget{classISearch_a9cee257ee19c02341da60440c5cddbd8}{\index{I\+Search@{I\+Search}!get\+Best\+Pos@{get\+Best\+Pos}}
-\index{get\+Best\+Pos@{get\+Best\+Pos}!I\+Search@{I\+Search}}
-\subsubsection[{get\+Best\+Pos}]{\setlength{\rightskip}{0pt plus 5cm}virtual int I\+Search\+::get\+Best\+Pos (
-\begin{DoxyParamCaption}
-\item[{double $\ast$}]{\+\_\+x}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classISearch_a9cee257ee19c02341da60440c5cddbd8}
-
-
-Get the best result obtained up to the moment. 
-
-
-\begin{DoxyParams}{Parameters}
-{\em \+\_\+x} & A pointer to store the positions of the best result. \\
-\hline
-\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-An I\+D for the best result (implementation specific). 
-\end{DoxyReturn}
-
-
-Implemented in \hyperlink{classPSO_a649d2a7b444ac91bfb05d7e9f3c2e20e}{P\+S\+O}.
-
-\hypertarget{classISearch_a3504ed6684ca6c82aa79c40b965d5237}{\index{I\+Search@{I\+Search}!get\+Fitness@{get\+Fitness}}
-\index{get\+Fitness@{get\+Fitness}!I\+Search@{I\+Search}}
-\subsubsection[{get\+Fitness}]{\setlength{\rightskip}{0pt plus 5cm}virtual double I\+Search\+::get\+Fitness (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classISearch_a3504ed6684ca6c82aa79c40b965d5237}
-
-
-Get the best fitness value found up to the moment. 
-
-\begin{DoxyReturn}{Returns}
-The best fitness value found. 
-\end{DoxyReturn}
-
-
-Implemented in \hyperlink{classPSO_a9859c4126970209c8c8f534d4458dbd7}{P\+S\+O}.
-
-\hypertarget{classISearch_a56f6b069cc3dd7f8e3f2ff38bb681639}{\index{I\+Search@{I\+Search}!get\+N\+Evals@{get\+N\+Evals}}
-\index{get\+N\+Evals@{get\+N\+Evals}!I\+Search@{I\+Search}}
-\subsubsection[{get\+N\+Evals}]{\setlength{\rightskip}{0pt plus 5cm}virtual int I\+Search\+::get\+N\+Evals (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classISearch_a56f6b069cc3dd7f8e3f2ff38bb681639}
-
-
-Get the number of fitness function evaluations performed up to the moment. 
-
-\begin{DoxyReturn}{Returns}
-The number of evaluations performed. 
-\end{DoxyReturn}
-
-
-Implemented in \hyperlink{classPSO_aa5c58e658a718b2f75b58b51c312f2ba}{P\+S\+O}.
-
-\hypertarget{classISearch_ae3cc643bf0fbe9d9bac1d43642bbb129}{\index{I\+Search@{I\+Search}!next@{next}}
-\index{next@{next}!I\+Search@{I\+Search}}
-\subsubsection[{next}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Search\+::next (
-\begin{DoxyParamCaption}
-\item[{int}]{M}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{classISearch_ae3cc643bf0fbe9d9bac1d43642bbb129}
-
-
-Obtain the next improvement. 
-
-
-\begin{DoxyParams}{Parameters}
-{\em M} & The maximum number of evaluations allowed. \\
-\hline
-\end{DoxyParams}
-
-
-Implemented in \hyperlink{classPSO_a465d956bdb86e93bc06b6fb016feb70c}{P\+S\+O}.
-
-
-
-The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
-\item 
-cpp/I\+Search.\+hpp\item 
-cpp/C\+S\+M\+On.\+cpp\end{DoxyCompactItemize}
diff --git a/doc/latex/classISearch__inherit__graph.md5 b/doc/latex/classISearch__inherit__graph.md5
deleted file mode 100644
index 2795450..0000000
--- a/doc/latex/classISearch__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-d6c3d1753d11f519e5e1df6501743213
\ No newline at end of file
diff --git a/doc/latex/classISearch__inherit__graph.pdf b/doc/latex/classISearch__inherit__graph.pdf
deleted file mode 100644
index 41cd5acbdbf9fb9e5a6d095c3b470b9dc163e1e2..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11343
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

diff --git a/doc/latex/classPSO.tex b/doc/latex/classPSO.tex
deleted file mode 100644
index 7008fd7..0000000
--- a/doc/latex/classPSO.tex
+++ /dev/null
@@ -1,231 +0,0 @@
-\hypertarget{classPSO}{\section{P\+S\+O Class Reference}
-\label{classPSO}\index{P\+S\+O@{P\+S\+O}}
-}
-
-
-Particle Swarm Optimization.  
-
-
-
-
-{\ttfamily \#include $<$P\+S\+O.\+hpp$>$}
-
-
-
-Inheritance diagram for P\+S\+O\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=130pt]{classPSO__inherit__graph}
-\end{center}
-\end{figure}
-
-
-Collaboration diagram for P\+S\+O\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=130pt]{classPSO__coll__graph}
-\end{center}
-\end{figure}
-\subsection*{Public Member Functions}
-\begin{DoxyCompactItemize}
-\item 
-\hyperlink{classPSO_a810105b87e4f6fc026edd6b4ef484953}{P\+S\+O} (callback\+\_\+t fitness\+Function, double s1, double s2, int p, int n, double w, double c1, double c2)
-\begin{DoxyCompactList}\small\item\em A standard implementation of \hyperlink{classPSO}{P\+S\+O}. \end{DoxyCompactList}\item 
-\hypertarget{classPSO_a4866695395fb314ea732bccde6691ef3}{void \hyperlink{classPSO_a4866695395fb314ea732bccde6691ef3}{startup} ()}\label{classPSO_a4866695395fb314ea732bccde6691ef3}
-
-\begin{DoxyCompactList}\small\item\em Startup the \hyperlink{classPSO}{P\+S\+O}. \end{DoxyCompactList}\item 
-void \hyperlink{classPSO_a465d956bdb86e93bc06b6fb016feb70c}{next} (int M)
-\begin{DoxyCompactList}\small\item\em Obtain the next improvement. \end{DoxyCompactList}\item 
-int \hyperlink{classPSO_a649d2a7b444ac91bfb05d7e9f3c2e20e}{get\+Best\+Pos} (double $\ast$\+\_\+x)
-\begin{DoxyCompactList}\small\item\em Get the best result obtained up to the moment (global best). \end{DoxyCompactList}\item 
-int \hyperlink{classPSO_aa5c58e658a718b2f75b58b51c312f2ba}{get\+N\+Evals} ()
-\begin{DoxyCompactList}\small\item\em Get the number of fitness function evaluations performed up to the moment. \end{DoxyCompactList}\item 
-double \hyperlink{classPSO_a9859c4126970209c8c8f534d4458dbd7}{get\+Fitness} ()
-\begin{DoxyCompactList}\small\item\em Get the best fitness value found up to the moment. \end{DoxyCompactList}\item 
-unsigned int \hyperlink{classPSO_a0e3ed1fa7e0bb64ca9e6afcdca8d1813}{get\+Random\+Seed} ()
-\begin{DoxyCompactList}\small\item\em Get a random number to be used as seed for the random number generator. \end{DoxyCompactList}\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-Particle Swarm Optimization. 
-
-\begin{DoxyDate}{Date}
-04/\+Mar/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition at line 53 of file P\+S\+O.\+hpp.
-
-
-
-\subsection{Constructor \& Destructor Documentation}
-\hypertarget{classPSO_a810105b87e4f6fc026edd6b4ef484953}{\index{P\+S\+O@{P\+S\+O}!P\+S\+O@{P\+S\+O}}
-\index{P\+S\+O@{P\+S\+O}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{P\+S\+O}]{\setlength{\rightskip}{0pt plus 5cm}P\+S\+O\+::\+P\+S\+O (
-\begin{DoxyParamCaption}
-\item[{callback\+\_\+t}]{fitness\+Function, }
-\item[{double}]{s1, }
-\item[{double}]{s2, }
-\item[{int}]{p, }
-\item[{int}]{n, }
-\item[{double}]{w, }
-\item[{double}]{c1, }
-\item[{double}]{c2}
-\end{DoxyParamCaption}
-)}}\label{classPSO_a810105b87e4f6fc026edd6b4ef484953}
-
-
-A standard implementation of \hyperlink{classPSO}{P\+S\+O}. 
-
-
-\begin{DoxyParams}{Parameters}
-{\em fitness\+Function} & The callback reference to the fitness function. \\
-\hline
-{\em s1} & The lower bound of the search space. \\
-\hline
-{\em s2} & The upper bound of the search space. \\
-\hline
-{\em p} & The number of particles. \\
-\hline
-{\em n} & The number of dimensions of the problem. \\
-\hline
-{\em w} & The acceleration coefficient. For linear decreasing weight, provide it in negative values \\
-\hline
-{\em c1} & The cognitive knowledge rate. \\
-\hline
-{\em c2} & The social knowledge rate. \\
-\hline
-\end{DoxyParams}
-
-
-Definition at line 45 of file P\+S\+O.\+cpp.
-
-
-
-\subsection{Member Function Documentation}
-\hypertarget{classPSO_a649d2a7b444ac91bfb05d7e9f3c2e20e}{\index{P\+S\+O@{P\+S\+O}!get\+Best\+Pos@{get\+Best\+Pos}}
-\index{get\+Best\+Pos@{get\+Best\+Pos}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{get\+Best\+Pos}]{\setlength{\rightskip}{0pt plus 5cm}int P\+S\+O\+::get\+Best\+Pos (
-\begin{DoxyParamCaption}
-\item[{double $\ast$}]{\+\_\+x}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classPSO_a649d2a7b444ac91bfb05d7e9f3c2e20e}
-
-
-Get the best result obtained up to the moment (global best). 
-
-
-\begin{DoxyParams}{Parameters}
-{\em \+\_\+x} & A pointer to store the positions of the global best. \\
-\hline
-\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-The index of the particle that found the global best position. 
-\end{DoxyReturn}
-
-
-Implements \hyperlink{classISearch_a9cee257ee19c02341da60440c5cddbd8}{I\+Search}.
-
-
-
-Definition at line 160 of file P\+S\+O.\+cpp.
-
-\hypertarget{classPSO_a9859c4126970209c8c8f534d4458dbd7}{\index{P\+S\+O@{P\+S\+O}!get\+Fitness@{get\+Fitness}}
-\index{get\+Fitness@{get\+Fitness}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{get\+Fitness}]{\setlength{\rightskip}{0pt plus 5cm}double P\+S\+O\+::get\+Fitness (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classPSO_a9859c4126970209c8c8f534d4458dbd7}
-
-
-Get the best fitness value found up to the moment. 
-
-\begin{DoxyReturn}{Returns}
-The best fitness value found. 
-\end{DoxyReturn}
-
-
-Implements \hyperlink{classISearch_a3504ed6684ca6c82aa79c40b965d5237}{I\+Search}.
-
-
-
-Definition at line 180 of file P\+S\+O.\+cpp.
-
-\hypertarget{classPSO_aa5c58e658a718b2f75b58b51c312f2ba}{\index{P\+S\+O@{P\+S\+O}!get\+N\+Evals@{get\+N\+Evals}}
-\index{get\+N\+Evals@{get\+N\+Evals}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{get\+N\+Evals}]{\setlength{\rightskip}{0pt plus 5cm}int P\+S\+O\+::get\+N\+Evals (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classPSO_aa5c58e658a718b2f75b58b51c312f2ba}
-
-
-Get the number of fitness function evaluations performed up to the moment. 
-
-\begin{DoxyReturn}{Returns}
-The number of evaluations performed. 
-\end{DoxyReturn}
-
-
-Implements \hyperlink{classISearch_a56f6b069cc3dd7f8e3f2ff38bb681639}{I\+Search}.
-
-
-
-Definition at line 170 of file P\+S\+O.\+cpp.
-
-\hypertarget{classPSO_a0e3ed1fa7e0bb64ca9e6afcdca8d1813}{\index{P\+S\+O@{P\+S\+O}!get\+Random\+Seed@{get\+Random\+Seed}}
-\index{get\+Random\+Seed@{get\+Random\+Seed}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{get\+Random\+Seed}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int P\+S\+O\+::get\+Random\+Seed (
-\begin{DoxyParamCaption}
-{}
-\end{DoxyParamCaption}
-)}}\label{classPSO_a0e3ed1fa7e0bb64ca9e6afcdca8d1813}
-
-
-Get a random number to be used as seed for the random number generator. 
-
-This implementation can be adapted/changed as necessary.
-
-\begin{DoxyReturn}{Returns}
-A random seed. 
-\end{DoxyReturn}
-
-
-Definition at line 191 of file P\+S\+O.\+cpp.
-
-\hypertarget{classPSO_a465d956bdb86e93bc06b6fb016feb70c}{\index{P\+S\+O@{P\+S\+O}!next@{next}}
-\index{next@{next}!P\+S\+O@{P\+S\+O}}
-\subsubsection[{next}]{\setlength{\rightskip}{0pt plus 5cm}void P\+S\+O\+::next (
-\begin{DoxyParamCaption}
-\item[{int}]{M}
-\end{DoxyParamCaption}
-)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classPSO_a465d956bdb86e93bc06b6fb016feb70c}
-
-
-Obtain the next improvement. 
-
-
-\begin{DoxyParams}{Parameters}
-{\em M} & The maximum number of evaluations allowed. \\
-\hline
-\end{DoxyParams}
-
-
-Implements \hyperlink{classISearch_ae3cc643bf0fbe9d9bac1d43642bbb129}{I\+Search}.
-
-
-
-Definition at line 120 of file P\+S\+O.\+cpp.
-
-
-
-The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
-\item 
-cpp/P\+S\+O.\+hpp\item 
-cpp/P\+S\+O.\+cpp\end{DoxyCompactItemize}
diff --git a/doc/latex/classPSO__coll__graph.md5 b/doc/latex/classPSO__coll__graph.md5
deleted file mode 100644
index 7a2e7f6..0000000
--- a/doc/latex/classPSO__coll__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-dec449644d5c975ef4bf0fd787f3ac96
\ No newline at end of file
diff --git a/doc/latex/classPSO__coll__graph.pdf b/doc/latex/classPSO__coll__graph.pdf
deleted file mode 100644
index dc16ec194c22ca5d0bdef97a618bc519c60cc2cc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11340
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

diff --git a/doc/latex/classPSO__inherit__graph.md5 b/doc/latex/classPSO__inherit__graph.md5
deleted file mode 100644
index 7a2e7f6..0000000
--- a/doc/latex/classPSO__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-dec449644d5c975ef4bf0fd787f3ac96
\ No newline at end of file
diff --git a/doc/latex/classPSO__inherit__graph.pdf b/doc/latex/classPSO__inherit__graph.pdf
deleted file mode 100644
index dc16ec194c22ca5d0bdef97a618bc519c60cc2cc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11340
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

diff --git a/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79.tex b/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79.tex
deleted file mode 100644
index c8509e2..0000000
--- a/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79.tex
+++ /dev/null
@@ -1,15 +0,0 @@
-\hypertarget{dir_7837fde3ab9c1fb2fc5be7b717af8d79}{\section{python Directory Reference}
-\label{dir_7837fde3ab9c1fb2fc5be7b717af8d79}\index{python Directory Reference@{python Directory Reference}}
-}
-Directory dependency graph for python\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=134pt]{dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep}
-\end{center}
-\end{figure}
-\subsection*{Files}
-\begin{DoxyCompactItemize}
-\item 
-file \hyperlink{CSMOn__wrapper_8cpp}{C\+S\+M\+On\+\_\+wrapper.\+cpp}
-\end{DoxyCompactItemize}
diff --git a/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5 b/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
deleted file mode 100644
index 99f66f3..0000000
--- a/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
+++ /dev/null
@@ -1 +0,0 @@
-b1eb1efbc66dfb4c203863d5f3de367d
\ No newline at end of file
diff --git a/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.pdf b/doc/latex/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.pdf
deleted file mode 100644
index ad3c669fcbd007c252fbef0f0416f883c01a2f4a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10510
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
KRn^tsjSB$hX|lBd

diff --git a/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8.tex b/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8.tex
deleted file mode 100644
index e462d34..0000000
--- a/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8.tex
+++ /dev/null
@@ -1,25 +0,0 @@
-\hypertarget{dir_df511e5bd85cec96854b39d5e1c27aa8}{\section{cpp Directory Reference}
-\label{dir_df511e5bd85cec96854b39d5e1c27aa8}\index{cpp Directory Reference@{cpp Directory Reference}}
-}
-Directory dependency graph for cpp\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=134pt]{dir_df511e5bd85cec96854b39d5e1c27aa8_dep}
-\end{center}
-\end{figure}
-\subsection*{Files}
-\begin{DoxyCompactItemize}
-\item 
-file {\bfseries C\+S\+M\+On.\+cpp}
-\item 
-file {\bfseries C\+S\+M\+On.\+hpp}
-\item 
-file {\bfseries I\+Search.\+hpp}
-\item 
-file {\bfseries P\+S\+O.\+cpp}
-\item 
-file {\bfseries P\+S\+O.\+hpp}
-\item 
-file \hyperlink{pso__example_8cpp}{pso\+\_\+example.\+cpp}
-\end{DoxyCompactItemize}
diff --git a/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5 b/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
deleted file mode 100644
index d7bea35..0000000
--- a/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
+++ /dev/null
@@ -1 +0,0 @@
-1abb9bb70849c88a46921d6545cf4913
\ No newline at end of file
diff --git a/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.pdf b/doc/latex/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.pdf
deleted file mode 100644
index ea4669ac0a867f0f8e3595bca57abf271c0c1c67..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 9835
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

diff --git a/doc/latex/doxygen.sty b/doc/latex/doxygen.sty
deleted file mode 100644
index 072104b..0000000
--- a/doc/latex/doxygen.sty
+++ /dev/null
@@ -1,468 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{doxygen}
-
-% Packages used by this style file
-\RequirePackage{alltt}
-\RequirePackage{array}
-\RequirePackage{calc}
-\RequirePackage{float}
-\RequirePackage{ifthen}
-\RequirePackage{verbatim}
-\RequirePackage[table]{xcolor}
-\RequirePackage{xtab}
-
-%---------- Internal commands used in this style file ----------------
-
-\newcommand{\ensurespace}[1]{%
-  \begingroup%
-    \setlength{\dimen@}{#1}%
-    \vskip\z@\@plus\dimen@%
-    \penalty -100\vskip\z@\@plus -\dimen@%
-    \vskip\dimen@%
-    \penalty 9999%
-    \vskip -\dimen@%
-    \vskip\z@skip% hide the previous |\vskip| from |\addvspace|
-  \endgroup%
-}
-
-\newcommand{\DoxyLabelFont}{}
-\newcommand{\entrylabel}[1]{%
-  {%
-    \parbox[b]{\labelwidth-4pt}{%
-      \makebox[0pt][l]{\DoxyLabelFont#1}%
-      \vspace{1.5\baselineskip}%
-    }%
-  }%
-}
-
-\newenvironment{DoxyDesc}[1]{%
-  \ensurespace{4\baselineskip}%
-  \begin{list}{}{%
-    \settowidth{\labelwidth}{20pt}%
-    \setlength{\parsep}{0pt}%
-    \setlength{\itemsep}{0pt}%
-    \setlength{\leftmargin}{\labelwidth+\labelsep}%
-    \renewcommand{\makelabel}{\entrylabel}%
-  }%
-  \item[#1]%
-}{%
-  \end{list}%
-}
-
-\newsavebox{\xrefbox}
-\newlength{\xreflength}
-\newcommand{\xreflabel}[1]{%
-  \sbox{\xrefbox}{#1}%
-  \setlength{\xreflength}{\wd\xrefbox}%
-  \ifthenelse{\xreflength>\labelwidth}{%
-    \begin{minipage}{\textwidth}%
-      \setlength{\parindent}{0pt}%
-      \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
-    \end{minipage}%
-  }{%
-   \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
-  }%
-}
-
-%---------- Commands used by doxygen LaTeX output generator ----------
-
-% Used by <pre> ... </pre>
-\newenvironment{DoxyPre}{%
-  \small%
-  \begin{alltt}%
-}{%
-  \end{alltt}%
-  \normalsize%
-}
-
-% Used by @code ... @endcode
-\newenvironment{DoxyCode}{%
-  \par%
-  \scriptsize%
-  \begin{alltt}%
-}{%
-  \end{alltt}%
-  \normalsize%
-}
-
-% Used by @example, @include, @includelineno and @dontinclude
-\newenvironment{DoxyCodeInclude}{%
-  \DoxyCode%
-}{%
-  \endDoxyCode%
-}
-
-% Used by @verbatim ... @endverbatim
-\newenvironment{DoxyVerb}{%
-  \footnotesize%
-  \verbatim%
-}{%
-  \endverbatim%
-  \normalsize%
-}
-
-% Used by @verbinclude
-\newenvironment{DoxyVerbInclude}{%
-  \DoxyVerb%
-}{%
-  \endDoxyVerb%
-}
-
-% Used by numbered lists (using '-#' or <ol> ... </ol>)
-\newenvironment{DoxyEnumerate}{%
-  \enumerate%
-}{%
-  \endenumerate%
-}
-
-% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
-\newenvironment{DoxyItemize}{%
-  \itemize%
-}{%
-  \enditemize%
-}
-
-% Used by description lists (using <dl> ... </dl>)
-\newenvironment{DoxyDescription}{%
-  \description%
-}{%
-  \enddescription%
-}
-
-% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
-% (only if caption is specified)
-\newenvironment{DoxyImage}{%
-  \begin{figure}[H]%
-    \begin{center}%
-}{%
-    \end{center}%
-  \end{figure}%
-}
-
-% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
-% (only if no caption is specified)
-\newenvironment{DoxyImageNoCaption}{%
-}{%
-}
-
-% Used by @attention
-\newenvironment{DoxyAttention}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @author and @authors
-\newenvironment{DoxyAuthor}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @date
-\newenvironment{DoxyDate}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @invariant
-\newenvironment{DoxyInvariant}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @note
-\newenvironment{DoxyNote}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @post
-\newenvironment{DoxyPostcond}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @pre
-\newenvironment{DoxyPrecond}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @copyright
-\newenvironment{DoxyCopyright}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @remark
-\newenvironment{DoxyRemark}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @return and @returns
-\newenvironment{DoxyReturn}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @since
-\newenvironment{DoxySince}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @see
-\newenvironment{DoxySeeAlso}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @version
-\newenvironment{DoxyVersion}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @warning
-\newenvironment{DoxyWarning}[1]{%
-  \begin{DoxyDesc}{#1}%
-}{%
-  \end{DoxyDesc}%
-}
-
-% Used by @internal
-\newenvironment{DoxyInternal}[1]{%
-  \paragraph*{#1}%
-}{%
-}
-
-% Used by @par and @paragraph
-\newenvironment{DoxyParagraph}[1]{%
-  \begin{list}{}{%
-    \settowidth{\labelwidth}{40pt}%
-    \setlength{\leftmargin}{\labelwidth}%
-    \setlength{\parsep}{0pt}%
-    \setlength{\itemsep}{-4pt}%
-    \renewcommand{\makelabel}{\entrylabel}%
-  }%
-  \item[#1]%
-}{%
-  \end{list}%
-}
-
-% Used by parameter lists
-\newenvironment{DoxyParams}[2][]{%
-    \par%
-    \tabletail{\hline}%
-    \tablelasttail{\hline}%
-    \tablefirsthead{}%
-    \tablehead{}%
-    \ifthenelse{\equal{#1}{}}%
-    {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
-     \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
-                        p{0.805\textwidth}|}}%
-    {\ifthenelse{\equal{#1}{1}}%
-      {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
-       \begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
-                         >{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
-                         p{0.678\textwidth}|}}%
-      {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
-       \begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
-                         >{\centering\hspace{0pt}}p{0.15\textwidth}|%
-                         >{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
-                         p{0.501\textwidth}|}}%
-    }\hline%
-}{%
-    \end{xtabular}%
-    \tablefirsthead{}%
-    \vspace{6pt}%
-}
-
-% Used for fields of simple structs
-\newenvironment{DoxyFields}[1]{%
-    \par%
-    \tabletail{\hline}%
-    \tablelasttail{\hline}%
-    \tablehead{}%
-    \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
-    \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
-                         p{0.15\textwidth}|%
-                         p{0.63\textwidth}|}%
-    \hline%
-}{%
-    \end{xtabular}%
-    \tablefirsthead{}%
-    \vspace{6pt}%
-}
-
-% Used for parameters within a detailed function description
-\newenvironment{DoxyParamCaption}{%
-  \renewcommand{\item}[2][]{##1 {\em ##2}}%
-}{%
-}
-
-% Used by return value lists
-\newenvironment{DoxyRetVals}[1]{%
-    \par%
-    \tabletail{\hline}%
-    \tablelasttail{\hline}%
-    \tablehead{}%
-    \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
-    \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
-                          p{0.705\textwidth}|}%
-    \hline%
-}{%
-    \end{xtabular}%
-    \tablefirsthead{}%
-    \vspace{6pt}%
-}
-
-% Used by exception lists
-\newenvironment{DoxyExceptions}[1]{%
-    \par%
-    \tabletail{\hline}%
-    \tablelasttail{\hline}%
-    \tablehead{}%
-    \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
-    \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
-                          p{0.705\textwidth}|}%
-    \hline%
-}{%
-    \end{xtabular}%
-    \tablefirsthead{}%
-    \vspace{6pt}%
-}
-
-% Used by template parameter lists
-\newenvironment{DoxyTemplParams}[1]{%
-    \par%
-    \tabletail{\hline}%
-    \tablelasttail{\hline}%
-    \tablehead{}%
-    \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
-    \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
-                          p{0.705\textwidth}|}%
-    \hline%
-}{%
-    \end{xtabular}%
-    \tablefirsthead{}%
-    \vspace{6pt}%
-}
-
-% Used for member lists
-\newenvironment{DoxyCompactItemize}{%
-  \begin{itemize}%
-    \setlength{\itemsep}{-3pt}%
-    \setlength{\parsep}{0pt}%
-    \setlength{\topsep}{0pt}%
-    \setlength{\partopsep}{0pt}%
-}{%
-  \end{itemize}%
-}
-
-% Used for member descriptions
-\newenvironment{DoxyCompactList}{%
-  \begin{list}{}{%
-    \setlength{\leftmargin}{0.5cm}%
-    \setlength{\itemsep}{0pt}%
-    \setlength{\parsep}{0pt}%
-    \setlength{\topsep}{0pt}%
-    \renewcommand{\makelabel}{\hfill}%
-  }%
-}{%
-  \end{list}%
-}
-
-% Used for reference lists (@bug, @deprecated, @todo, etc.)
-\newenvironment{DoxyRefList}{%
-  \begin{list}{}{%
-    \setlength{\labelwidth}{10pt}%
-    \setlength{\leftmargin}{\labelwidth}%
-    \addtolength{\leftmargin}{\labelsep}%
-    \renewcommand{\makelabel}{\xreflabel}%
-  }%
-}{%
-  \end{list}%
-}
-
-% Used by @bug, @deprecated, @todo, etc.
-\newenvironment{DoxyRefDesc}[1]{%
-  \begin{list}{}{%
-    \renewcommand\makelabel[1]{\textbf{##1}}%
-    \settowidth\labelwidth{\makelabel{#1}}%
-    \setlength\leftmargin{\labelwidth+\labelsep}%
-  }%
-}{%
-  \end{list}%
-}
-
-% Used by parameter lists and simple sections
-\newenvironment{Desc}
-{\begin{list}{}{%
-    \settowidth{\labelwidth}{40pt}%
-    \setlength{\leftmargin}{\labelwidth}%
-    \setlength{\parsep}{0pt}%
-    \setlength{\itemsep}{-4pt}%
-    \renewcommand{\makelabel}{\entrylabel}%
-  }
-}{%
-  \end{list}%
-}
-
-% Used by tables
-\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
-\newlength{\tmplength}%
-\newenvironment{TabularC}[1]%
-{%
-\setlength{\tmplength}%
-     {\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)}%
-      \par\begin{xtabular*}{\linewidth}%
-             {*{#1}{|>{\PBS\raggedright\hspace{0pt}}p{\the\tmplength}}|}%
-}%
-{\end{xtabular*}\par}%
-
-% Used for member group headers
-\newenvironment{Indent}{%
-  \begin{list}{}{%
-    \setlength{\leftmargin}{0.5cm}%
-  }%
-  \item[]\ignorespaces%
-}{%
-  \unskip%
-  \end{list}%
-}
-
-% Used when hyperlinks are turned off
-\newcommand{\doxyref}[3]{%
-  \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
-}
-
-% Used by @addindex
-\newcommand{\lcurly}{\{}
-\newcommand{\rcurly}{\}}
-
-% Used for syntax highlighting
-\definecolor{comment}{rgb}{0.5,0.0,0.0}
-\definecolor{keyword}{rgb}{0.0,0.5,0.0}
-\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
-\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
-\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
-\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
-\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
-\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
-\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
-\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
-\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
diff --git a/doc/latex/files.tex b/doc/latex/files.tex
deleted file mode 100644
index d12c76a..0000000
--- a/doc/latex/files.tex
+++ /dev/null
@@ -1,10 +0,0 @@
-\section{File List}
-Here is a list of all documented files with brief descriptions\+:\begin{DoxyCompactList}
-\item\contentsline{section}{cpp/{\bfseries C\+S\+M\+On.\+cpp} }{\pageref{CSMOn_8cpp}}{}
-\item\contentsline{section}{cpp/{\bfseries C\+S\+M\+On.\+hpp} }{\pageref{CSMOn_8hpp}}{}
-\item\contentsline{section}{cpp/{\bfseries I\+Search.\+hpp} }{\pageref{ISearch_8hpp}}{}
-\item\contentsline{section}{cpp/{\bfseries P\+S\+O.\+cpp} }{\pageref{PSO_8cpp}}{}
-\item\contentsline{section}{cpp/{\bfseries P\+S\+O.\+hpp} }{\pageref{PSO_8hpp}}{}
-\item\contentsline{section}{cpp/\hyperlink{pso__example_8cpp}{pso\+\_\+example.\+cpp} }{\pageref{pso__example_8cpp}}{}
-\item\contentsline{section}{python/\hyperlink{CSMOn__wrapper_8cpp}{C\+S\+M\+On\+\_\+wrapper.\+cpp} }{\pageref{CSMOn__wrapper_8cpp}}{}
-\end{DoxyCompactList}
diff --git a/doc/latex/hierarchy.tex b/doc/latex/hierarchy.tex
deleted file mode 100644
index 7d21c14..0000000
--- a/doc/latex/hierarchy.tex
+++ /dev/null
@@ -1,10 +0,0 @@
-\section{Class Hierarchy}
-This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList}
-\item \contentsline{section}{\+\_\+\+Param}{\pageref{struct__Param}}{}
-\item \contentsline{section}{\+\_\+point}{\pageref{struct__point}}{}
-\item \contentsline{section}{C\+S\+M\+On}{\pageref{classCSMOn}}{}
-\item \contentsline{section}{I\+Search}{\pageref{classISearch}}{}
-\begin{DoxyCompactList}
-\item \contentsline{section}{P\+S\+O}{\pageref{classPSO}}{}
-\end{DoxyCompactList}
-\end{DoxyCompactList}
diff --git a/doc/latex/index.tex b/doc/latex/index.tex
deleted file mode 100644
index 938c993..0000000
--- a/doc/latex/index.tex
+++ /dev/null
@@ -1,8 +0,0 @@
-\hyperlink{classCSMOn}{C\+S\+M\+On} ( formely called of C'M\+On! ) is an automated method to estimate the best moment to stop swarm iterations based on the analysis of the convergence behavior presented during optimization, aiming to provide an effective balance between saving fitness evaluations and keeping the optimization quality. The convergence analysis is performed through a sequence of linear regressions using exponential and log-\/like curves.
-
-\begin{DoxyDate}{Date}
-04/\+Mar/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
diff --git a/doc/latex/pso__example_8cpp.tex b/doc/latex/pso__example_8cpp.tex
deleted file mode 100644
index 2314ef1..0000000
--- a/doc/latex/pso__example_8cpp.tex
+++ /dev/null
@@ -1,57 +0,0 @@
-\hypertarget{pso__example_8cpp}{\section{cpp/pso\+\_\+example.cpp File Reference}
-\label{pso__example_8cpp}\index{cpp/pso\+\_\+example.\+cpp@{cpp/pso\+\_\+example.\+cpp}}
-}
-{\ttfamily \#include $<$stdio.\+h$>$}\\*
-{\ttfamily \#include $<$string.\+h$>$}\\*
-{\ttfamily \#include $<$iostream$>$}\\*
-{\ttfamily \#include \char`\"{}P\+S\+O.\+hpp\char`\"{}}\\*
-{\ttfamily \#include \char`\"{}C\+S\+M\+On.\+hpp\char`\"{}}\\*
-Include dependency graph for pso\+\_\+example.\+cpp\+:\nopagebreak
-\begin{figure}[H]
-\begin{center}
-\leavevmode
-\includegraphics[width=350pt]{pso__example_8cpp__incl}
-\end{center}
-\end{figure}
-\subsection*{Functions}
-\begin{DoxyCompactItemize}
-\item 
-double \hyperlink{pso__example_8cpp_a83166d0bb0a7ea8732e9af3c35951372}{fitness\+Function} (double $\ast$x, int n)
-\begin{DoxyCompactList}\small\item\em Fitness function implementation. \end{DoxyCompactList}\item 
-\hypertarget{pso__example_8cpp_a0ddf1224851353fc92bfbff6f499fa97}{int {\bfseries main} (int argc, char $\ast$argv\mbox{[}$\,$\mbox{]})}\label{pso__example_8cpp_a0ddf1224851353fc92bfbff6f499fa97}
-
-\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-This file provides an implementation example to call \hyperlink{classCSMOn}{C\+S\+M\+On}.
-
-\begin{DoxyDate}{Date}
-02/\+Jul/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition in file \hyperlink{pso__example_8cpp_source}{pso\+\_\+example.\+cpp}.
-
-
-
-\subsection{Function Documentation}
-\hypertarget{pso__example_8cpp_a83166d0bb0a7ea8732e9af3c35951372}{\index{pso\+\_\+example.\+cpp@{pso\+\_\+example.\+cpp}!fitness\+Function@{fitness\+Function}}
-\index{fitness\+Function@{fitness\+Function}!pso\+\_\+example.\+cpp@{pso\+\_\+example.\+cpp}}
-\subsubsection[{fitness\+Function}]{\setlength{\rightskip}{0pt plus 5cm}double fitness\+Function (
-\begin{DoxyParamCaption}
-\item[{double $\ast$}]{x, }
-\item[{int}]{n}
-\end{DoxyParamCaption}
-)}}\label{pso__example_8cpp_a83166d0bb0a7ea8732e9af3c35951372}
-
-
-Fitness function implementation. 
-
-Put your fitness function here. 
-
-Definition at line 112 of file pso\+\_\+example.\+cpp.
-
diff --git a/doc/latex/pso__example_8cpp__incl.md5 b/doc/latex/pso__example_8cpp__incl.md5
deleted file mode 100644
index cafc391..0000000
--- a/doc/latex/pso__example_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-f27ea7148f3eb4efe6cc2100197d7caf
\ No newline at end of file
diff --git a/doc/latex/pso__example_8cpp__incl.pdf b/doc/latex/pso__example_8cpp__incl.pdf
deleted file mode 100644
index dcadc8426c81f298afe93652efbdca5ac7abf7c5..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 15537
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
G#svT(7(clH

diff --git a/doc/latex/refman.tex b/doc/latex/refman.tex
deleted file mode 100644
index 0fc58bf..0000000
--- a/doc/latex/refman.tex
+++ /dev/null
@@ -1,166 +0,0 @@
-\documentclass[twoside]{book}
-
-% Packages required by doxygen
-\usepackage{fixltx2e}
-\usepackage{calc}
-\usepackage{doxygen}
-\usepackage{graphicx}
-\usepackage[utf8]{inputenc}
-\usepackage{makeidx}
-\usepackage{multicol}
-\usepackage{multirow}
-\PassOptionsToPackage{warn}{textcomp}
-\usepackage{textcomp}
-\usepackage[nointegrals]{wasysym}
-\usepackage[table]{xcolor}
-
-% Font selection
-\usepackage[T1]{fontenc}
-\usepackage{mathptmx}
-\usepackage[scaled=.90]{helvet}
-\usepackage{courier}
-\usepackage{amssymb}
-\usepackage{sectsty}
-\renewcommand{\familydefault}{\sfdefault}
-\allsectionsfont{%
-  \fontseries{bc}\selectfont%
-  \color{darkgray}%
-}
-\renewcommand{\DoxyLabelFont}{%
-  \fontseries{bc}\selectfont%
-  \color{darkgray}%
-}
-\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
-
-% Page & text layout
-\usepackage{geometry}
-\geometry{%
-  a4paper,%
-  top=2.5cm,%
-  bottom=2.5cm,%
-  left=2.5cm,%
-  right=2.5cm%
-}
-\tolerance=750
-\hfuzz=15pt
-\hbadness=750
-\setlength{\emergencystretch}{15pt}
-\setlength{\parindent}{0cm}
-\setlength{\parskip}{0.2cm}
-\makeatletter
-\renewcommand{\paragraph}{%
-  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
-    \normalfont\normalsize\bfseries\SS@parafont%
-  }%
-}
-\renewcommand{\subparagraph}{%
-  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
-    \normalfont\normalsize\bfseries\SS@subparafont%
-  }%
-}
-\makeatother
-
-% Headers & footers
-\usepackage{fancyhdr}
-\pagestyle{fancyplain}
-\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
-\fancyhead[CE]{\fancyplain{}{}}
-\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
-\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
-\fancyhead[CO]{\fancyplain{}{}}
-\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
-\fancyfoot[LE]{\fancyplain{}{}}
-\fancyfoot[CE]{\fancyplain{}{}}
-\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated on Mon Jul 3 2017 17\+:12\+:58 for C\+S\+M\+On by Doxygen }}
-\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated on Mon Jul 3 2017 17\+:12\+:58 for C\+S\+M\+On by Doxygen }}
-\fancyfoot[CO]{\fancyplain{}{}}
-\fancyfoot[RO]{\fancyplain{}{}}
-\renewcommand{\footrulewidth}{0.4pt}
-\renewcommand{\chaptermark}[1]{%
-  \markboth{#1}{}%
-}
-\renewcommand{\sectionmark}[1]{%
-  \markright{\thesection\ #1}%
-}
-
-% Indices & bibliography
-\usepackage{natbib}
-\usepackage[titles]{tocloft}
-\setcounter{tocdepth}{3}
-\setcounter{secnumdepth}{5}
-\makeindex
-
-% Hyperlinks (required, but should be loaded last)
-\usepackage{ifpdf}
-\ifpdf
-  \usepackage[pdftex,pagebackref=true]{hyperref}
-\else
-  \usepackage[ps2pdf,pagebackref=true]{hyperref}
-\fi
-\hypersetup{%
-  colorlinks=true,%
-  linkcolor=blue,%
-  citecolor=blue,%
-  unicode%
-}
-
-% Custom commands
-\newcommand{\clearemptydoublepage}{%
-  \newpage{\pagestyle{empty}\cleardoublepage}%
-}
-
-
-%===== C O N T E N T S =====
-
-\begin{document}
-
-% Titlepage & ToC
-\hypersetup{pageanchor=false,
-             bookmarks=true,
-             bookmarksnumbered=true,
-             pdfencoding=unicode
-            }
-\pagenumbering{roman}
-\begin{titlepage}
-\vspace*{7cm}
-\begin{center}%
-{\Large C\+S\+M\+On }\\
-\vspace*{1cm}
-{\large Generated by Doxygen 1.8.7}\\
-\vspace*{0.5cm}
-{\small Mon Jul 3 2017 17:12:58}\\
-\end{center}
-\end{titlepage}
-\clearemptydoublepage
-\tableofcontents
-\clearemptydoublepage
-\pagenumbering{arabic}
-\hypersetup{pageanchor=true}
-
-%--- Begin generated contents ---
-\chapter{Convergence Stabilization Modeling operating in Online Mode}
-\label{index}\hypertarget{index}{}\input{index}
-\chapter{Hierarchical Index}
-\input{hierarchy}
-\chapter{Data Structure Index}
-\input{annotated}
-\chapter{File Index}
-\input{files}
-\chapter{Data Structure Documentation}
-\input{struct__Param}
-\input{struct__point}
-\input{classCSMOn}
-\input{classISearch}
-\input{classPSO}
-\chapter{File Documentation}
-\input{pso__example_8cpp}
-\input{CSMOn__wrapper_8cpp}
-%--- End generated contents ---
-
-% Index
-\newpage
-\phantomsection
-\addcontentsline{toc}{chapter}{Index}
-\printindex
-
-\end{document}
diff --git a/doc/latex/struct__Param.tex b/doc/latex/struct__Param.tex
deleted file mode 100644
index 49c22ee..0000000
--- a/doc/latex/struct__Param.tex
+++ /dev/null
@@ -1,41 +0,0 @@
-\hypertarget{struct__Param}{\section{\+\_\+\+Param Struct Reference}
-\label{struct__Param}\index{\+\_\+\+Param@{\+\_\+\+Param}}
-}
-
-
-Contains a parameter received from / sent to the Python caller.  
-
-
-\subsection*{Data Fields}
-\begin{DoxyCompactItemize}
-\item 
-\hypertarget{struct__Param_ac547bee005d20081bcac4b2e347011f1}{char $\ast$ {\bfseries name}}\label{struct__Param_ac547bee005d20081bcac4b2e347011f1}
-
-\item 
-\hypertarget{struct__Param_aff85041148fac4f0a6a066dcf291f301}{char {\bfseries c}}\label{struct__Param_aff85041148fac4f0a6a066dcf291f301}
-
-\item 
-\hypertarget{struct__Param_a5b019b7151eaacdeb2e5ddfd31ac96fa}{int {\bfseries i}}\label{struct__Param_a5b019b7151eaacdeb2e5ddfd31ac96fa}
-
-\item 
-\hypertarget{struct__Param_a634a0fb95ba41349d69f4b5095531ddf}{long {\bfseries l}}\label{struct__Param_a634a0fb95ba41349d69f4b5095531ddf}
-
-\item 
-\hypertarget{struct__Param_a56df5e8e86e4f51c7f3031731951d1e9}{float {\bfseries f}}\label{struct__Param_a56df5e8e86e4f51c7f3031731951d1e9}
-
-\item 
-\hypertarget{struct__Param_a8cfc8683385e1ecbd2daedd1a05eb787}{double {\bfseries d}}\label{struct__Param_a8cfc8683385e1ecbd2daedd1a05eb787}
-
-\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-Contains a parameter received from / sent to the Python caller. 
-
-Definition at line 49 of file C\+S\+M\+On\+\_\+wrapper.\+cpp.
-
-
-
-The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
-\item 
-python/\hyperlink{CSMOn__wrapper_8cpp}{C\+S\+M\+On\+\_\+wrapper.\+cpp}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct__point.tex b/doc/latex/struct__point.tex
deleted file mode 100644
index 16d7348..0000000
--- a/doc/latex/struct__point.tex
+++ /dev/null
@@ -1,47 +0,0 @@
-\hypertarget{struct__point}{\section{\+\_\+point Struct Reference}
-\label{struct__point}\index{\+\_\+point@{\+\_\+point}}
-}
-
-
-A point representing the number of evaluations and the respective fitness value.  
-
-
-
-
-{\ttfamily \#include $<$C\+S\+M\+On.\+hpp$>$}
-
-\subsection*{Public Member Functions}
-\begin{DoxyCompactItemize}
-\item 
-\hypertarget{struct__point_a57c9fc97f1ffeabe2bea2d95439b426e}{{\bfseries \+\_\+point} (int \+\_\+x, int \+\_\+y)}\label{struct__point_a57c9fc97f1ffeabe2bea2d95439b426e}
-
-\end{DoxyCompactItemize}
-\subsection*{Data Fields}
-\begin{DoxyCompactItemize}
-\item 
-\hypertarget{struct__point_aab3e88bcfd12e8f43ff8b95a9a5b62c4}{int {\bfseries x}}\label{struct__point_aab3e88bcfd12e8f43ff8b95a9a5b62c4}
-
-\item 
-\hypertarget{struct__point_ad466443e70f7ff7bcb1d2f8fda2c7168}{double {\bfseries y}}\label{struct__point_ad466443e70f7ff7bcb1d2f8fda2c7168}
-
-\end{DoxyCompactItemize}
-
-
-\subsection{Detailed Description}
-A point representing the number of evaluations and the respective fitness value. 
-
-\begin{DoxyDate}{Date}
-04/\+Mar/2017 
-\end{DoxyDate}
-\begin{DoxyAuthor}{Author}
-Peter Frank Perroni (\href{mailto:pfperroni@gmail.com}{\tt pfperroni@gmail.\+com}) 
-\end{DoxyAuthor}
-
-
-Definition at line 61 of file C\+S\+M\+On.\+hpp.
-
-
-
-The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
-\item 
-cpp/C\+S\+M\+On.\+hpp\end{DoxyCompactItemize}
diff --git a/doc/rtf/CSMOn__wrapper_8cpp__incl.md5 b/doc/rtf/CSMOn__wrapper_8cpp__incl.md5
deleted file mode 100644
index 99e7c25..0000000
--- a/doc/rtf/CSMOn__wrapper_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-86e49e61e2ac0d432867564786079fbd
\ No newline at end of file
diff --git a/doc/rtf/CSMOn__wrapper_8cpp__incl.png b/doc/rtf/CSMOn__wrapper_8cpp__incl.png
deleted file mode 100644
index 8280658618e5a094e9dca26b98289bf3aa210064..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 23948
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

diff --git a/doc/rtf/classISearch__inherit__graph.md5 b/doc/rtf/classISearch__inherit__graph.md5
deleted file mode 100644
index 7e9dc87..0000000
--- a/doc/rtf/classISearch__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-d50fbcec178e02faa2475516a2b287db
\ No newline at end of file
diff --git a/doc/rtf/classISearch__inherit__graph.png b/doc/rtf/classISearch__inherit__graph.png
deleted file mode 100644
index cd63ecc4848a433a9860adc666d0b56271b628ee..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2145
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
Q3=9kmp00i_>zopr0NbJzfB*mh

diff --git a/doc/rtf/classPSO__coll__graph.md5 b/doc/rtf/classPSO__coll__graph.md5
deleted file mode 100644
index cd926d1..0000000
--- a/doc/rtf/classPSO__coll__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-85e9ae14524a131ba043fef49841dcdd
\ No newline at end of file
diff --git a/doc/rtf/classPSO__coll__graph.png b/doc/rtf/classPSO__coll__graph.png
deleted file mode 100644
index 7711b45581b74ee57876fea9173df2c6f165ebc0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2167
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
A`2YX_

diff --git a/doc/rtf/classPSO__inherit__graph.md5 b/doc/rtf/classPSO__inherit__graph.md5
deleted file mode 100644
index cd926d1..0000000
--- a/doc/rtf/classPSO__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-85e9ae14524a131ba043fef49841dcdd
\ No newline at end of file
diff --git a/doc/rtf/classPSO__inherit__graph.png b/doc/rtf/classPSO__inherit__graph.png
deleted file mode 100644
index 7711b45581b74ee57876fea9173df2c6f165ebc0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2167
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
A`2YX_

diff --git a/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79.rtf b/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79.rtf
deleted file mode 100644
index 18390e9..0000000
--- a/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79.rtf
+++ /dev/null
@@ -1,102 +0,0 @@
-{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033
-{\fonttbl {\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}
-{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}
-}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}
-{\stylesheet
-{\widctlpar\adjustright \fs20\cgrid \snext0 Normal;}
-{\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid \sbasedon0 \snext0 heading 1;}
-{\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid \sbasedon0 \snext0 heading 2;}
-{\s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid \sbasedon0 \snext0 heading 3;}
-{\s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive Default Paragraph Font;}
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive Default Paragraph Font;}
-{\s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid \sbasedon0 \snext15 Title;}
-{\s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid \sbasedon0 \snext16 Subtitle;}
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid \sbasedon0 \snext17 BodyText;}
-{\s18\widctlpar\fs22\cgrid \sbasedon0 \snext18 DenseText;}
-{\s28\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext28 header;}
-{\s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid \sbasedon0 \snext29 footer;}
-{\s30\li360\sa60\sb120\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext30 GroupHeader;}
-{\s40\li0\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext41 Code Example 0;}
-{\s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext42 Code Example 1;}
-{\s42\li720\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext43 Code Example 2;}
-{\s43\li1080\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext44 Code Example 3;}
-{\s44\li1440\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext45 Code Example 4;}
-{\s45\li1800\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext46 Code Example 5;}
-{\s46\li2160\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext47 Code Example 6;}
-{\s47\li2520\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext48 Code Example 7;}
-{\s48\li2880\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 8;}
-{\s49\li3240\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 9;}
-{\s50\li0\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext51 List Continue 0;}
-{\s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext52 List Continue 1;}
-{\s52\li720\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext53 List Continue 2;}
-{\s53\li1080\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext54 List Continue 3;}
-{\s54\li1440\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext55 List Continue 4;}
-{\s55\li1800\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext56 List Continue 5;}
-{\s56\li2160\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext57 List Continue 6;}
-{\s57\li2520\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext58 List Continue 7;}
-{\s58\li2880\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 8;}
-{\s59\li3240\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 9;}
-{\s60\li0\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext61 DescContinue 0;}
-{\s61\li360\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext62 DescContinue 1;}
-{\s62\li720\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext63 DescContinue 2;}
-{\s63\li1080\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext64 DescContinue 3;}
-{\s64\li1440\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext65 DescContinue 4;}
-{\s65\li1800\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext66 DescContinue 5;}
-{\s66\li2160\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext67 DescContinue 6;}
-{\s67\li2520\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext68 DescContinue 7;}
-{\s68\li2880\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 8;}
-{\s69\li3240\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 9;}
-{\s70\li0\sa30\sb30\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext81 LatexTOC 0;}
-{\s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext82 LatexTOC 1;}
-{\s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext83 LatexTOC 2;}
-{\s73\li1080\sa21\sb21\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext84 LatexTOC 3;}
-{\s74\li1440\sa18\sb18\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext85 LatexTOC 4;}
-{\s75\li1800\sa15\sb15\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext86 LatexTOC 5;}
-{\s76\li2160\sa12\sb12\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext87 LatexTOC 6;}
-{\s77\li2520\sa9\sb9\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext88 LatexTOC 7;}
-{\s78\li2880\sa6\sb6\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 8;}
-{\s79\li3240\sa3\sb3\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 9;}
-{\s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid \sbasedon0 \snext81 \sautoupd List Bullet 0;}
-{\s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid \sbasedon0 \snext82 \sautoupd List Bullet 1;}
-{\s82\fi-360\li1080\widctlpar\jclisttab\tx1080{\*\pn \pnlvlbody\ilvl0\ls3\pnrnot0\pndec }\ls3\adjustright \fs20\cgrid \sbasedon0 \snext83 \sautoupd List Bullet 2;}
-{\s83\fi-360\li1440\widctlpar\jclisttab\tx1440{\*\pn \pnlvlbody\ilvl0\ls4\pnrnot0\pndec }\ls4\adjustright \fs20\cgrid \sbasedon0 \snext84 \sautoupd List Bullet 3;}
-{\s84\fi-360\li1800\widctlpar\jclisttab\tx1800{\*\pn \pnlvlbody\ilvl0\ls5\pnrnot0\pndec }\ls5\adjustright \fs20\cgrid \sbasedon0 \snext85 \sautoupd List Bullet 4;}
-{\s85\fi-360\li2160\widctlpar\jclisttab\tx2160{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\ls6\adjustright \fs20\cgrid \sbasedon0 \snext86 \sautoupd List Bullet 5;}
-{\s86\fi-360\li2520\widctlpar\jclisttab\tx2520{\*\pn \pnlvlbody\ilvl0\ls7\pnrnot0\pndec }\ls7\adjustright \fs20\cgrid \sbasedon0 \snext87 \sautoupd List Bullet 6;}
-{\s87\fi-360\li2880\widctlpar\jclisttab\tx2880{\*\pn \pnlvlbody\ilvl0\ls8\pnrnot0\pndec }\ls8\adjustright \fs20\cgrid \sbasedon0 \snext88 \sautoupd List Bullet 7;}
-{\s88\fi-360\li3240\widctlpar\jclisttab\tx3240{\*\pn \pnlvlbody\ilvl0\ls9\pnrnot0\pndec }\ls9\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 8;}
-{\s89\fi-360\li3600\widctlpar\jclisttab\tx3600{\*\pn \pnlvlbody\ilvl0\ls10\pnrnot0\pndec }\ls10\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 9;}
-{\s90\fi-360\li360\widctlpar\fs20\cgrid \sbasedon0 \snext91 \sautoupd List Enum 0;}
-{\s91\fi-360\li720\widctlpar\fs20\cgrid \sbasedon0 \snext92 \sautoupd List Enum 1;}
-{\s92\fi-360\li1080\widctlpar\fs20\cgrid \sbasedon0 \snext93 \sautoupd List Enum 2;}
-{\s93\fi-360\li1440\widctlpar\fs20\cgrid \sbasedon0 \snext94 \sautoupd List Enum 3;}
-{\s94\fi-360\li1800\widctlpar\fs20\cgrid \sbasedon0 \snext95 \sautoupd List Enum 4;}
-{\s95\fi-360\li2160\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s96\fi-360\li2520\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s97\fi-360\li2880\widctlpar\fs20\cgrid \sbasedon0 \snext98 \sautoupd List Enum 7;}
-{\s98\fi-360\li3240\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 8;}
-{\s99\fi-360\li3600\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 9;}
-}
-{\comment begin body}
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-python Directory Reference\par \pard\plain 
-{\tc\tcl2 \v python Directory Reference}
-{\xe \v python Directory Reference}
-{\bkmkstart AAAAAAAABP}
-{\bkmkend AAAAAAAABP}
-Directory dependency graph for python:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Files\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b CSMOn_wrapper.cpp}\par
-}
-}
\ No newline at end of file
diff --git a/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5 b/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
deleted file mode 100644
index 99f66f3..0000000
--- a/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.md5
+++ /dev/null
@@ -1 +0,0 @@
-b1eb1efbc66dfb4c203863d5f3de367d
\ No newline at end of file
diff --git a/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.png b/doc/rtf/dir_7837fde3ab9c1fb2fc5be7b717af8d79_dep.png
deleted file mode 100644
index cc9b4962bd24220944c78d98e266d3903a8d9ae3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1199
zcmeAS@N?(olHy`uVBq!ia0y~yU<hVlV6f(3V_;xl7u{ygz`($k<n8Xl@E-&h>|H*Y
zfq^B()5S5QV$Rz+^&ZmUG6(E4C)K;f_(oZu?aDB@x|M@jRM*Pv^@NR4)^B@Kdqe*i
z{=cBrdg)lAWQfazi<^wD<!))_+uj+N-hK7}=OeY)?WGZ?7L;7hShz0MdU0&Fq14%b
z0zvgIx=-g`{A5>9@crK2_rLe?zkfF==3PkK`s>{;EZ=w=&poJgIwjIEMN{DHp{A23
zJ!j3DHDksM4i~%EOq*}|L`B_t#PyyjDmr>^L(H^D6RERKxpC{S-`<mvR%Ii{5TjQ)
z@w<C<wXv&fW!>v1mca@^%N&;YG<wWrnrOtTl*;7-F<KLc!~|3Q%LxGwOTMvN^)65H
zJt-qqBqY1n@<OJKakkg9GiP}8u6r!FT#+U+@ny-kWP=q27J3tANF3gl8@=JCR^jfu
zH*%)RScSZ~U0(A?(CsmI%>H}sZf-^lhK372KPoLR7m}CvO<6K8c=@Z^r~Gm~fpKvj
zC129Y-rP9#@v(cs?)3Moq<FO6d|U77RmD2_<bju$dA)c_<+}4$bUwMW(?2uoRYJ}g
z*T|Wod+UTFBi|Q&NZ^w@|2)G)N~Vw7#briEclFeB=d@K+X6&r|{BDm$Z0!BZmoK}Q
zf9Dqwd9!%IgIb<8Um4q|gL|vXU%vV^^?3hrP2F1lxq2PR$L&}iTv}RYWnKU5(NVEg
ztGrI0*LPfRu3;AE%K!P+t^STKBVqaZF2269W!1`_o|+jZQF`(J1RJJJ%Rh1YwENN^
zUCHH(9&uR33hXZ5&wSv<4UOR7;4NEC1LOZ23JR)i%kN*j>laH|_2Tuho}QM{=4_km
z>lqmqFV<sqU%lbX3XRSAcXRquD}I<|ZJlLXUG(BbMsmuN_^PU1C(hb#$eD8?;Bn3-
z>3K`4|Npc1@%I;&lzggfJadtx+`hNB`M782F29=9+LNv-GS$-H!}U2|?Q5HF?>3*_
z*Y`dnKVQw#Qgm_Q>rI7!&fc0ZVS2#ot314xwW-a`%o4r&=QFqOx*qOYy?WicLoeSf
zU;o}bE8G4+(nh8Y#m}>S{HrrEEE<na+P~uNj~|Ogle4!*ZQA^K!%eN7rP&jt&HpV}
zw=V5y<T{nEQ)kZFI+T5z9ifvydEP&<cK&eY1!1dCo;maI;o<)$PThKb+up{e>B*Cj
zq~yc%wCbD>tGBdCdHVaSsH-<`*}@Yq-{^30_0FqNJy)aNZ1-DlK4Ip}UO(|KDw4fy
z?T?pN{?`37``n$k4-#zC&(%CN|5x;Oic{dse+9eMcN9O*my+K9<ju|e@ZHs}flmzh
zxvC}}I%KrJG<^NPL+fHWBi6buS+;MX%XdcSi8CdIHnmPxxBnbHebOf@zvY|ee`h*6
z>sQ{sdqm|80Z68q_Q&?~pP%|+#{H#-w`T9xkKOrU;mdpX;?_s4<@;fLH@lLPpa1*s
xJv+Vj*}6%5dTXczHJted^V}oFho=5#?7PN%#h88h69xtb22WQ%mvv4FO#oRSGUfmP

diff --git a/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8.rtf b/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8.rtf
deleted file mode 100644
index 1ec442d..0000000
--- a/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8.rtf
+++ /dev/null
@@ -1,112 +0,0 @@
-{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033
-{\fonttbl {\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}
-{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}
-}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}
-{\stylesheet
-{\widctlpar\adjustright \fs20\cgrid \snext0 Normal;}
-{\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid \sbasedon0 \snext0 heading 1;}
-{\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid \sbasedon0 \snext0 heading 2;}
-{\s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid \sbasedon0 \snext0 heading 3;}
-{\s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive Default Paragraph Font;}
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive Default Paragraph Font;}
-{\s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid \sbasedon0 \snext15 Title;}
-{\s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid \sbasedon0 \snext16 Subtitle;}
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid \sbasedon0 \snext17 BodyText;}
-{\s18\widctlpar\fs22\cgrid \sbasedon0 \snext18 DenseText;}
-{\s28\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext28 header;}
-{\s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid \sbasedon0 \snext29 footer;}
-{\s30\li360\sa60\sb120\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext30 GroupHeader;}
-{\s40\li0\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext41 Code Example 0;}
-{\s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext42 Code Example 1;}
-{\s42\li720\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext43 Code Example 2;}
-{\s43\li1080\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext44 Code Example 3;}
-{\s44\li1440\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext45 Code Example 4;}
-{\s45\li1800\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext46 Code Example 5;}
-{\s46\li2160\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext47 Code Example 6;}
-{\s47\li2520\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext48 Code Example 7;}
-{\s48\li2880\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 8;}
-{\s49\li3240\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 9;}
-{\s50\li0\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext51 List Continue 0;}
-{\s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext52 List Continue 1;}
-{\s52\li720\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext53 List Continue 2;}
-{\s53\li1080\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext54 List Continue 3;}
-{\s54\li1440\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext55 List Continue 4;}
-{\s55\li1800\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext56 List Continue 5;}
-{\s56\li2160\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext57 List Continue 6;}
-{\s57\li2520\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext58 List Continue 7;}
-{\s58\li2880\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 8;}
-{\s59\li3240\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 9;}
-{\s60\li0\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext61 DescContinue 0;}
-{\s61\li360\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext62 DescContinue 1;}
-{\s62\li720\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext63 DescContinue 2;}
-{\s63\li1080\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext64 DescContinue 3;}
-{\s64\li1440\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext65 DescContinue 4;}
-{\s65\li1800\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext66 DescContinue 5;}
-{\s66\li2160\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext67 DescContinue 6;}
-{\s67\li2520\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext68 DescContinue 7;}
-{\s68\li2880\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 8;}
-{\s69\li3240\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 9;}
-{\s70\li0\sa30\sb30\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext81 LatexTOC 0;}
-{\s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext82 LatexTOC 1;}
-{\s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext83 LatexTOC 2;}
-{\s73\li1080\sa21\sb21\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext84 LatexTOC 3;}
-{\s74\li1440\sa18\sb18\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext85 LatexTOC 4;}
-{\s75\li1800\sa15\sb15\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext86 LatexTOC 5;}
-{\s76\li2160\sa12\sb12\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext87 LatexTOC 6;}
-{\s77\li2520\sa9\sb9\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext88 LatexTOC 7;}
-{\s78\li2880\sa6\sb6\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 8;}
-{\s79\li3240\sa3\sb3\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 9;}
-{\s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid \sbasedon0 \snext81 \sautoupd List Bullet 0;}
-{\s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid \sbasedon0 \snext82 \sautoupd List Bullet 1;}
-{\s82\fi-360\li1080\widctlpar\jclisttab\tx1080{\*\pn \pnlvlbody\ilvl0\ls3\pnrnot0\pndec }\ls3\adjustright \fs20\cgrid \sbasedon0 \snext83 \sautoupd List Bullet 2;}
-{\s83\fi-360\li1440\widctlpar\jclisttab\tx1440{\*\pn \pnlvlbody\ilvl0\ls4\pnrnot0\pndec }\ls4\adjustright \fs20\cgrid \sbasedon0 \snext84 \sautoupd List Bullet 3;}
-{\s84\fi-360\li1800\widctlpar\jclisttab\tx1800{\*\pn \pnlvlbody\ilvl0\ls5\pnrnot0\pndec }\ls5\adjustright \fs20\cgrid \sbasedon0 \snext85 \sautoupd List Bullet 4;}
-{\s85\fi-360\li2160\widctlpar\jclisttab\tx2160{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\ls6\adjustright \fs20\cgrid \sbasedon0 \snext86 \sautoupd List Bullet 5;}
-{\s86\fi-360\li2520\widctlpar\jclisttab\tx2520{\*\pn \pnlvlbody\ilvl0\ls7\pnrnot0\pndec }\ls7\adjustright \fs20\cgrid \sbasedon0 \snext87 \sautoupd List Bullet 6;}
-{\s87\fi-360\li2880\widctlpar\jclisttab\tx2880{\*\pn \pnlvlbody\ilvl0\ls8\pnrnot0\pndec }\ls8\adjustright \fs20\cgrid \sbasedon0 \snext88 \sautoupd List Bullet 7;}
-{\s88\fi-360\li3240\widctlpar\jclisttab\tx3240{\*\pn \pnlvlbody\ilvl0\ls9\pnrnot0\pndec }\ls9\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 8;}
-{\s89\fi-360\li3600\widctlpar\jclisttab\tx3600{\*\pn \pnlvlbody\ilvl0\ls10\pnrnot0\pndec }\ls10\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 9;}
-{\s90\fi-360\li360\widctlpar\fs20\cgrid \sbasedon0 \snext91 \sautoupd List Enum 0;}
-{\s91\fi-360\li720\widctlpar\fs20\cgrid \sbasedon0 \snext92 \sautoupd List Enum 1;}
-{\s92\fi-360\li1080\widctlpar\fs20\cgrid \sbasedon0 \snext93 \sautoupd List Enum 2;}
-{\s93\fi-360\li1440\widctlpar\fs20\cgrid \sbasedon0 \snext94 \sautoupd List Enum 3;}
-{\s94\fi-360\li1800\widctlpar\fs20\cgrid \sbasedon0 \snext95 \sautoupd List Enum 4;}
-{\s95\fi-360\li2160\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s96\fi-360\li2520\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s97\fi-360\li2880\widctlpar\fs20\cgrid \sbasedon0 \snext98 \sautoupd List Enum 7;}
-{\s98\fi-360\li3240\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 8;}
-{\s99\fi-360\li3600\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 9;}
-}
-{\comment begin body}
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-cpp Directory Reference\par \pard\plain 
-{\tc\tcl2 \v cpp Directory Reference}
-{\xe \v cpp Directory Reference}
-{\bkmkstart AAAAAAAABO}
-{\bkmkend AAAAAAAABO}
-Directory dependency graph for cpp:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "dir_df511e5bd85cec96854b39d5e1c27aa8_dep.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Files\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b CSMOn.cpp}\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b CSMOn.hpp}\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b ISearch.hpp}\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b PSO.cpp}\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b PSO.hpp}\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-file {\b pso_example.cpp}\par
-}
-}
\ No newline at end of file
diff --git a/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5 b/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
deleted file mode 100644
index d7bea35..0000000
--- a/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.md5
+++ /dev/null
@@ -1 +0,0 @@
-1abb9bb70849c88a46921d6545cf4913
\ No newline at end of file
diff --git a/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.png b/doc/rtf/dir_df511e5bd85cec96854b39d5e1c27aa8_dep.png
deleted file mode 100644
index f570176739c35fab7a756cf4e568f7b04eb7a4dc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 759
zcmeAS@N?(olHy`uVBq!ia0y~yU<hVlV6f(3V_;xl7u{ygz`($k<n8Xl@E-&h>|H*Y
zfq`j_r;B4q#hkad?LDLuC60fLpS7k;K<S90_l|7kvrpzbZFg9D!M90nX}!R7r72<J
zhARV9xExodY-|bA^g1|0U_)lM_(JbCCrvgHCNsIKS3+M+m~i6Y?Ue^r(mS56%vU<k
z&ewC^dQZ*Cmj&-5TLhSToc?sZk&RK4nJjQzC1v%$qbE;tF1o1Eb#zhB-z_Yzfe*e`
zWwS5xQkp2h@MBf+&75toa-28>SN}|tYGY)uuzFPgDec<zWC_WOKIwnVL1r8=<Sg`Y
z0vksR)3Y~Ig3W26_=k!)0V39J?(z?R{4i&5xV||fe|tjmW813g^^T#|29`fXmIkeS
z=cBgLP<f)kq?0VyuGuNh{L_?ECjR;JX3^|v)8Z7R{&rlw%75d|pPmAXD;Ip&RvLzf
z-BS?YShV^y^Y-6tV&eA~t$!bObXLL#)fhe2yLZhEO-;Ki{=_;POJ>P^jaw3vC$Bd>
z=---Ec`H`!PCEN?=c1V74<D{?OEdELn`R|5*TUjQ<i9<8=dRm%_WQTGIln5!`P|c;
zjU|^HyRxNy#>~n-pEUNFXZY0A<|$0Sy*}dccl+jb=^M9x<vp0d;OxvVHS46pS2KC(
z&&u=9AAY{O*-5eg-@n~6=FM9jVQf($&&<3%P~*wN&vy_1*s;IHdiL3rO(F7Sy+@NS
znE3wsC=q*p(Q<dgyY72${{Qy9qUWS!qTL&>m6^%gw#FX)@ZoXs`IM|%Gs>#j#l)1J
z&pUZ#i($0jaTQ`BVD3+zjLM&1UEeKEU2^&UdAYFtCUd=(wp`7c`p>W2INoph<uA3L
wXR&9!ng5a5)C(N1Da-=X_jY<edM$r4;^gYH=YCr<FfcH9y85}Sb4q9e09Q*`E&u=k

diff --git a/doc/rtf/pso__example_8cpp__incl.md5 b/doc/rtf/pso__example_8cpp__incl.md5
deleted file mode 100644
index 7bc8aec..0000000
--- a/doc/rtf/pso__example_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-ec5e0f0eb2ffbc094403a83675bea9d3
\ No newline at end of file
diff --git a/doc/rtf/pso__example_8cpp__incl.png b/doc/rtf/pso__example_8cpp__incl.png
deleted file mode 100644
index ba89e86082dcb077756ee25b670708a45895fb9e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 22820
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
T`D|4N1_lOCS3j3^P6<r_si3tj

diff --git a/doc/rtf/refman.rtf b/doc/rtf/refman.rtf
deleted file mode 100644
index 8e2aed2..0000000
--- a/doc/rtf/refman.rtf
+++ /dev/null
@@ -1,1276 +0,0 @@
-{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033
-{\fonttbl {\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}
-{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}
-}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}
-{\stylesheet
-{\widctlpar\adjustright \fs20\cgrid \snext0 Normal;}
-{\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid \sbasedon0 \snext0 heading 1;}
-{\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid \sbasedon0 \snext0 heading 2;}
-{\s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid \sbasedon0 \snext0 heading 3;}
-{\s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive Default Paragraph Font;}
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive Default Paragraph Font;}
-{\s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid \sbasedon0 \snext15 Title;}
-{\s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid \sbasedon0 \snext16 Subtitle;}
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid \sbasedon0 \snext17 BodyText;}
-{\s18\widctlpar\fs22\cgrid \sbasedon0 \snext18 DenseText;}
-{\s28\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext28 header;}
-{\s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid \sbasedon0 \snext29 footer;}
-{\s30\li360\sa60\sb120\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext30 GroupHeader;}
-{\s40\li0\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext41 Code Example 0;}
-{\s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext42 Code Example 1;}
-{\s42\li720\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext43 Code Example 2;}
-{\s43\li1080\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext44 Code Example 3;}
-{\s44\li1440\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext45 Code Example 4;}
-{\s45\li1800\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext46 Code Example 5;}
-{\s46\li2160\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext47 Code Example 6;}
-{\s47\li2520\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext48 Code Example 7;}
-{\s48\li2880\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 8;}
-{\s49\li3240\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 9;}
-{\s50\li0\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext51 List Continue 0;}
-{\s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext52 List Continue 1;}
-{\s52\li720\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext53 List Continue 2;}
-{\s53\li1080\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext54 List Continue 3;}
-{\s54\li1440\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext55 List Continue 4;}
-{\s55\li1800\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext56 List Continue 5;}
-{\s56\li2160\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext57 List Continue 6;}
-{\s57\li2520\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext58 List Continue 7;}
-{\s58\li2880\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 8;}
-{\s59\li3240\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 9;}
-{\s60\li0\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext61 DescContinue 0;}
-{\s61\li360\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext62 DescContinue 1;}
-{\s62\li720\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext63 DescContinue 2;}
-{\s63\li1080\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext64 DescContinue 3;}
-{\s64\li1440\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext65 DescContinue 4;}
-{\s65\li1800\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext66 DescContinue 5;}
-{\s66\li2160\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext67 DescContinue 6;}
-{\s67\li2520\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext68 DescContinue 7;}
-{\s68\li2880\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 8;}
-{\s69\li3240\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 9;}
-{\s70\li0\sa30\sb30\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext81 LatexTOC 0;}
-{\s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext82 LatexTOC 1;}
-{\s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext83 LatexTOC 2;}
-{\s73\li1080\sa21\sb21\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext84 LatexTOC 3;}
-{\s74\li1440\sa18\sb18\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext85 LatexTOC 4;}
-{\s75\li1800\sa15\sb15\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext86 LatexTOC 5;}
-{\s76\li2160\sa12\sb12\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext87 LatexTOC 6;}
-{\s77\li2520\sa9\sb9\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext88 LatexTOC 7;}
-{\s78\li2880\sa6\sb6\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 8;}
-{\s79\li3240\sa3\sb3\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 9;}
-{\s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid \sbasedon0 \snext81 \sautoupd List Bullet 0;}
-{\s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid \sbasedon0 \snext82 \sautoupd List Bullet 1;}
-{\s82\fi-360\li1080\widctlpar\jclisttab\tx1080{\*\pn \pnlvlbody\ilvl0\ls3\pnrnot0\pndec }\ls3\adjustright \fs20\cgrid \sbasedon0 \snext83 \sautoupd List Bullet 2;}
-{\s83\fi-360\li1440\widctlpar\jclisttab\tx1440{\*\pn \pnlvlbody\ilvl0\ls4\pnrnot0\pndec }\ls4\adjustright \fs20\cgrid \sbasedon0 \snext84 \sautoupd List Bullet 3;}
-{\s84\fi-360\li1800\widctlpar\jclisttab\tx1800{\*\pn \pnlvlbody\ilvl0\ls5\pnrnot0\pndec }\ls5\adjustright \fs20\cgrid \sbasedon0 \snext85 \sautoupd List Bullet 4;}
-{\s85\fi-360\li2160\widctlpar\jclisttab\tx2160{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\ls6\adjustright \fs20\cgrid \sbasedon0 \snext86 \sautoupd List Bullet 5;}
-{\s86\fi-360\li2520\widctlpar\jclisttab\tx2520{\*\pn \pnlvlbody\ilvl0\ls7\pnrnot0\pndec }\ls7\adjustright \fs20\cgrid \sbasedon0 \snext87 \sautoupd List Bullet 6;}
-{\s87\fi-360\li2880\widctlpar\jclisttab\tx2880{\*\pn \pnlvlbody\ilvl0\ls8\pnrnot0\pndec }\ls8\adjustright \fs20\cgrid \sbasedon0 \snext88 \sautoupd List Bullet 7;}
-{\s88\fi-360\li3240\widctlpar\jclisttab\tx3240{\*\pn \pnlvlbody\ilvl0\ls9\pnrnot0\pndec }\ls9\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 8;}
-{\s89\fi-360\li3600\widctlpar\jclisttab\tx3600{\*\pn \pnlvlbody\ilvl0\ls10\pnrnot0\pndec }\ls10\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 9;}
-{\s90\fi-360\li360\widctlpar\fs20\cgrid \sbasedon0 \snext91 \sautoupd List Enum 0;}
-{\s91\fi-360\li720\widctlpar\fs20\cgrid \sbasedon0 \snext92 \sautoupd List Enum 1;}
-{\s92\fi-360\li1080\widctlpar\fs20\cgrid \sbasedon0 \snext93 \sautoupd List Enum 2;}
-{\s93\fi-360\li1440\widctlpar\fs20\cgrid \sbasedon0 \snext94 \sautoupd List Enum 3;}
-{\s94\fi-360\li1800\widctlpar\fs20\cgrid \sbasedon0 \snext95 \sautoupd List Enum 4;}
-{\s95\fi-360\li2160\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s96\fi-360\li2520\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;}
-{\s97\fi-360\li2880\widctlpar\fs20\cgrid \sbasedon0 \snext98 \sautoupd List Enum 7;}
-{\s98\fi-360\li3240\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 8;}
-{\s99\fi-360\li3600\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 9;}
-}
-{\comment begin body}
-{\info 
-{\title {\comment CSMOn }CSMOn}
-{\comment Generated byDoxgyen. }
-{\creatim \yr2017\mo7\dy3\hr17\min12\sec58}
-}\pard\plain 
-\sectd\pgnlcrm
-{\footer \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid {\chpgn}}
-\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid 
-\vertalc\qc\par\par\par\par\par\par\par
-\pard\plain \s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid 
-{\field\fldedit {\*\fldinst TITLE \\*MERGEFORMAT}{\fldrslt TITLE}}\par
-\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid 
-\par
-\par\par\par\par\par\par\par\par\par\par\par\par
-\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid 
-{\field\fldedit {\*\fldinst AUTHOR \\*MERGEFORMAT}{\fldrslt AUTHOR}}\par
-Version \par{\field\fldedit {\*\fldinst CREATEDATE \\*MERGEFORMAT}{\fldrslt CREATEDATE}}\par
-\page\page\vertalt
-\pard\plain 
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid Table of Contents\par
-\pard\plain \par
-{\field\fldedit {\*\fldinst TOC \\f \\*MERGEFORMAT}{\fldrslt Table of contents}}\par
-\pard\plain 
-\sect \sbkpage \pgndec \pgnrestart
-\sect \sectd \sbknone
-{\footer \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid {\chpgn}}
-
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-Convergence Stabilization Modeling operating in Online Mode\par \pard\plain 
-{\tc \v Convergence Stabilization Modeling operating in Online Mode}
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\b CSMOn} ( formely called of C'MOn! ) is an automated method to estimate the best moment to stop swarm iterations based on the analysis of the convergence behavior presented during optimization, aiming to provide an effective balance between saving fitness evaluations and keeping the optimization quality. The convergence analysis is performed through a sequence of linear regressions using exponential and log-like curves.\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 04/Mar/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}}
-
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-Hierarchical Index\par \pard\plain 
-{\tc \v Hierarchical Index}
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-Class Hierarchy\par \pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid This inheritance list is sorted roughly, but not completely, alphabetically:}
-{
-\par
-\pard\plain \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid 
-_Param\tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAG \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-_point\tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAN \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-CSMOn\tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAR \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-ISearch\tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABA \\*MERGEFORMAT}{\fldrslt pagenum}}
-{
-\par
-\pard\plain \s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid 
-PSO\tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABK \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-}\par
-}
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-Data Structure Index\par \pard\plain 
-{\tc \v Data Structure Index}
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-Data Structures\par \pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Here are the data structures with brief descriptions:}
-{
-\par
-\pard\plain \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid 
-{\b {\b _Param} ({\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Contains a parameter received from / sent to the Python caller })} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAG \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b {\b _point} ({\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-A point representing the number of evaluations and the respective fitness value })} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAN \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b {\b CSMOn} ({\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Convergence Stabilization Modeling operating in Online Mode })} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAR \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b {\b ISearch} ({\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-The interface that the search methods must to implement })} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABA \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b {\b PSO} ({\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Particle Swarm Optimization })} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABK \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-\par}
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-File Index\par \pard\plain 
-{\tc \v File Index}
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-File List\par \pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Here is a list of all documented files with brief descriptions:}
-{
-\par
-\pard\plain \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid 
-{\b cpp/{\b CSMOn.cpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABQ \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b cpp/{\b CSMOn.hpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABR \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b cpp/{\b ISearch.hpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABS \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b cpp/{\b PSO.cpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABT \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b cpp/{\b PSO.hpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAABU \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b cpp/{\b pso_example.cpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAA \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-{\b python/{\b CSMOn_wrapper.cpp} } \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAD \\*MERGEFORMAT}{\fldrslt pagenum}}
-\par
-\par}
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-Data Structure Documentation{\tc \v Data Structure Documentation}
-\par \pard\plain 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-_Param Struct Reference\par \pard\plain 
-{\tc\tcl2 \v _Param}
-{\xe \v _Param}
-{\bkmkstart AAAAAAAAAG}
-{\bkmkend AAAAAAAAAG}
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Contains a parameter received from / sent to the Python caller. }}\par
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Data Fields\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-char * {\b name}{\bkmkstart AAAAAAAAAH}
-{\bkmkend AAAAAAAAAH}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-char {\b c}{\bkmkstart AAAAAAAAAI}
-{\bkmkend AAAAAAAAAI}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-int {\b i}{\bkmkstart AAAAAAAAAJ}
-{\bkmkend AAAAAAAAAJ}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-long {\b l}{\bkmkstart AAAAAAAAAK}
-{\bkmkend AAAAAAAAAK}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-float {\b f}{\bkmkstart AAAAAAAAAL}
-{\bkmkend AAAAAAAAAL}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-double {\b d}{\bkmkstart AAAAAAAAAM}
-{\bkmkend AAAAAAAAAM}
-\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Contains a parameter received from / sent to the Python caller. \par
-}{
-Definition at line 49 of file CSMOn_wrapper.cpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-The documentation for this struct was generated from the following file:{\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-python/{\b CSMOn_wrapper.cpp}\par
-}\par \pard\plain 
-
-\pard\plain \sect\sbkpage
-\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-_point Struct Reference\par \pard\plain 
-{\tc\tcl2 \v _point}
-{\xe \v _point}
-{\bkmkstart AAAAAAAAAN}
-{\bkmkend AAAAAAAAAN}
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-A point representing the number of evaluations and the respective fitness value. }}\par
-{
-{\f2 #include <CSMOn.hpp>}}\par
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Public Member Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-{\b _point} (int _x, int _y){\bkmkstart AAAAAAAAAO}
-{\bkmkend AAAAAAAAAO}
-\par
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Data Fields\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-int {\b x}{\bkmkstart AAAAAAAAAP}
-{\bkmkend AAAAAAAAAP}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-double {\b y}{\bkmkstart AAAAAAAAAQ}
-{\bkmkend AAAAAAAAAQ}
-\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-A point representing the number of evaluations and the respective fitness value. \par
-}
-
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 04/Mar/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition at line 61 of file CSMOn.hpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-The documentation for this struct was generated from the following file:{\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/CSMOn.hpp\par
-}\par \pard\plain 
-
-\pard\plain \sect\sbkpage
-\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-CSMOn Class Reference\par \pard\plain 
-{\tc\tcl2 \v CSMOn}
-{\xe \v CSMOn}
-{\bkmkstart AAAAAAAAAR}
-{\bkmkend AAAAAAAAAR}
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Convergence Stabilization Modeling operating in Online Mode. }}\par
-{
-{\f2 #include <CSMOn.hpp>}}\par
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Public Member Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-{\b CSMOn} ({\b ISearch} *search, int M, double R, double minEstimatedFit)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Class for {\b CSMOn}. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-void {\b run} (){\bkmkstart AAAAAAAAAS}
-{\bkmkend AAAAAAAAAS}
-\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Call this method to execute the search. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-void {\b getBest} (int nBest){\bkmkstart AAAAAAAAAT}
-{\bkmkend AAAAAAAAAT}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-int {\b adjustExp} (double r){\bkmkstart AAAAAAAAAU}
-{\bkmkend AAAAAAAAAU}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-int {\b adjustLog} (double r, int pT){\bkmkstart AAAAAAAAAV}
-{\bkmkend AAAAAAAAAV}
-\par
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-int {\b getNEvals} ()\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the actual number of evaluations executed. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-double {\b getFitness} ()\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the final fitness value. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-int {\b getBestPos} (double *x)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the final optimized result (position). }{
-}\par
-}}
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Convergence Stabilization Modeling operating in Online Mode. \par
-}
-
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 04/Mar/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition at line 75 of file CSMOn.hpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Constructor & Destructor Documentation\par
-\pard\plain 
-{\xe \v CSMOn\:CSMOn}
-{\xe \v CSMOn\:CSMOn}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-CSMOn::CSMOn ({\b ISearch} * {\i search}, int {\i M}, double {\i R}, double {\i minEstimatedFit})}}
-\par
-{\bkmkstart AAAAAAAAAW}
-{\bkmkend AAAAAAAAAW}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Class for {\b CSMOn}. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Always call this class directly (instead of the search method).\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i search} \cell }{The instance for the search method. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i M} \cell }{The maximum number of fitness function evaluations allocated for this run. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i R} \cell }{The relaxation to be used for the limit calculations, in the interval ]0,1[. For decreasing relaxation, provide it in negative values. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i minEstimatedFit} \cell }{The lowest fitness value expected. \cell }
-{\row }
-}
-}{
-Definition at line 43 of file CSMOn.cpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Member Function Documentation\par
-\pard\plain 
-{\xe \v getBestPos\:CSMOn}
-{\xe \v CSMOn\:getBestPos}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-int CSMOn::getBestPos (double * {\i x})}}
-\par
-{\bkmkstart AAAAAAAAAX}
-{\bkmkend AAAAAAAAAX}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the final optimized result (position). }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The final position. \par
-}}{
-Definition at line 198 of file CSMOn.cpp.}\par
-}
-{\xe \v getFitness\:CSMOn}
-{\xe \v CSMOn\:getFitness}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-double CSMOn::getFitness ()}}
-\par
-{\bkmkstart AAAAAAAAAY}
-{\bkmkend AAAAAAAAAY}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the final fitness value. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The final fitness value. \par
-}}{
-Definition at line 178 of file CSMOn.cpp.}\par
-}
-{\xe \v getNEvals\:CSMOn}
-{\xe \v CSMOn\:getNEvals}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-int CSMOn::getNEvals ()}}
-\par
-{\bkmkstart AAAAAAAAAZ}
-{\bkmkend AAAAAAAAAZ}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the actual number of evaluations executed. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The actual number of evaluations executed. \par
-}}{
-Definition at line 188 of file CSMOn.cpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-The documentation for this class was generated from the following files:{\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/CSMOn.hpp\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/CSMOn.cpp\par
-}\par \pard\plain 
-
-\pard\plain \sect\sbkpage
-\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-ISearch Class Reference\par \pard\plain 
-{\tc\tcl2 \v ISearch}
-{\xe \v ISearch}
-{\bkmkstart AAAAAAAABA}
-{\bkmkend AAAAAAAABA}
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-The interface that the search methods must to implement. }}\par
-{
-{\f2 #include <ISearch.hpp>}}\par
-Inheritance diagram for ISearch:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "classISearch__inherit__graph.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\par
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Public Member Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-virtual void {\b startup} ()=0{\bkmkstart AAAAAAAABB}
-{\bkmkend AAAAAAAABB}
-\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Startup the search method. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-virtual void {\b next} (int M)=0\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Obtain the next improvement. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-virtual int {\b getBestPos} (double *_x)=0\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best result obtained up to the moment. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-virtual int {\b getNEvals} ()=0\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the number of fitness function evaluations performed up to the moment. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-virtual double {\b getFitness} ()=0\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best fitness value found up to the moment. }{
-}\par
-}}
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-The interface that the search methods must to implement. \par
-}
-
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 04/Mar/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition at line 40 of file ISearch.hpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Member Function Documentation\par
-\pard\plain 
-{\xe \v getBestPos\:ISearch}
-{\xe \v ISearch\:getBestPos}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-virtual int ISearch::getBestPos (double * {\i _x}){\f2 [pure virtual]}}}
-\par
-{\bkmkstart AAAAAAAABC}
-{\bkmkend AAAAAAAABC}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best result obtained up to the moment. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\par
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i _x} \cell }{A pointer to store the positions of the best result. \cell }
-{\row }
-}
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid An ID for the best result (implementation specific). \par
-}}{
-Implemented in {\b PSO} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABD \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-}
-{\xe \v getFitness\:ISearch}
-{\xe \v ISearch\:getFitness}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-virtual double ISearch::getFitness (){\f2 [pure virtual]}}}
-\par
-{\bkmkstart AAAAAAAABE}
-{\bkmkend AAAAAAAABE}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best fitness value found up to the moment. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The best fitness value found. \par
-}}{
-Implemented in {\b PSO} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABF \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-}
-{\xe \v getNEvals\:ISearch}
-{\xe \v ISearch\:getNEvals}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-virtual int ISearch::getNEvals (){\f2 [pure virtual]}}}
-\par
-{\bkmkstart AAAAAAAABG}
-{\bkmkend AAAAAAAABG}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the number of fitness function evaluations performed up to the moment. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The number of evaluations performed. \par
-}}{
-Implemented in {\b PSO} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABH \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-}
-{\xe \v next\:ISearch}
-{\xe \v ISearch\:next}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-virtual void ISearch::next (int {\i M}){\f2 [pure virtual]}}}
-\par
-{\bkmkstart AAAAAAAABI}
-{\bkmkend AAAAAAAABI}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Obtain the next improvement. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\par
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i M} \cell }{The maximum number of evaluations allowed. \cell }
-{\row }
-}
-}{
-Implemented in {\b PSO} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABJ \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-The documentation for this class was generated from the following files:{\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/ISearch.hpp\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/CSMOn.cpp\par
-}\par \pard\plain 
-
-\pard\plain \sect\sbkpage
-\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-PSO Class Reference\par \pard\plain 
-{\tc\tcl2 \v PSO}
-{\xe \v PSO}
-{\bkmkstart AAAAAAAABK}
-{\bkmkend AAAAAAAABK}
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Particle Swarm Optimization. }}\par
-{
-{\f2 #include <PSO.hpp>}}\par
-Inheritance diagram for PSO:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "classPSO__inherit__graph.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\par
-Collaboration diagram for PSO:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "classPSO__coll__graph.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\par
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Public Member Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-{\b PSO} (callback_t fitnessFunction, double s1, double s2, int p, int n, double w, double c1, double c2)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-A standard implementation of {\b PSO}. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-void {\b startup} (){\bkmkstart AAAAAAAABL}
-{\bkmkend AAAAAAAABL}
-\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Startup the {\b PSO}. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-void {\b next} (int M)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Obtain the next improvement. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-int {\b getBestPos} (double *_x)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best result obtained up to the moment (global best). }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-int {\b getNEvals} ()\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the number of fitness function evaluations performed up to the moment. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-double {\b getFitness} ()\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best fitness value found up to the moment. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-unsigned int {\b getRandomSeed} ()\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get a random number to be used as seed for the random number generator. }{
-}\par
-}}
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Particle Swarm Optimization. \par
-}
-
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 04/Mar/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition at line 53 of file PSO.hpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Constructor & Destructor Documentation\par
-\pard\plain 
-{\xe \v PSO\:PSO}
-{\xe \v PSO\:PSO}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-PSO::PSO (callback_t {\i fitnessFunction}, double {\i s1}, double {\i s2}, int {\i p}, int {\i n}, double {\i w}, double {\i c1}, double {\i c2})}}
-\par
-{\bkmkstart AAAAAAAABM}
-{\bkmkend AAAAAAAABM}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-A standard implementation of {\b PSO}. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\par
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i fitnessFunction} \cell }{The callback reference to the fitness function. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i s1} \cell }{The lower bound of the search space. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i s2} \cell }{The upper bound of the search space. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i p} \cell }{The number of particles. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i n} \cell }{The number of dimensions of the problem. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i w} \cell }{The acceleration coefficient. For linear decreasing weight, provide it in negative values \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i c1} \cell }{The cognitive knowledge rate. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i c2} \cell }{The social knowledge rate. \cell }
-{\row }
-}
-}{
-Definition at line 45 of file PSO.cpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Member Function Documentation\par
-\pard\plain 
-{\xe \v getBestPos\:PSO}
-{\xe \v PSO\:getBestPos}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-int PSO::getBestPos (double * {\i _x}){\f2 [virtual]}}}
-\par
-{\bkmkstart AAAAAAAABD}
-{\bkmkend AAAAAAAABD}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best result obtained up to the moment (global best). }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\par
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i _x} \cell }{A pointer to store the positions of the global best. \cell }
-{\row }
-}
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The index of the particle that found the global best position. \par
-}}{
-Implements {\b ISearch} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABC \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-{
-Definition at line 160 of file PSO.cpp.}\par
-}
-{\xe \v getFitness\:PSO}
-{\xe \v PSO\:getFitness}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-double PSO::getFitness (){\f2 [virtual]}}}
-\par
-{\bkmkstart AAAAAAAABF}
-{\bkmkend AAAAAAAABF}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the best fitness value found up to the moment. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The best fitness value found. \par
-}}{
-Implements {\b ISearch} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABE \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-{
-Definition at line 180 of file PSO.cpp.}\par
-}
-{\xe \v getNEvals\:PSO}
-{\xe \v PSO\:getNEvals}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-int PSO::getNEvals (){\f2 [virtual]}}}
-\par
-{\bkmkstart AAAAAAAABH}
-{\bkmkend AAAAAAAABH}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get the number of fitness function evaluations performed up to the moment. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid The number of evaluations performed. \par
-}}{
-Implements {\b ISearch} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABG \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-{
-Definition at line 170 of file PSO.cpp.}\par
-}
-{\xe \v getRandomSeed\:PSO}
-{\xe \v PSO\:getRandomSeed}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-unsigned int PSO::getRandomSeed ()}}
-\par
-{\bkmkstart AAAAAAAABN}
-{\bkmkend AAAAAAAABN}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Get a random number to be used as seed for the random number generator. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-This implementation can be adapted/changed as necessary.\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Returns:\par}\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid A random seed. \par
-}}{
-Definition at line 191 of file PSO.cpp.}\par
-}
-{\xe \v next\:PSO}
-{\xe \v PSO\:next}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-void PSO::next (int {\i M}){\f2 [virtual]}}}
-\par
-{\bkmkstart AAAAAAAABJ}
-{\bkmkend AAAAAAAABJ}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Obtain the next improvement. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-{\par
-{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i M} \cell }{The maximum number of evaluations allowed. \cell }
-{\row }
-}
-}{
-Implements {\b ISearch} ({\i p.{\field\fldedit {\*\fldinst PAGEREF AAAAAAAABI \\*MERGEFORMAT}{\fldrslt pagenum}}}).}\par
-{
-Definition at line 120 of file PSO.cpp.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-The documentation for this class was generated from the following files:{\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/PSO.hpp\par
-\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid 
-cpp/PSO.cpp\par
-}
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-File Documentation{\tc \v File Documentation}
-\par \pard\plain 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-cpp/pso_example.cpp File Reference\par \pard\plain 
-{\tc\tcl2 \v cpp/pso_example.cpp}
-{\xe \v cpp/pso_example.cpp}
-{\bkmkstart AAAAAAAAAA}
-{\bkmkend AAAAAAAAAA}
-{
-\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include <stdio.h>}\par
-{\f2 #include <string.h>}\par
-{\f2 #include <iostream>}\par
-{\f2 #include "PSO.hpp"}\par
-{\f2 #include "CSMOn.hpp"}\par
-}
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Include dependency graph for pso_example.cpp:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "pso__example_8cpp__incl.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\par
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-double {\b fitnessFunction} (double *x, int n)\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Fitness function implementation. }{
-}\par
-}}
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-int {\b main} (int argc, char *argv[]){\bkmkstart AAAAAAAAAB}
-{\bkmkend AAAAAAAAAB}
-\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-This file provides an implementation example to call {\b CSMOn}.\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 02/Jul/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition in file {\b pso_example.cpp}.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Function Documentation\par
-\pard\plain 
-{\xe \v fitnessFunction\:pso_example.cpp}
-{\xe \v pso_example.cpp\:fitnessFunction}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-double fitnessFunction (double * {\i x}, int {\i n})}}
-\par
-{\bkmkstart AAAAAAAAAC}
-{\bkmkend AAAAAAAAAC}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Fitness function implementation. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Put your fitness function here. \par
-}{
-Definition at line 112 of file pso_example.cpp.}\par
-}
-\par \pard\plain 
-
-\pard\plain \sect\sbkpage
-\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid 
-python/CSMOn_wrapper.cpp File Reference\par \pard\plain 
-{\tc\tcl2 \v python/CSMOn_wrapper.cpp}
-{\xe \v python/CSMOn_wrapper.cpp}
-{\bkmkstart AAAAAAAAAD}
-{\bkmkend AAAAAAAAAD}
-{
-\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include <stdio.h>}\par
-{\f2 #include <string.h>}\par
-{\f2 #include <iostream>}\par
-{\f2 #include "PSO.hpp"}\par
-{\f2 #include "CSMOn.hpp"}\par
-}
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Include dependency graph for CSMOn_wrapper.cpp:{
-\pard\plain 
-\par\pard \qc {\field\flddirty {\*\fldinst INCLUDEPICTURE "CSMOn__wrapper_8cpp__incl.png" \\d \\*MERGEFORMAT}{\fldrslt IMAGE}}\par
-}
-\par
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Data Structures\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-struct {\b _Param}\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Contains a parameter received from / sent to the Python caller. }}}
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Typedefs\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-
-typedef struct {\b _Param} {\b Param}{\bkmkstart AAAAAAAAAE}
-{\bkmkend AAAAAAAAAE}
-\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Contains a parameter received from / sent to the Python caller. }{
-}\par
-}}
-}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Functions\par
-\pard\plain 
-
-{
-\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid 
-void {\b search} (char *method, {\b Param} *inParam, {\b Param} *outParam, double *outPos, callback_t {\b fitnessFunction})\par
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-The wrapper function for Python calls. }{
-}\par
-}}
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Detailed Description\par
-\pard\plain 
-{
-\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-This file contains the wrapper code for Python calls.\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Date:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid 02/Jul/2017 \par
-}{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Author:\par}\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid Peter Frank Perroni ({\f2 pfperroni@gmail.com}) \par
-}}{
-Definition in file {\b CSMOn_wrapper.cpp}.}\par
-}
-{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par}
-\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid 
-Function Documentation\par
-\pard\plain 
-{\xe \v search\:CSMOn_wrapper.cpp}
-{\xe \v CSMOn_wrapper.cpp\:search}
-\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid {
-{\b 
-void search (char * {\i method}, {\b Param} * {\i inParam}, {\b Param} * {\i outParam}, double * {\i outPos}, callback_t {\i fitnessFunction})}}
-\par
-{\bkmkstart AAAAAAAAAF}
-{\bkmkend AAAAAAAAAF}
-{
-\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid 
-\par
-{
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-The wrapper function for Python calls. }}\par
-{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid 
-Call this method from Python using ctypes interface.\par
-{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid 
-Parameters:\par}
-\pard\plain \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i method} \cell }{A string speficying the search method to be used. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i inParam} \cell }{The parameters required to call the search method specified. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i outParam} \cell }{The parameters returned by the search method called. This will be returned back to the Python caller. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i outPos} \cell }{The final result containing the optimized position. This will be returned back to the Python caller. \cell }
-{\row }
-\trowd \trgaph108\trleft426\tblind426\trbrdrt\brdrs\brdrw10\brdrcf15 \trbrdrl\brdrs\brdrw10\brdrcf15 \trbrdrb\brdrs\brdrw10\brdrcf15 \trbrdrr\brdrs\brdrw10\brdrcf15 \trbrdrh\brdrs\brdrw10\brdrcf15 \trbrdrv\brdrs\brdrw10\brdrcf15 
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx2187
-\clvertalt\clbrdrt\brdrs\brdrw10\brdrcf15 \clbrdrl\brdrs\brdrw10\brdrcf15 \clbrdrb\brdrs\brdrw10\brdrcf15 \clbrdrr \brdrs\brdrw10\brdrcf15 \cltxlrtb \cellx8748
-\pard \widctlpar\intbl\adjustright
-{{\i fitnessFunction} \cell }{The callback Python function containing the code for the fitness function evaluation. \cell }
-{\row }
-}
-}{
-Definition at line 69 of file CSMOn_wrapper.cpp.}\par
-}
-
-\pard\plain \sect\sbkpage
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid 
-\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid Index\par 
-\pard\plain 
-{\tc \v Index}
-{\field\fldedit {\*\fldinst INDEX \\c2 \\*MERGEFORMAT}{\fldrslt INDEX}}
-}
\ No newline at end of file
-- 
GitLab