View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      https://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  
18  /*
19   * This is not the original file distributed by the Apache Software Foundation
20   * It has been modified by the Hipparchus project
21   */
22  package org.hipparchus.fitting;
23  
24  import java.io.Serializable;
25  
26  /**
27   * This class is a simple container for weighted observed point in
28   * {@link AbstractCurveFitter curve fitting}.
29   * <p>Instances of this class are guaranteed to be immutable.</p>
30   */
31  public class WeightedObservedPoint implements Serializable {
32      /** Serializable version id. */
33      private static final long serialVersionUID = 5306874947404636157L;
34      /** Weight of the measurement in the fitting process. */
35      private final double weight;
36      /** Abscissa of the point. */
37      private final double x;
38      /** Observed value of the function at x. */
39      private final double y;
40  
41      /**
42       * Simple constructor.
43       *
44       * @param weight Weight of the measurement in the fitting process.
45       * @param x Abscissa of the measurement.
46       * @param y Ordinate of the measurement.
47       */
48      public WeightedObservedPoint(final double weight, final double x, final double y) {
49          this.weight = weight;
50          this.x      = x;
51          this.y      = y;
52      }
53  
54      /**
55       * Gets the weight of the measurement in the fitting process.
56       *
57       * @return the weight of the measurement in the fitting process.
58       */
59      public double getWeight() {
60          return weight;
61      }
62  
63      /**
64       * Gets the abscissa of the point.
65       *
66       * @return the abscissa of the point.
67       */
68      public double getX() {
69          return x;
70      }
71  
72      /**
73       * Gets the observed value of the function at x.
74       *
75       * @return the observed value of the function at x.
76       */
77      public double getY() {
78          return y;
79      }
80  
81  }
82