void _reset() {
   v_w.reset(); 
   v_p.reset(); 
   v_y.reset(); 
   v_fixed_dw.reset(); 
   var_const = fixed_const = 0; 
 }
  void reset(const AzDvect *inp_v_y, 
             const AzDvect *inp_v_fixed_dw=NULL) {
    v_dw.reform(inp_v_y->rowNum()); 
    v_dw.set(1); 
    v_tar_dw.set(inp_v_y); 
    v_y.set(inp_v_y);
    fixed_dw_sum = -1; 

    v_fixed_dw.reset(); 
    if (!AzDvect::isNull(inp_v_fixed_dw)) {
      v_fixed_dw.set(inp_v_fixed_dw); 
      if (v_fixed_dw.rowNum() != v_y.rowNum()) {
        throw new AzException(AzInputError, "AzTrTtarget::reset", 
                              "conlict in dimensionality: y and data point weights"); 
      }
      fixed_dw_sum = v_fixed_dw.sum(); 
    }
  }