diff options
Diffstat (limited to 'src/main/java/org/apache/commons/math3/ode/sampling/package-info.java')
-rw-r--r-- | src/main/java/org/apache/commons/math3/ode/sampling/package-info.java | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/src/main/java/org/apache/commons/math3/ode/sampling/package-info.java b/src/main/java/org/apache/commons/math3/ode/sampling/package-info.java new file mode 100644 index 0000000..29c65e0 --- /dev/null +++ b/src/main/java/org/apache/commons/math3/ode/sampling/package-info.java @@ -0,0 +1,60 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF 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. + */ +/** + * + * <p> + * This package provides classes to handle sampling steps during + * Ordinary Differential Equations integration. + * </p> + * + * <p> + * In addition to computing the evolution of the state vector at some grid points, all + * ODE integrators also build up interpolation models of this evolution <em>inside</em> the + * last computed step. If users are interested in these interpolators, they can register a + * {@link org.apache.commons.math3.ode.sampling.StepHandler StepHandler} instance using the + * {@link org.apache.commons.math3.ode.FirstOrderIntegrator#addStepHandler addStepHandler} + * method which is supported by all integrators. The integrator will call this instance + * at the end of each accepted step and provide it the interpolator. The user can do + * whatever he wants with this interpolator, which computes both the state and its + * time-derivative. A typical use of step handler is to provide some output to monitor + * the integration process. + * </p> + * + * <p> + * In a sense, this is a kind of Inversion Of Control: rather than having the master + * application driving the slave integrator by providing the target end value for + * the free variable, we get a master integrator scheduling the free variable + * evolution and calling the slave application callbacks that were registered at + * configuration time. + * </p> + * + * <p> + * Since some integrators may use variable step size, the generic {@link + * org.apache.commons.math3.ode.sampling.StepHandler StepHandler} interface can be called + * either at regular or irregular rate. This interface allows to navigate to any location + * within the last computed step, thanks to the provided {@link + * org.apache.commons.math3.ode.sampling.StepInterpolator StepInterpolator} object. + * If regular output is desired (for example in order to write an ephemeris file), then + * the simpler {@link org.apache.commons.math3.ode.sampling.FixedStepHandler FixedStepHandler} + * interface can be used. Objects implementing this interface should be wrapped within a + * {@link org.apache.commons.math3.ode.sampling.StepNormalizer StepNormalizer} instance + * in order to be registered to the integrator. + * </p> + * + * + */ +package org.apache.commons.math3.ode.sampling; |