Versions Compared

Key

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

...

  • Mass = SUM(@QEntity, 1, @Mass) ; The result will be the summation of all parameters “Mass” of the Entities one level below.
  • COGX = MOMX/Mass
  • COGY = MOMY/Mass
  • COGZ = MOMZ/Mass
  • MOMX = SUM(@QEntity, 1, @MOMX)
  • MOMY = SUM(@QEntity, 1, @MOMY)
  • MOMZ = SUM(@QEntity, 1, @MOMZ)
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.
  • Assign the following text for “QEntityRef”; “Mass calculation: summation of light ship weight and total cargo weight

...

  • Mass = SUM(@QEntity, 1, @Mass) ; The result will be the summation of all parameters “Mass” of the Entities one level below.
  • COGX = MOMX/Mass
  • COGY = MOMY/Mass
  • COGZ = MOMZ/Mass
  • MOMX = SUM(@QEntity, 1, @MOMX);
  • MOMY = SUM(@QEntity, 1, @MOMY)
  • MOMZ = SUM(@QEntity, 1, @MOMZ)
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.

2.4.1.1     Mass Hull

...

Create the following relations in Entity “Mass Hull“;

  • COGX = ( ENTITY#(xx).Lpp)*0.5 ; for xx fill in the value of QEntityID of Entity ”Main Dimensions”. So we assume the centre of gravity of the hull in X direction half of the ship length.
  • COGY = 0 ; Amidships
  • COGZ = ( ENTITY#(xx).Dm)*0.45 ; for xx fill in the value of QEntityID of Entity ”Main Dimensions”. So we assume the centre of gravity of the hull in Z direction at 45 % of the moulded depth.
  • MOMX = COGX*Mass
  • MOMY = COGY*Mass
  • MOMZ = COGZ*Mass
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.
  • Volume = ENTITY#(xx).Volume ; for xx fill in the value of QEntityID of Entity ”Hydrostatics”. Make sure to instantiate this parameter and remove @MODIFY because you do not want to allow this at this position.
  • Mass = Weight_volume_factor*Volume

...

  • Mass = SUM(@QEntity, 1, @Mass)
  • COGX = MOMX/Mass
  • COGY = MOMY/Mass
  • COGZ = MOMZ/Mass
  • MOMX = SUM(@QEntity, 1, @MOMX);
  • MOMY = SUM(@QEntity, 1, @MOMY)
  • MOMZ = SUM(@QEntity, 1, @MOMZ)
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.

Include the following parameters in Entity “Decks“ (Child of entity “Mass Decks”): “Nr”, “Name$”, “Area”, “Weight_area_factor”, “Mass”, “COGX”, “COGY”, “COGZ”, “MOMX”, “MOMY”, “MOMZ and QEntityData”.

...

Take care that, with exception of parameter “Nr”, all parameters are placed within the table view (instantiate parameter and provide attribute @MULTVAL in Data Slot). See also Figure 81.

The number of cases is equal to the number of defined decks by the user in the “Lay out” Entity. We are going to get this information. Create the following relation.

  • Nr = ENTITY#(xx).Nr ; for xx fill in the value of QEntityID of Entity “Decks” that is a child of Entity “Lay out”.

The first column/case of the table should contain data (Name$ and Area) from the first defined Deck in Entity “Deck. The second column contains data from the second defined deck, etc. This can be done by the following relations.

In this relation, QEntityID = xx refers to the value of QEntityID of the multiple Entity “Deck” that is a child of Entity “Decks”, see section 2.3.9.

When you want refer to a multiple Entity, you also have to indicate the QEntityIndex. Quaestor automatically  Quaestor automatically provides an index value in the Quaestor parameter the Quaestor parameter QEntityIndex for each multiple Entity. So ENTITY#(xx, 3) refers to the third defined Entity “Deck”. The functionORCA(1) returns the current case number which is now being executed. So for the second column/case in a table the value of ORCA(1) = 2. When we combine the index with the ORCA() function, like in Area = ENTITY#(xx, ORCA(1)).Area, the second column of the current table will refer to the area from the second defined deck, etc.

...

  • COGX = ENTITY#(xx, ORCA(1.X_front) + (ENTITY#(xx, ORCA(1)).X_aft))/2 ; for xx fill in the value of QEntityID of Entity ”Deck”.
  • COGY = 0
  • COGZ = ENTITY#(xx, ORCA(1)).Z ; for xx fill in the value of QEntityID of Entity ”Deck”.
  • MOMX = COGX*Mass
  • MOMY = COGY*Mass
  • MOMZ = COGZ*Mass
  • Mass = Weight_area_factor*Area
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.

As already discussed in the “Deck” Entity, the Weight_area_factor is a bit special. What we want is that this property is connected to the original value in Deck (of which the value is hidden) but, when modified by the user, the modified value should be used in both the present Mass Decks>Decks Entity AND the original Entity (Decks>Deck).

This is done by means of the @SAVEINSOURCE attribute. Create the following relation:

  • Weight_area_factor = ENTITY#(16, ORCA(1)).Weight_area_factor
  • And add the following attribute to the instantiated “Weight_area_factor“ parameter:

@MULTVAL
@MODIFY
@SAVEINSOURCE

Figure 80: Data slot of "Weight_area_factor"

...

  • Mass = SUM(@QEntity, 1, @Mass)
  • COGX = MOMX/Mass
  • COGY = MOMY/Mass
  • COGZ = MOMZ/Mass
  • MOMX = SUM(@QEntity, 1, @MOMX);
  • MOMY = SUM(@QEntity, 1, @MOMY)
  • MOMZ = SUM(@QEntity, 1, @MOMZ)
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.

Include the following parameters in Entity “Bulkheads” (Child of entity “Mass Bulkheads”): “Nr”, “Name$”, “Area”, “Weight_area_factor”, “Mass”, “COGX”, “COGY”, “COGZ”, “MOMX”, “MOMY”, “MOMZ and QEntityData”.

Take care that with exception of parameter “Nr” all parameters are placed within the table view (instantiate parameters and provide attribute @MULTVAL in Data Slot).

We want to get the data for “Nr”, “Name$”, “Area” from parameters in Entity “Bulkheads” (Child of Entity “Mass Bulkheads”). We connect to this data through the following relations (in all expression QEntityID = xx refers to the Entity “Bulheads” that is a child of Entity “Bulkheads”, see section 2.3.11. This Entity “Bulkheads” is a singular obligatory Entity which also contains a table):

Next create the following relations in Entity “Bulkheads” that is a child of Entity “Mass Bulkheads”:

  • COGX = ENTITY#(xx).X.ORCA(1)
  • COGY = 0
  • COGZ = (ENTITY#(xx).Z_bottom.ORCA(1) + ENTITY#(xx).Z_top.ORCA(1))/2
  • MOMX = COGX*Mass
  • MOMY = COGY*Mass
  • MOMZ = COGZ*Mass
  • Mass = Weight_area_factor*Area
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”

As already discussed above, the Weight_area_factor is a bit special. What we want is that this property is connected to the original value in Bulkheads (of which the value is hidden) but, when modified by the user, the modified value should be used in both the present Mass Bulkheads>Bulkheads Entity AND the original Entity (Bulkheads>Bulkheads).

This is done by means of the @SAVEINSOURCE attribute. Create the following relation:

  • Weight_area_factor = ENTITY#(xx).Weight_area_factor.ORCA(1)
  • And add the following attribute to the instantiated “Weight_area_factor“ parameter:

@MULTVAL
@MODIFY 
@SAVEINSOURCE

Please note the difference with the previous paragraph, in which a table was created referring to values within multiple entities. For the bulkheads we have created one table and refer to values within the table of another singular Entity

...

  • Mass = SUM(@QEntity, 1, @Mass)
  • COGX = MOMX/Mass
  • COGY = MOMY/Mass
  • COGZ = MOMZ/Mass
  • MOMX = SUM(@QEntity, 1, @MOMX);
  • MOMY = SUM(@QEntity, 1, @MOMY)
  • MOMZ = SUM(@QEntity, 1, @MOMZ)
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.

Assign the following text for “QEntityRef”; “Cargo mass calculation: summation of all cargo components

...

Take care that with exception of parameter “Nr” all parameters are placed within the table view (instantiate parameters and provide attribute @MULTVAL in Data Slot).

In Entity “Cargoes” we enable the user to create a table with a number of cargo objects.  For each object the user has to provide a name, COG and mass. Create the following relations:

  • MOMX = COGX*Mass
  • MOMY = COGY*Mass
  • MOMZ = COGZ*Mass
  • To show computed values during a dialogue write “@SHOW” behind “QEntityData”.
  • Assign the following text for “QEntityRef”; “Define name, mass and COG of cargo objects
  • As explanation to the user, we want to include a schematic picture that depicts the used coordinate system within this configurator.Select QEntityDoc in Entity “Cargoes” and select the right mouse button menu Taxonomy>Include Binary Data or Ctrl+B. Now you can browse to the file you want to include, we propose the provided picture “coordinate_system.bmp”.

...

Figure 83: Entity "Cargoes" to define number of cargo objects

...

Back to content | Continue with Intact stability calculation >>