Minor simplification and improvements

time-shift
Sébastien Villemot 2013-04-19 11:34:33 +02:00
parent b916346176
commit 7495668ef2
3 changed files with 3 additions and 8 deletions

View File

@ -59,15 +59,13 @@ public:
double logLikelihood = 0; double logLikelihood = 0;
for (size_t i = 0; i < estSubsamples.size(); ++i) for (size_t i = 0; i < estSubsamples.size(); ++i)
{ {
VectorView vSteadyState (steadyState,0,steadyState.getSize());
MatrixConstView dataView(data, 0, estSubsamples[i].startPeriod, MatrixConstView dataView(data, 0, estSubsamples[i].startPeriod,
data.getRows(), estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1); data.getRows(), estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1);
MatrixView detrendedDataView(detrendedData, 0, estSubsamples[i].startPeriod, MatrixView detrendedDataView(detrendedData, 0, estSubsamples[i].startPeriod,
data.getRows(), estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1); data.getRows(), estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1);
VectorView vllView(vll, estSubsamples[i].startPeriod, estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1); VectorView vllView(vll, estSubsamples[i].startPeriod, estSubsamples[i].endPeriod-estSubsamples[i].startPeriod+1);
logLikelihood += logLikelihoodSubSample.compute(vSteadyState, dataView, estParams, deepParams, logLikelihood += logLikelihoodSubSample.compute(steadyState, dataView, estParams, deepParams,
Q, H, vllView, detrendedDataView, start, i); Q, H, vllView, detrendedDataView, start, i);
} }
return logLikelihood; return logLikelihood;

View File

@ -67,11 +67,10 @@ public:
{ {
assert(steadyState.getStride() == 1); assert(steadyState.getStride() == 1);
assert(deepParams.getStride() == 1); assert(deepParams.getStride() == 1);
assert(Mx.getLd() == Mx.getRows());
assert(steadyState.getSize() == n_endo); assert(steadyState.getSize() == n_endo);
std::cout << "In: " << steadyState << std::endl;
gsl_vector_view ss = gsl_vector_view_array(steadyState.getData(), n_endo); gsl_vector_view ss = gsl_vector_view_array(steadyState.getData(), n_endo);
params p = { &static_dll, deepParams.getData(), deepParams.getSize(), Mx.getData(), Mx.getCols(), &residual, &g1 }; params p = { &static_dll, deepParams.getData(), deepParams.getSize(), Mx.getData(), Mx.getCols(), &residual, &g1 };
@ -106,8 +105,6 @@ public:
gsl_vector_memcpy(&ss.vector, gsl_multiroot_fdfsolver_root(s)); gsl_vector_memcpy(&ss.vector, gsl_multiroot_fdfsolver_root(s));
gsl_multiroot_fdfsolver_free(s); gsl_multiroot_fdfsolver_free(s);
std::cout << "Out: " << steadyState << std::endl;
} }
}; };

View File

@ -233,7 +233,7 @@ mexFunction(int nlhs, mxArray *plhs[],
const mxArray *bayestopt_ = prhs[5]; const mxArray *bayestopt_ = prhs[5];
const mxArray *oo_ = prhs[6]; const mxArray *oo_ = prhs[6];
mxArray *dataset_data = mxGetField(dataset,0,"data"); const mxArray *dataset_data = mxGetField(dataset,0,"data");
MatrixConstView data(mxGetPr(dataset_data), mxGetM(dataset_data), mxGetN(dataset_data), mxGetM(dataset_data)); MatrixConstView data(mxGetPr(dataset_data), mxGetM(dataset_data), mxGetN(dataset_data), mxGetM(dataset_data));
// Creaete LHS arguments // Creaete LHS arguments