Unverified Commit f84f2d3d authored by acpaquette's avatar acpaquette Committed by GitHub
Browse files

Jigsaw Target Radii Warning (#4220)

* Added warning to jigsaw when solving for the radius of the target body

* Updated jigsaw documentation

* Updated jigsaw docs based on feedback
parent c877120b
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -54,6 +54,17 @@ namespace Isis {

    // retrieve settings from jigsaw gui
    BundleSettingsQsp settings = bundleSettings(ui);
    if(settings->bundleTargetBody()->solveTriaxialRadii() ||
       settings->bundleTargetBody()->solveMeanRadius()) {
      PvlGroup radiusSolveWarning("RadiusSolveWarning");
      radiusSolveWarning.addKeyword(PvlKeyword("Warning", "The radii solve is currently \
                                                 under review and is likely resulting \
                                                 in addition error in the bundle adjust. \
                                                 We recommend that you do not solve for radii at this moment."));
       if(log) {
         log->PvlObject::addGroup(radiusSolveWarning);
       }
    }
    settings->setCubeList(cubeList);
    BundleAdjust *bundleAdjustment = NULL;
    try {
+36 −0
Original line number Diff line number Diff line
@@ -64,6 +64,12 @@
     pages.
    </p>

    <h4>Relevant Documentation</h4>
    <p>
      For information on what the original <b>jigsaw</b> code was based on checkout
      <a href="https://www.rand.org/pubs/notes/N3330.html">Rand Notebook</a>
    </p>

    <h4>Known Issues</h4>
      <blockquote>
      <b>Running jigsaw with a control net containing <i>JigsawRejected</i>
@@ -87,6 +93,30 @@
      </p>
      </blockquote>

      <blockquote>
      <b>Solving for the target body radii (triaxial or mean) is NOT possible and
      likely increases error in the solve.</b>
      <p>
        With the current jigsaw implementation, it is NOT possible to individually
        solve for either the mean or triaxial radii as seperate calculations in
        the bundle adjustment. More specifically, the target body radii has no
        effect when solving for individual points and thus cannot be solved for in the bundle.
        A local radii solve is already part of the sequence of equations that <b>jigsaw</b>
        uses to compute various partial derivatives to populate the solve matrix.
        A seperate mean or triaxial radii solve can be applied to the target body
        and the partials from this separate application are added to the
        solve matrix. This option adds additional computation time to <b>jigsaw</b>
        and creates additional uncertainty/error in the bundle adjust. We advise
        the mean and triaxial radii solve be avoided.
      </p>
      <p>
        If you are trying to generate a spheroid from a control network there are
        other programs that can do this for you. An easier but more naive method
        is ingesting the <i>OUTPUT_CSV</i> from your network, gather local radii
        information from those points, then generate a sphereiod from those local radii.
      </p>
      </blockquote>

  </description>

  <category>
@@ -283,6 +313,12 @@
      function to construct BundleObservationSolveSettings objects based off of the settings
      in the pvl file.
    </change>
    <change name="Adam Paquette" date="2020-12-23">
      Added a warning when solving for target body radii/radius that is output to
      the application log. Updated the documentation to include the original
      rand notebook that jigsaw was based on. Also added a section in the documentation
      describing the target body radii solve issue.
    </change>
  </history>

  <groups>