﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
757	Allowing arbitrary covariance matrix on BSR Ascii and Import API's	Víctor de Buen Remiro	Víctor de Buen Remiro	"Kernel of BSR can handle with arbitrary covariance matrices but Ascii nor Import API's does it.

Internally, they are needed three matrices:
 1. [[LatexEquation( \Sigma )]]: Simmetric positive define covariance matrix
 1. [[LatexEquation( L )]]: Choleski decomposition of covariance, [[LatexEquation( \Sigma=L\cdot L^{T} )]]
 1. [[LatexEquation( L^{-T} )]]: Choleski decomposition of inverse of covariance [[LatexEquation( \Sigma^{-1}=L^{-T}\cdot L^{-1} )]]

In real problems it's posible that we have precalculated some of these matrices. So, in order to be efficient, specially for large cases, it could be a good feature to admit at least one of these representations:

 1. {{{Cov}}}: When we have only the covariance. For example in prior nodes.
 1. {{{CovInv}}} : When we have the inverse of the covariance. For example, when it results from a previous linear regression.
 1. {{{CovChol}}} : When we have precalculate the Choleski decomposition
 1. {{{CovInvChol}}} : When we have precalculate the Choleski decomposition of inverse of covariance matrix.

In ASCII .bsr files these are all alternative ways to define covariance matrices and the corresponding method of NameBlock argument of Import API

 1. '''Fixed diagonal'''. 
{{{
   ASCII: (<sigma2_name> | <sigma2_constant>)
   Import: No method 
}}}
 1. '''ARIMA covariance'''. 
{{{
ASCII: 
  (<sigma2_name> | <sigma2_constant>) * Cov =
    ArimaCovariance([[ARIMAStruct(...), ..., ARIMAStruct(...) ]])

Import: 
  Text Get.ARIMA.Size  (Real unused);
  Set  Get.ARIMA.Factor(Real f);
}}}
 1. '''Explicit covariance'''. 
{{{
ASCII:
  (<sigma2_name> | <sigma2_constant>) * Cov =
    {$ <TOL simmetric positive definite VMatrix expression> $}

Import: 
  Text Get.Cov(Real unused);
}}}
 1. '''Inverse of covariance'''. 
{{{
ASCII: 
  (<sigma2_name> | <sigma2_constant>) * CovInv =
    {$ <TOL simmetric positive definite VMatrix expression> $}

Import: 
  Text Get.CovInv(Real unused);
}}}
 1. '''Choleski decomposition of covariance'''
{{{
ASCII:
  (<sigma2_name> | <sigma2_constant>) * CovChol =
    {$ <TOL regular triangular VMatrix expression> $}

Import: 
  Text Get.CovChol(Real unused)
}}}
 1. '''Choleski decomposition of inverse of covariance'''. 
{{{
ASCII:
  (<sigma2_name> | <sigma2_constant>) * CovInvChol =
    {$ <TOL regular triangular VMatrix expression> $}

Import: 
  Text Get.CovInvChol(Real unused);
}}}








"	enhancement	closed	highest	BSR API	Math	2.0.1	blocker	fixed		
