1 /**************************************************************
2  *** RHmm package
3  ***
4  *** File: cDerivative.h
5  ***
6  *** Author: Ollivier TARAMASCO <Ollivier.Taramasco@imag.fr>
7  *** Author: Sebastian BAUER <sebastian.bauer@charite.de>
8  ***
9  **************************************************************/
10 
11 #ifndef _CDERIVATIVE_H_
12 #define _CDERIVATIVE_H_
13 #pragma once
14 
15 #include "cDistribution.h"
16 #include "cHmm.h"
17 
18 
19 class cDerivative /*: public cBaumWelch*/
20 {
21 	private :
22 		uint	mvNSample ;
23 		uint*	mvT ;
24 		uint	mvNFreeParam ;
25 		uint	mvNClass ;
26 	public :
27 		cDVector***	mPsi ;
28 		cDMatrix***	mOmega ;
29 		cDVector* mScore ;
30 		cDMatrix* mInformation ;
31 
32 	public :
33 		cDerivative(uint theNSample, uint* theT, uint theNClass, uint theNFreeParam)  ;
34 		cDerivative(const cInParam &theInParam, uint theNFreeParam) ;
35 		virtual ~cDerivative() ;
36 		void ComputeDerivative(cHmm& theHmm, cInParam& theParam) ;
37 		void ComputeScoreAndInformation(cDVector& theScore, cDMatrix& theInformation) ;
38 		void ComputeCov(cHmm& theHmm, cDMatrix& theCov) ;
39 } ;
40 
41 #endif //_CDERIVATIVE_H_
42