/// <summary> /// Creates a new object that is a copy of the current instance. /// </summary> /// /// <returns> /// A new object that is a copy of this instance. /// </returns> /// public override object Clone() { double[][] A = LogTransitions.Copy(); double[][] B = LogEmissions.Copy(); double[] pi = LogInitial.Copy(); return(new HiddenMarkovModel(A, B, pi, logarithm: true)); }
/// <summary> /// Creates a new object that is a copy of the current instance. /// </summary> /// /// <returns> /// A new object that is a copy of this instance. /// </returns> /// public virtual object Clone() { double[][] A = LogTransitions.Copy(); double[] pi = LogInitial.Copy(); TDistribution[] B = Emissions.MemberwiseClone(); return(new HiddenMarkovModel <TDistribution, TObservation>(A, B, pi, logarithm: true)); }