BiasDescription.java

  1. /* Copyright 2002-2025 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. package org.orekit.files.sinex;

  18. import org.orekit.gnss.TimeSystem;

  19. /** Class to store the bias description parameters.
  20.  * <p>
  21.  * This class gives important parameters from the analysis and defines the fields in the block ’BIAS/SOLUTION’
  22.  * of the loaded Sinex file.
  23.  * </p>
  24.  * @author Louis Aucouturier
  25.  * @since 12.0
  26.  */
  27. public class BiasDescription {

  28.     /** Determination mode used to generate the bias results. */
  29.     private String determinationMethod;

  30.     /** Describes how the included GNSS bias values have to be interpreted and applied. */
  31.     private String biasMode;

  32.     /** Time system. */
  33.     private TimeSystem timeSystem;

  34.     /** Observation sampling interval used for data analysis (s). */
  35.     private int observationSampling;

  36.     /** Parameter spacing interval between the bias value (s). */
  37.     private int parameterSpacing;

  38.     /** Simple constructor. */
  39.     public BiasDescription() {
  40.         this.determinationMethod = "";
  41.         this.observationSampling = -1;
  42.         this.parameterSpacing    = -1;
  43.     }

  44.     /** Get the determination mode used to generate the bias results.
  45.      * <p>
  46.      * This value is optional. If the value is not present in the file, the method returns an empty string.
  47.      * </p>
  48.      * @return the determination mode used to generate the bias results.
  49.      */
  50.     public final String getDeterminationMethod() {
  51.         return determinationMethod;
  52.     }

  53.     /** Get the bias mode.
  54.      * <p>
  55.      * The bias mode describes how the included GNSS bias values have to be interpreted and applied.
  56.      * </p>
  57.      * @return the bias mode
  58.      */
  59.     public final String getBiasMode() {
  60.         return biasMode;
  61.     }

  62.     /** Get the time system for DSB data.
  63.      * @return the time system
  64.      */
  65.     public final TimeSystem getTimeSystem() {
  66.         return timeSystem;
  67.     }

  68.     /** Get the observation sampling interval used for data analysis.
  69.      * <p>
  70.      * This value is optional. If the value is not present in the file, the method returns -1.
  71.      * </p>
  72.      * @return the observation sampling interval used for data analysis in seconds
  73.      */
  74.     public final int getObservationSampling() {
  75.         return observationSampling;
  76.     }

  77.     /** Get the parameter spacing interval between the bias value.
  78.      * <p>
  79.      * This value is optional. If the value is not present in the file, the method returns -1.
  80.      * </p>
  81.      * @return the pParameter spacing interval between the bias value in seconds
  82.      */
  83.     public final int getParameterSpacing() {
  84.         return parameterSpacing;
  85.     }

  86.     /** Set the determination mode used to generate the bias results.
  87.      * @param determinationMethod the determination method to set
  88.      */
  89.     public void setDeterminationMethod(final String determinationMethod) {
  90.         this.determinationMethod = determinationMethod;
  91.     }

  92.     /** Set the bias mode.
  93.      * @param biasMode the bias mode to set
  94.      */
  95.     public void setBiasMode(final String biasMode) {
  96.         this.biasMode = biasMode;
  97.     }

  98.     /** Set the time system used for DSB data.
  99.      * @param timeSystem the time system to set
  100.      */
  101.     public void setTimeSystem(final TimeSystem timeSystem) {
  102.         this.timeSystem = timeSystem;
  103.     }

  104.     /** Set the observation sampling interval used for data analysis.
  105.      * @param observationSampling the observation sampling to set in seconds
  106.      */
  107.     public void setObservationSampling(final int observationSampling) {
  108.         this.observationSampling = observationSampling;
  109.     }

  110.     /** Set the parameter spacing interval between the bias value.
  111.      * @param parameterSpacing the parameter spacing to set in seconds
  112.      */
  113.     public void setParameterSpacing(final int parameterSpacing) {
  114.         this.parameterSpacing = parameterSpacing;
  115.     }

  116. }