Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • In the solution Waterline , in the tree of the Workbase, select right-click on the Waterline  object (so the tree node in the solution) ,  right click Image Removed in the table of the Workbase and and select All to clipboardClipboard (or press F4). The Workbase Clipboard now pops up. Click on Preview. The contents of the Waterline object are now displayed. You temporarily have to use a workaround now, because the Paste the data (both Frame and Rel_B) in the object Hull (answer Yes to all for including the parameters in the Hull object)function is not yet implemented. Press Ctrl+A followed by Ctrl+C to copy the contents to the Windows clipboard. Click Cancel and close the clipboard. No need to save the values in there. Then right-click on the Hull object in the Dataset and select Database Input or press Shift+F3. In the pop-up window that appears, select Use Editor and click Continue. In the window that appears next, press Ctrl+V to paste the data in the object. Click OK. Select Yes to All and click Continue.

When you are done, you will have a Ships object containing data in a Hull object. The Hull object should be part of the Ships object because the Ships object is the database entry point. And because you want to use all Waterline data as one set, it should be in one Hull object (or as a TeLiTab value as an alternative).

The workbase is full of solutions we'll not use anymore. So now first let's clean it up. 

Image Added

3    Interpolation 

The relative width Rel_B at every frame was calculated directly using the a polynomial formula. In reality, the waterline of a ship will be defined more likely by a number of points than by a formula. To obtain the width at a certain location, you should interpolate between these points. We'll You can use the LININT() function to perform a linear integrationinterpolation.

...

  • Add the following relation in Top Goals/Undefined:

Intpol_Rel_B=LININT(@Hull,2,@Frame,@Rel_B,Frame)

  • Make sure Intpol_Rel_B is dimensionless and determined by SYS: System/Equation.  

The syntax of every intrinsic function in Quaestor is described in the wikithis documentation, see the functions overview. The syntax above means the following.

  1. The parameter Inpol_Rel_B will be the linear interpolated dimensionless width at a desired frame number (Frame).
  2. @Hull is the object containing all the data you want to use for the interpolation.
  3. 2 is the number of dimensions in which the interpolation will take place.
  4. @Frame makes sure the

...

  1. column Frame of object Hull will be used as the parameter X in the interpolation.
  2. @Rel_B makes sure the column Rel_B of object Hull will be used as the parameter Y in the interpolation.
  3. Frame is the input parameter for which an interpolated value should be obtained.

When Quaestor calculates this function, it determines the value value of Frame (which is user input). This value is then compared to the values of the given column for X (which is the column Frame of column Frame of the object Hull), and an interpolated value for Relfor Rel_B with B with respect to the input Frame is assigned to the parameter Intpol_Rel_B. Notice that an @ is used to identify the data within the object.

...

  • Run a solution for Intpol_Rel_B using the

...

  • Process Manager and selecting the

...

  • Ships object. Make sure that Intpol_Rel_B is in the class Top Goals/Undefined to see it in the Process Manager. The

...

  • Process Manager is crucial here, as static data from the 

...

  • Ships object should be used (which contains the object Hull). For

...

  • Frame, enter 3.20.

Quaestor should return 0.26 for Intpol_Rel_B.

To find out how accurate the interpolation is, we introduce an error. The interpolated parameter uses static data from the object Hull, but we also defined the relative width analytically (the parameter Rel_B).

...