OpenVSP API Documentation 3.50.0
Loading...
Searching...
No Matches
General Computation Functions

The following group of API functions are available for general computations. In general, it is best practice to perform computations through the the Analysis group instead of calling these functions directly. Click here to return to the main page. More...

Functions

std::string vsp::ComputeMassProps (int set, int num_slices, int idir)
std::string vsp::ComputeCompGeom (int set, bool half_mesh, int file_export_types)
std::string vsp::ComputePlaneSlice (int set, int num_slices, const vec3d &norm, bool auto_bnd, double start_bnd=0, double end_bnd=0, bool measureduct=false)
void vsp::ComputeDegenGeom (int set, int file_export_types)

Detailed Description

Function Documentation

◆ ComputeCompGeom()

std::string vsp::ComputeCompGeom ( int set,
bool half_mesh,
int file_export_types )
extern

Mesh, intersect, and trim components in the set. Alternatively can be run through the Analysis Manager with 'CompGeom'.

//==== Add Pod Geom ====//
string pid = AddGeom( "POD", "" );
//==== Run CompGeom And Get Results ====//
string mesh_id = ComputeCompGeom( SET_ALL, false, 0 ); // Half Mesh false and no file export
string comp_res_id = FindLatestResultsID( "Comp_Geom" ); // Find Results ID
array<double> @double_arr = GetDoubleResults( comp_res_id, "Wet_Area" ); // Extract Results
std::string ComputeCompGeom(int set, bool half_mesh, int file_export_types)
@ SET_ALL
std::string AddGeom(const std::string &type, const std::string &parent=std::string())
std::string FindLatestResultsID(const std::string &name)
const std::vector< double > & GetDoubleResults(const std::string &id, const std::string &name, int index=0)
See also
SetAnalysisInputDefaults, PrintAnalysisInputs, ExecAnalysis, COMPUTATION_FILE_TYPE
Parameters
[in]setint Set index (i.e. SET_ALL)
[in]half_meshbool Flag to ignore surfaces on the negative side of the XZ plane (e.g. symmetry)
[in]file_export_typesint CompGeom file type to export (supports XOR i.e. COMP_GEOM_CSV_TYPE & COMP_GEOM_TXT_TYPE )
Returns
string MeshGeom ID

◆ ComputeDegenGeom()

void vsp::ComputeDegenGeom ( int set,
int file_export_types )
extern

Compute the degenerate geometry representation for the components in the set. Alternatively can be run through the Analysis Manager with 'DegenGeom' or 'VSPAERODegenGeom'.

//==== Set File Name ====//
SetComputationFileName( DEGEN_GEOM_CSV_TYPE, "TestDegenScript.csv" );
//==== Run Degen Geom ====//
ComputeDegenGeom( SET_ALL, DEGEN_GEOM_CSV_TYPE );
void SetComputationFileName(int file_type, const std::string &file_name)
void ComputeDegenGeom(int set, int file_export_types)
See also
SetAnalysisInputDefaults, PrintAnalysisInputs, ExecAnalysis, COMPUTATION_FILE_TYPE
Parameters
[in]setint Set index (i.e. SET_ALL)
[in]file_export_typesint DegenGeom file type to export (supports XOR i.e DEGEN_GEOM_M_TYPE & DEGEN_GEOM_CSV_TYPE)

◆ ComputeMassProps()

std::string vsp::ComputeMassProps ( int set,
int num_slices,
int idir )
extern

Compute mass properties for the components in the set. Alternatively can be run through the Analysis Manager with 'MassProp'.

//==== Test Mass Props ====//
string pid = AddGeom( "POD", "" );
string mesh_id = ComputeMassProps( SET_ALL, 20, X_DIR );
string mass_res_id = FindLatestResultsID( "Mass_Properties" );
array<double> @double_arr = GetDoubleResults( mass_res_id, "Total_Mass" );
if ( double_arr.size() != 1 ) { Print( "---> Error: API ComputeMassProps" ); }
std::string ComputeMassProps(int set, int num_slices, int idir)
@ X_DIR
Definition APIDefines.h:421
See also
SetAnalysisInputDefaults, PrintAnalysisInputs, ExecAnalysis
Parameters
[in]setint Set index (i.e. SET_ALL)
[in]num_slicesint Number of slices
[in]idirint Direction of slicing for integration
Returns
string MeshGeom ID

◆ ComputePlaneSlice()

std::string vsp::ComputePlaneSlice ( int set,
int num_slices,
const vec3d & norm,
bool auto_bnd,
double start_bnd = 0,
double end_bnd = 0,
bool measureduct = false )
extern

Slice and mesh the components in the set. Alternatively can be run through the Analysis Manager with 'PlanarSlice'.

//==== Add Pod Geom ====//
string pid = AddGeom( "POD", "" );
//==== Test Plane Slice ====//
string slice_mesh_id = ComputePlaneSlice( 0, 6, vec3d( 0.0, 0.0, 1.0 ), true );
string pslice_results = FindLatestResultsID( "Slice" );
array<double> @double_arr = GetDoubleResults( pslice_results, "Slice_Area" );
if ( double_arr.size() != 6 ) { Print( "---> Error: API ComputePlaneSlice" ); }
Definition Vec3d.h:243
std::string ComputePlaneSlice(int set, int num_slices, const vec3d &norm, bool auto_bnd, double start_bnd=0, double end_bnd=0, bool measureduct=false)
See also
SetAnalysisInputDefaults, PrintAnalysisInputs, ExecAnalysis
Parameters
[in]setint Set index (i.e. SET_ALL)
[in]num_slicesint Number of slices
[in]normvec3d Normal axis for all slices
[in]auto_bndbool Flag to automatically set the start and end bound locations
[in]start_bnddouble Location of the first slice along the normal axis (default: 0.0)
[in]end_bnddouble Location of the last slice along the normal axis (default: 0.0)
[in]measureductbool Flag to measure negative area inside positive area (default: false)
Returns
string MeshGeom ID