ShootingBoundaryOutput.java
- /* Copyright 2022-2025 Romain Serra
- * Licensed to CS GROUP (CS) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * CS licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package org.orekit.control.indirect.shooting;
- import org.orekit.control.indirect.shooting.propagation.ShootingPropagationSettings;
- import org.orekit.propagation.SpacecraftState;
- /**
- * Data container for two-point boundary output of indirect shooting methods.
- *
- * @author Romain Serra
- * @since 12.2
- * @see AbstractIndirectShooting
- */
- public class ShootingBoundaryOutput {
- /** Initial propagation state. */
- private final SpacecraftState initialState;
- /** Terminal propagation state. */
- private final SpacecraftState terminalState;
- /** Propagation settings. */
- private final ShootingPropagationSettings shootingPropagationSettings;
- /** Convergence flag. */
- private final boolean converged;
- /** Iteration count. */
- private final int iterationCount;
- /**
- * Constructor.
- * @param converged convergence flag
- * @param iterationCount iteration number
- * @param initialState initial state
- * @param terminalState terminal state
- * @param shootingPropagationSettings propagation settings
- */
- public ShootingBoundaryOutput(final boolean converged, final int iterationCount,
- final SpacecraftState initialState,
- final ShootingPropagationSettings shootingPropagationSettings,
- final SpacecraftState terminalState) {
- this.converged = converged;
- this.iterationCount = iterationCount;
- this.initialState = initialState;
- this.terminalState = terminalState;
- this.shootingPropagationSettings = shootingPropagationSettings;
- }
- /**
- * Getter for convergence flag.
- * @return convergence flag
- */
- public boolean isConverged() {
- return converged;
- }
- /**
- * Getter for the iteration number.
- * @return count
- */
- public int getIterationCount() {
- return iterationCount;
- }
- /**
- * Getter for the initial state.
- * @return initial state
- */
- public SpacecraftState getInitialState() {
- return initialState;
- }
- /**
- * Getter for the terminal state.
- * @return terminal state
- */
- public SpacecraftState getTerminalState() {
- return terminalState;
- }
- /**
- * Getter for the shooting propagation settings.
- * @return propagation settings
- */
- public ShootingPropagationSettings getShootingPropagationSettings() {
- return shootingPropagationSettings;
- }
- }