1   /* Copyright 2002-2020 CS Group
2    * Licensed to CS Group (CS) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * CS 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    *   http://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  package org.orekit.estimation.common;
19  
20  import org.hipparchus.linear.RealMatrix;
21  import org.hipparchus.stat.descriptive.StreamingStatistics;
22  import org.orekit.utils.PVCoordinates;
23  import org.orekit.utils.ParameterDriversList;
24  import org.orekit.utils.TimeStampedPVCoordinates;
25  
26  public class ResultBatchLeastSquares {
27  
28      private int numberOfIteration;
29      private int numberOfEvaluation;
30      private TimeStampedPVCoordinates estimatedPV;
31      private StreamingStatistics rangeStat;
32      private StreamingStatistics azimStat;
33      private StreamingStatistics elevStat;
34      ParameterDriversList propagatorParameters  ;
35      ParameterDriversList measurementsParameters;
36      private RealMatrix covariances;
37  
38      ResultBatchLeastSquares(ParameterDriversList  propagatorParameters,
39               ParameterDriversList  measurementsParameters,
40               int numberOfIteration, int numberOfEvaluation, TimeStampedPVCoordinates estimatedPV,
41               StreamingStatistics rangeStat, StreamingStatistics rangeRateStat,
42               StreamingStatistics azimStat, StreamingStatistics elevStat,
43               StreamingStatistics posStat, StreamingStatistics velStat,
44               RealMatrix covariances) {
45  
46          this.propagatorParameters   = propagatorParameters;
47          this.measurementsParameters = measurementsParameters;
48          this.numberOfIteration      = numberOfIteration;
49          this.numberOfEvaluation     = numberOfEvaluation;
50          this.estimatedPV            = estimatedPV;
51          this.rangeStat              =  rangeStat;
52          this.azimStat               = azimStat;
53          this.elevStat               = elevStat;
54          this.covariances            = covariances;
55      }
56  
57      public int getNumberOfIteration() {
58          return numberOfIteration;
59      }
60  
61      public int getNumberOfEvaluation() {
62          return numberOfEvaluation;
63      }
64  
65      public PVCoordinates getEstimatedPV() {
66          return estimatedPV;
67      }
68  
69      public StreamingStatistics getRangeStat() {
70          return rangeStat;
71      }
72  
73      public StreamingStatistics getAzimStat() {
74          return azimStat;
75      }
76  
77      public StreamingStatistics getElevStat() {
78          return elevStat;
79      }
80  
81      public RealMatrix getCovariances() {
82          return covariances;
83      }
84  
85      public ParameterDriversList getPropagatorParameters() {
86          return propagatorParameters;
87      }
88  
89      public ParameterDriversList getMeasurementsParameters() {
90          return measurementsParameters;
91      }
92  
93  }