Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/10/12 13:28:55 (12 years ago)
Author:
gkronber
Message:

#1902 implemented all mean and covariance functions with parameters as ParameterizedNamedItems

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/GaussianProcess/MeanSum.cs

    r8439 r8612  
    2727  [StorableClass]
    2828  [Item(Name = "MeanSum", Description = "Sum of mean functions for Gaussian processes.")]
    29   public class MeanSum : Item, IMeanFunction {
     29  public sealed class MeanSum : Item, IMeanFunction {
    3030    [Storable]
    3131    private ItemList<IMeanFunction> terms;
     
    3737    }
    3838
    39     public int GetNumberOfParameters(int numberOfVariables) {
    40       this.numberOfVariables = numberOfVariables;
    41       return terms.Select(t => t.GetNumberOfParameters(numberOfVariables)).Sum();
    42     }
    4339    [StorableConstructor]
    44     protected MeanSum(bool deserializing) : base(deserializing) { }
    45     protected MeanSum(MeanSum original, Cloner cloner)
     40    private MeanSum(bool deserializing) : base(deserializing) { }
     41    private MeanSum(MeanSum original, Cloner cloner)
    4642      : base(original, cloner) {
    4743      this.terms = cloner.Clone(original.terms);
     
    5046    public MeanSum() {
    5147      this.terms = new ItemList<IMeanFunction>();
     48    }
     49
     50    public override IDeepCloneable Clone(Cloner cloner) {
     51      return new MeanSum(this, cloner);
     52    }
     53
     54    public int GetNumberOfParameters(int numberOfVariables) {
     55      this.numberOfVariables = numberOfVariables;
     56      return terms.Select(t => t.GetNumberOfParameters(numberOfVariables)).Sum();
    5257    }
    5358
     
    5964        offset += numberOfParameters;
    6065      }
    61     }
    62 
    63     public void SetData(double[,] x) {
    64       foreach (var t in terms) t.SetData(x);
    6566    }
    6667
     
    8283      return terms[i].GetGradients(k, x);
    8384    }
    84 
    85     public override IDeepCloneable Clone(Cloner cloner) {
    86       return new MeanSum(this, cloner);
    87     }
    8885  }
    8986}
Note: See TracChangeset for help on using the changeset viewer.