WSF
WsfNASA_BreakupModel Class Reference

#include <WsfNASA_BreakupModel.hpp>

Inheritance diagram for WsfNASA_BreakupModel:
Collaboration diagram for WsfNASA_BreakupModel:

Public Member Functions

 WsfNASA_BreakupModel (WsfSimulation &aSimulation)
 ~WsfNASA_BreakupModel () override=default
size_t GetFragmentCount () const override
 Return the number of pieces of debris that were generated.
Fragment GetFragment (size_t aIndex) const override
 Get the indicated fragment's details.
const std::string & GetExplosionProgenitor () const
 Return the name of the progenitor of the explosive breakup.
double GetExplosionMass () const
 Return the mass involved in the explosive breakup.
const std::string & GetCollisionProgenitorOne () const
 Return the name of the smaller mass progenitor in a collisional breakup.
double GetCollisionProgenitorOneMass () const
 Return the mass of the smaller mass progenitor in a collisional breakup.
const std::string & GetCollisionProgenitorTwo () const
 Return the name of the larger mass progenitor in a collisional breakup.
double GetCollisionProgenitorTwoMass () const
 Return the mass of the larger mass progenitor in a collisional breakup.
double GetCollisionMass () const
 Return the mass of debris produced by the collision.
const std::string & GetDebrisName () const
double GetExplosionS_Factor () const
 Return the S factor for the explosive breakup.
double GetLargeFragmentMassFraction () const
 Return the fraction of the mass that will be deposited as large fragments.
bool IsModeledAsSpacecraft () const
 Return if the object involved in the breakup should be modeled as a spacecraft.
double GetMinFragmentSize () const
 Return the minimum fragment size that will be produced.
void SetDebrisName (const std::string &aDebrisName)
void SetExplosionS_Factor (double aS_Factor)
 Set the S factor for an explosive breakup.
void SetLargeFragmentMassFraction (double aLargeFragmentFraction)
 Set the large fragment mass fraction.
void SetModeledAsSpacecraft (bool aModelAsSpacecraft)
void SetMinFragmentSize (double aMinSize)
 Set the minimum size of a fragment produced by the model.
Public Member Functions inherited from WsfSatelliteBreakupModel
 WsfSatelliteBreakupModel (WsfSimulation &aSimulation)
virtual ~WsfSatelliteBreakupModel ()=default
bool HasGenerated () const
bool ExplosiveBreakup (double aSimTime, const std::string &aPlatformName, const std::vector< double > &aParams)
bool CollisionalBreakup (double aSimTime, const std::string &aTargetPlatform, const std::vector< double > &aTargetParams, const std::string &aImpactorPlatform, const std::vector< double > &aImpactorParams)
const std::string & GetFragmentPlatformType () const
 Get the type of the platform for any fragments created by this object.
void SetFragmentPlatformType (const std::string &aPlatformType)
 Set the type of the platform for any fragments created by this object.

Static Public Member Functions

static std::vector< double > PackInputParameters (double aMass, double aSize)
 A utility method to pack progenitor input parameters.

Additional Inherited Members

Protected Member Functions inherited from WsfSatelliteBreakupModel
WsfSimulationGetSimulation () const

Constructor & Destructor Documentation

◆ WsfNASA_BreakupModel()

WsfNASA_BreakupModel::WsfNASA_BreakupModel ( WsfSimulation & aSimulation)
explicit

◆ ~WsfNASA_BreakupModel()

WsfNASA_BreakupModel::~WsfNASA_BreakupModel ( )
overridedefault

Member Function Documentation

◆ GetCollisionMass()

double WsfNASA_BreakupModel::GetCollisionMass ( ) const
inline

Return the mass of debris produced by the collision.

◆ GetCollisionProgenitorOne()

const std::string & WsfNASA_BreakupModel::GetCollisionProgenitorOne ( ) const
inline

Return the name of the smaller mass progenitor in a collisional breakup.

◆ GetCollisionProgenitorOneMass()

double WsfNASA_BreakupModel::GetCollisionProgenitorOneMass ( ) const
inline

Return the mass of the smaller mass progenitor in a collisional breakup.

◆ GetCollisionProgenitorTwo()

const std::string & WsfNASA_BreakupModel::GetCollisionProgenitorTwo ( ) const
inline

Return the name of the larger mass progenitor in a collisional breakup.

◆ GetCollisionProgenitorTwoMass()

double WsfNASA_BreakupModel::GetCollisionProgenitorTwoMass ( ) const
inline

Return the mass of the larger mass progenitor in a collisional breakup.

◆ GetDebrisName()

const std::string & WsfNASA_BreakupModel::GetDebrisName ( ) const
inline

Return the name template of the produced debris.

The debris created by this model will be given names that are equal to the result of this method with a unique numerical identifier appended.

Returns
- The string template used to construct fragment names.

◆ GetExplosionMass()

double WsfNASA_BreakupModel::GetExplosionMass ( ) const
inline

Return the mass involved in the explosive breakup.

◆ GetExplosionProgenitor()

const std::string & WsfNASA_BreakupModel::GetExplosionProgenitor ( ) const
inline

Return the name of the progenitor of the explosive breakup.

◆ GetExplosionS_Factor()

double WsfNASA_BreakupModel::GetExplosionS_Factor ( ) const
inline

Return the S factor for the explosive breakup.

◆ GetFragment()

WsfSatelliteBreakupModel::Fragment WsfNASA_BreakupModel::GetFragment ( size_t aIndex) const
overridevirtual

Get the indicated fragment's details.

Implements WsfSatelliteBreakupModel.

◆ GetFragmentCount()

size_t WsfNASA_BreakupModel::GetFragmentCount ( ) const
overridevirtual

Return the number of pieces of debris that were generated.

Implements WsfSatelliteBreakupModel.

◆ GetLargeFragmentMassFraction()

double WsfNASA_BreakupModel::GetLargeFragmentMassFraction ( ) const
inline

Return the fraction of the mass that will be deposited as large fragments.

◆ GetMinFragmentSize()

double WsfNASA_BreakupModel::GetMinFragmentSize ( ) const
inline

Return the minimum fragment size that will be produced.

◆ IsModeledAsSpacecraft()

bool WsfNASA_BreakupModel::IsModeledAsSpacecraft ( ) const
inline

Return if the object involved in the breakup should be modeled as a spacecraft.

◆ PackInputParameters()

std::vector< double > WsfNASA_BreakupModel::PackInputParameters ( double aMass,
double aSize )
static

A utility method to pack progenitor input parameters.

Referenced by UT_DEFINE_SCRIPT_METHOD(), and UT_DEFINE_SCRIPT_METHOD().

◆ SetDebrisName()

void WsfNASA_BreakupModel::SetDebrisName ( const std::string & aDebrisName)
inline

Set the name template of the produced debris.

If no debris name is set for this object, the progenitor object(s) name(s) will be used to generate the template name.

Parameters
aDebrisName- a string to use as the name template for produced debris.

◆ SetExplosionS_Factor()

void WsfNASA_BreakupModel::SetExplosionS_Factor ( double aS_Factor)
inline

Set the S factor for an explosive breakup.

◆ SetLargeFragmentMassFraction()

void WsfNASA_BreakupModel::SetLargeFragmentMassFraction ( double aLargeFragmentFraction)
inline

Set the large fragment mass fraction.

◆ SetMinFragmentSize()

void WsfNASA_BreakupModel::SetMinFragmentSize ( double aMinSize)
inline

Set the minimum size of a fragment produced by the model.

◆ SetModeledAsSpacecraft()

void WsfNASA_BreakupModel::SetModeledAsSpacecraft ( bool aModelAsSpacecraft)
inline

Set if the objects will be modeled as a spacecraft.

This model will treat progenitor objects as either a spacecraft or a rocket body. The produced A/M values will depend on this choice.

Parameters
aModelAsSpacecraft- set to true if the progenitors should be treated as spacecraft.

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved