add some comments for Constrained model
							parent
							
								
									a48864452b
								
							
						
					
					
						commit
						ef99e1bf1a
					
				| 
						 | 
				
			
			@ -253,6 +253,9 @@ void Constrained::print(const std::string& name) const {
 | 
			
		|||
 | 
			
		||||
/* ************************************************************************* */
 | 
			
		||||
Vector Constrained::whiten(const Vector& v) const {
 | 
			
		||||
  // If sigmas[i] is not 0 then divide v[i] by sigmas[i], as usually done in
 | 
			
		||||
  // other normal Gaussian noise model. Otherwise, sigmas[i] = 0 indicating
 | 
			
		||||
  // a hard constraint, we don't do anything.
 | 
			
		||||
  const Vector& a = v;
 | 
			
		||||
  const Vector& b = sigmas_;
 | 
			
		||||
  size_t n = a.size();
 | 
			
		||||
| 
						 | 
				
			
			@ -287,6 +290,9 @@ Matrix Constrained::Whiten(const Matrix& H) const {
 | 
			
		|||
/* ************************************************************************* */
 | 
			
		||||
void Constrained::WhitenInPlace(Matrix& H) const {
 | 
			
		||||
  // selective scaling
 | 
			
		||||
  // Scale row i of H by sigmas[i], basically multiplying H with diag(sigmas)
 | 
			
		||||
  // Set inf_mask flag is true so that if invsigmas[i] is inf, i.e. sigmas[i] = 0,
 | 
			
		||||
  // indicating a hard constraint, we leave H's row i in place.
 | 
			
		||||
  vector_scale_inplace(invsigmas(), H, true);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue