Uploaded image for project: 'GMAT'
  1. GMAT
  2. GMT-1439

Parameter design for multiple dependency

    Details

    • Type: Improvement
    • Status: Open (View Workflow)
    • Priority: P3
    • Resolution: Unresolved
    • Affects Version/s: R2016a
    • Fix Version/s: None
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: All

      Description

      This is follow up bug of 977.

      Steve wrote:

      Currently, there is no way to view data associated with a thruster
      via the GUI, and probably not via the script either.

      This issue presents us with two problems. The first is how to update the GUI,
      which I think is relatively easy. The second, is how to treat the script, and
      more importantly, how parameter dependencies are handled. Here is an example
      of how we may allow a user to access thruster data

      Report MyReport MySpacecraft.Thruster1.ScaleFactor

      What we've done here, is created a new type of dependency though, what I would
      call a hardware dependency. If there is a parameter of a Thruster that is then
      Coordinate System or Central Body dependent, the current syntax won't work.

      So before we can address this, we have to determine if we should support a
      syntax where there are multiple dependencies, like this:

      Report MyReport MySpacecraft.Thruster1.EarthMJ2000Eq.X

      Linda, do you think the current design would support this? How big is the job
      to modify the parameter code to support this? Once we have these questions
      answered we can move forward to the next step.

      Linda wrote:

      There needs to be some design change.
      The current Parameter design supports only one dependency input,
      no dependency, origin dependent, coordinate system dependent.

      I think we can add one more dependency type, such as related object or owned
      object.

      So for MySpacecraft.Thruster1.ScaleFactor, ScaleFactor will have owned object
      of thruster and no dependency.

      It will be helpful if you can come up with list of parameter types that
      can have owned objects. The parameter types must be unique, since each
      parameter type is implemented as individual class.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            edwin.dove@nasa.gov Edwin Dove added a comment -

            Created an attachment (id=598)
            ParameterSelectRedesign2.png

            I've attached a modified image of the Parameter Select Dialog based on Steve's feedback. I opted not to call the new input field Hardware Dependency since we already have a Dependency Type input field. If we don't like the name, it's just text so it shouldn't be hard to change.

            The max syntax a user can enter through the GUI is now:
            [Object Type].[Attached Object].[Cb/CS Dependency Type].[Parameter]

            Attached Object and Cb/CS Dependency Type input fields do not always have values.

            {Attached Object}

            ------------------
            Attached Object: Default Value = [None] | Possible Values = [Thruster, Tank]
            Other types of Attached Objects could be S/C sensors, antenna, solar arrays, etc.

            Examples:
            MySpacecraft.Thruster1.EarthMJ2000Eq.X --> self explanatory

            MySpacecraft.Thruster1.X --> Same as example above since the default CS dependency is EarthMJ2000Eq. The default Cb dependency is Earth.

            MySpacecraft.Thruster1.ScaleFactor --> No Dependency Type is needed. In the GUI Dependency Type doesn't appear.

            MySpacecraft.EarthMJ2000Eq.X --> No attached object is needed. In the GUI Attached Object is None.

            {Object List}

            ------------------
            The Object list is populated by either the Object Type selection or the Attached Object selection. If None is the value for the Attached Object input field, Object List is populated based on Object Type selection. If a value other than None is selected for Attached Object, Object List is populated based on Attached Object selection.

            Show
            edwin.dove@nasa.gov Edwin Dove added a comment - Created an attachment (id=598) ParameterSelectRedesign2.png I've attached a modified image of the Parameter Select Dialog based on Steve's feedback. I opted not to call the new input field Hardware Dependency since we already have a Dependency Type input field. If we don't like the name, it's just text so it shouldn't be hard to change. The max syntax a user can enter through the GUI is now: [Object Type] . [Attached Object] . [Cb/CS Dependency Type] . [Parameter] Attached Object and Cb/CS Dependency Type input fields do not always have values. {Attached Object} ------------------ Attached Object: Default Value = [None] | Possible Values = [Thruster, Tank] Other types of Attached Objects could be S/C sensors, antenna, solar arrays, etc. Examples: MySpacecraft.Thruster1.EarthMJ2000Eq.X --> self explanatory MySpacecraft.Thruster1.X --> Same as example above since the default CS dependency is EarthMJ2000Eq. The default Cb dependency is Earth. MySpacecraft.Thruster1.ScaleFactor --> No Dependency Type is needed. In the GUI Dependency Type doesn't appear. MySpacecraft.EarthMJ2000Eq.X --> No attached object is needed. In the GUI Attached Object is None. {Object List} ------------------ The Object list is populated by either the Object Type selection or the Attached Object selection. If None is the value for the Attached Object input field, Object List is populated based on Object Type selection. If a value other than None is selected for Attached Object, Object List is populated based on Attached Object selection.
            Hide
            edwin.dove@nasa.gov Edwin Dove added a comment -

            Attachment ParameterSelectRedesign2.png has been added with description: ParameterSelectRedesign2.png

            Show
            edwin.dove@nasa.gov Edwin Dove added a comment - Attachment ParameterSelectRedesign2.png has been added with description: ParameterSelectRedesign2.png

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: