|
C_GetPanelPressureTimeHistory |
Call C_GetPanelPressureTimeHistory to calculate time domain panel pressure results for an OrcaFlex vessel.
void C_GetPanelPressureTimeHistory(
TOrcFxAPIHandle VesselHandle,
TOrcFxAPIHandle DiffractionHandle,
int ResultPanelsCount,
const int *lpResultPanels,
const TPeriod *lpPeriod,
const TPanelPressureParameters *lpParameters,
double *lpOutput,
int *lpStatus
);
The handle of the vessel for which you want panel pressure results. The vessel must belong to a time domain OrcaFlex model. The OrcaFlex simulation must be complete – you can call C_RunSimulation2 to perform the simulation or call C_LoadSimulation to open an existing results file.
The handle of an OrcaWave model model that includes the same vessel. DiffractionHandle can be obtained using C_CreateDiffraction. The OrcaWave calculation must be complete – you can call C_CalculateDiffraction to perform the calculation or call C_LoadDiffractionResults to open an existing results file. The model must include the output option for intermediate results.
The number of panels for which pressure is to be calculated – i.e. the size of the lpResultPanels array.
Points to an array of 0-based panel indices, of length ResultPanelsCount, specifying the panels for which pressure time history is to be calculated:
Points to a TPeriod variable that specifies the period of the simulation over which results are to be calculated.
Points to a TPanelPressureParameters structure that specifies the components of water pressure to be included in the panel pressure calculation.
If you include the diffraction component of panel pressure, the following requirement applies:
If you include the radiation component of panel pressure, the following requirements apply:
Tip: | Calculating the radiation component is particularly expensive. Use C_SetModelThreadCount to set the number of processing threads, in order to calculate pressure results in parallel for different panels. Use C_SetProgressHandler to set up a handler for progress notifications. |
Points to the output buffer, which is allocated by the caller. This is a two dimensional array with dimensions N, ResultPanelsCount. The array is in row-major order and N is the number of samples for this period. N can be obtained by calling C_GetNumOfSamples.
Points to a variable in which the status result for the function call will be returned.
C_RunSimulation2, C_LoadSimulation, C_CreateDiffraction, C_CalculateDiffraction, C_LoadDiffractionResults, C_GetDiffractionOutput, C_SetModelThreadCount, C_SetProgressHandler, C_GetNumOfSamples.