...
Waterline
, in the tree of the Workbase, select right-click on the Waterline
object (so the tree node in the solution) , right click 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.
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.
...
Top Goals/Undefined
:Intpol_Rel_B=LININT(@Hull,2,@Frame,@Rel_B,Frame)
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.
Inpol_Rel_B
will be the linear interpolated dimensionless width at a desired frame number (Frame
).@Hull
is the object containing all the data you want to use for the interpolation.2
is the number of dimensions in which the interpolation will take place.@Frame
makes sure the ...
Frame
of object Hull
will be used as the parameter X in the interpolation.@Rel_B
makes sure the column Rel_B
of object Hull
will be used as the parameter Y in the interpolation.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.
...
Intpol_Rel_B
using the ...
...
Ships
object. Make sure that Intpol_Rel_B
is in the class Top Goals/Undefined
to see it in the Process Manager. 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).
...