Minor simplification and improvements
parent
b916346176
commit
7495668ef2
|
@ -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;
|
||||||
|
|
|
@ -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;
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in New Issue