Skip to main content

System Coupling C++ library 2024 R2

sysc::OutputComplexVectorData Class Reference

Last update: 17.07.2025

Provide a class for output complex vector data. More...

#include <OutputComplexVectorData.hpp>

Public Member Functions

 OutputComplexVectorData (const std::vector< std::complex< double > > &dataComplex)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::vector< std::complex< double > > &dataComplex, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const double *dataComplex, std::size_t size)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const double *dataComplex, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::complex< double > *dataComplex, std::size_t size)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::complex< double > *dataComplex, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::vector< double > &dataReal, const std::vector< double > &dataImaginary)
 Create an output complex vector data access object with compact storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const double *dataReal, const double *dataImaginary, std::size_t size)
 Create an output complex vector data access object with compact storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const std::vector< std::complex< double > > &dataComplex1, const std::vector< std::complex< double > > &dataComplex2, const std::vector< std::complex< double > > &dataComplex3)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const std::complex< double > *dataComplex1, const std::complex< double > *dataComplex2, const std::complex< double > *dataComplex3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const double *dataComplex1, const double *dataComplex2, const double *dataComplex3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const std::vector< double > &dataReal1, const std::vector< double > &dataImaginary1, const std::vector< double > &dataReal2, const std::vector< double > &dataImaginary2, const std::vector< double > &dataReal3, const std::vector< double > &dataImaginary3)
 Create an output complex vector data access object with split storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const double *dataReal1, const double *dataImaginary1, const double *dataReal2, const double *dataImaginary2, const double *dataReal3, const double *dataImaginary3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const std::vector< std::complex< float > > &dataComplex)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::vector< std::complex< float > > &dataComplex, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const float *dataComplex, std::size_t size)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const float *dataComplex, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::complex< float > *dataComplex, std::size_t size)
 Provide a constructor for output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::complex< float > *dataComplex, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.
 
 OutputComplexVectorData (const std::vector< float > &dataReal, const std::vector< float > &dataImaginary)
 Create an output complex vector data access object with compact storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const float *dataReal, const float *dataImaginary, std::size_t size)
 Create an output complex vector data access object with compact storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const std::vector< std::complex< float > > &dataComplex1, const std::vector< std::complex< float > > &dataComplex2, const std::vector< std::complex< float > > &dataComplex3)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const std::complex< float > *dataComplex1, const std::complex< float > *dataComplex2, const std::complex< float > *dataComplex3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const float *dataComplex1, const float *dataComplex2, const float *dataComplex3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and compact storage for complex components.
 
 OutputComplexVectorData (const std::vector< float > &dataReal1, const std::vector< float > &dataImaginary1, const std::vector< float > &dataReal2, const std::vector< float > &dataImaginary2, const std::vector< float > &dataReal3, const std::vector< float > &dataImaginary3)
 Create an output complex vector data access object with split storage for vector components and split storage for complex components.
 
 OutputComplexVectorData (const float *dataReal1, const float *dataImaginary1, const float *dataReal2, const float *dataImaginary2, const float *dataReal3, const float *dataImaginary3, std::size_t size)
 Create an output complex vector data access object with split storage for vector components and split storage for complex components.
 
 OutputComplexVectorData ()=default
 Provide a default constructor.
 
 OutputComplexVectorData (const OutputComplexVectorData &)=default
 Provide a copy-constructor.
 
 OutputComplexVectorData (OutputComplexVectorData &&)=default
 Provide a move-constructor.
 
OutputComplexVectorDataoperator= (const OutputComplexVectorData &)=default
 Provide a copy-assign operator.
 
OutputComplexVectorDataoperator= (OutputComplexVectorData &&)=default
 Provide a move-assign operator.
 
std::size_t size () const noexcept
 Get the size of data.
 
bool empty () const noexcept
 Check if array "data" is empty.
 
sysc::PrimitiveType getDataType () const noexcept
 Get the primitive type of data.
 
bool isSplitVector () const noexcept
 Query whether it's a split or compact vector layout.
 
bool isSplitComplex () const noexcept
 Query whether it's a split or compact vector layout.
 
const void * getData1 () const noexcept
 Get pointer to data1.
 
const void * getData2 () const noexcept
 Get pointer to data2.
 
const void * getData3 () const noexcept
 Get pointer to data3.
 
const void * getData4 () const noexcept
 Get pointer to data4.
 
const void * getData5 () const noexcept
 Get pointer to data5.
 
const void * getData6 () const noexcept
 Get pointer to data6.
 
Dimension getDimension () const noexcept
 Get the Dimension object.
 

Detailed Description

Provide a class for output complex vector data.

Output vector data provides read-only access to an array of complex vector data.

The size is the total number of complex vectors, not the total number of components, i.e. if all data is stored in one contiguous array, then size is 1/6 the size of that array.

Definition at line 29 of file OutputComplexVectorData.hpp.

Constructor & Destructor Documentation

◆ OutputComplexVectorData() [1/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< double > > &  dataComplex)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- reference to the STL vector of complex double-precision data.

◆ OutputComplexVectorData() [2/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< double > > &  dataComplex,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- reference to the STL vector of complex double-precision data.
dimension- dimension of complex vector data.

◆ OutputComplexVectorData() [3/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const double *  dataComplex,
std::size_t  size 
)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex double-precision vectors.
size- number of vectors.

◆ OutputComplexVectorData() [4/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const double *  dataComplex,
std::size_t  size,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex double-precision vectors.
size- number of vectors.
dimension- dimension of complex vector data.

◆ OutputComplexVectorData() [5/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< double > *  dataComplex,
std::size_t  size 
)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex double-precision vectors.
size- number of vectors.

◆ OutputComplexVectorData() [6/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< double > *  dataComplex,
std::size_t  size,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex double-precision vectors.
size- number of vectors.
dimension- dimension of complex vector data.

◆ OutputComplexVectorData() [7/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< double > &  dataReal,
const std::vector< double > &  dataImaginary 
)

Create an output complex vector data access object with compact storage for vector components and split storage for complex components.

Parameters
dataReal- reference to the STL vector of double-precision data, that stores the real components of the complex vectors in compact storage format.
dataImaginary- reference to the STL vector of double-precision data, that stores the imaginary components of the complex vectors in compact storage format.

◆ OutputComplexVectorData() [8/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const double *  dataReal,
const double *  dataImaginary,
std::size_t  size 
)

Create an output complex vector data access object with compact storage for vector components and split storage for complex components.

Parameters
dataReal- pointer to an array of double-precision data, that stores the real components of the complex vectors in compact storage format.
dataImaginary- pointer to an array of double-precision data, that stores the imaginary components of the complex vectors in compact storage format.
size- number of vectors.

◆ OutputComplexVectorData() [9/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< double > > &  dataComplex1,
const std::vector< std::complex< double > > &  dataComplex2,
const std::vector< std::complex< double > > &  dataComplex3 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- reference to the STL vector of complex double-precision data that stores the first components of the vectors of complex numbers.
dataComplex2- reference to the STL vector of complex double-precision data that stores the second components of the vectors of complex numbers.
dataComplex3- reference to the STL vector of complex double-precision data that stores the third components of the vectors of complex numbers.

◆ OutputComplexVectorData() [10/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< double > *  dataComplex1,
const std::complex< double > *  dataComplex2,
const std::complex< double > *  dataComplex3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- pointer to an array of double-precision complex data that stores the first components of the vectors of complex numbers.
dataComplex2- pointer to an array of double-precision complex data that stores the second components of the vectors of complex numbers.
dataComplex3- pointer to an array of double-precision complex data that stores the third components of the vectors of complex numbers.
size- number of vectors.

◆ OutputComplexVectorData() [11/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const double *  dataComplex1,
const double *  dataComplex2,
const double *  dataComplex3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- pointer to an array of double-precision data that stores the first components of the vectors of complex numbers.
dataComplex2- pointer to an array of double-precision data that stores the second components of the vectors of complex numbers.
dataComplex3- pointer to an array of double-precision data that stores the third components of the vectors of complex numbers.
size- number of vectors.

◆ OutputComplexVectorData() [12/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< double > &  dataReal1,
const std::vector< double > &  dataImaginary1,
const std::vector< double > &  dataReal2,
const std::vector< double > &  dataImaginary2,
const std::vector< double > &  dataReal3,
const std::vector< double > &  dataImaginary3 
)

Create an output complex vector data access object with split storage for vector components and split storage for complex components.

Parameters
dataReal1- reference to the STL vector of double-precision data that stores the first real components of the vectors of complex numbers.
dataImaginary1- reference to the STL vector of double-precision data that stores the first imaginary components of the vectors of complex numbers.
dataReal2- reference to the STL vector of double-precision data that stores the second real components of the vectors of complex numbers.
dataImaginary2- reference to the STL vector of double-precision data that stores the second imaginary components of the vectors of complex numbers.
dataReal3- reference to the STL vector of double-precision data that stores the third real components of the vectors of complex numbers.
dataImaginary3- reference to the STL vector of double-precision data that stores the third imaginary components of the vectors of complex numbers.

◆ OutputComplexVectorData() [13/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const double *  dataReal1,
const double *  dataImaginary1,
const double *  dataReal2,
const double *  dataImaginary2,
const double *  dataReal3,
const double *  dataImaginary3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and split storage for complex components.

Parameters
dataReal1- pointer to an array of double-precision data that stores the first real components of the vectors of complex numbers.
dataImaginary1- pointer to an array of double-precision data that stores the first imaginary components of the vectors of complex numbers.
dataReal2- pointer to an array of double-precision data that stores the second real components of the vectors of complex numbers.
dataImaginary2- pointer to an array of double-precision data that stores the second imaginary components of the vectors of complex numbers.
dataReal3- pointer to an array of double-precision data that stores the third real components of the vectors of complex numbers.
dataImaginary3- pointer to an array of double-precision data that stores the third imaginary components of the vectors of complex numbers.
size- number of vectors.

◆ OutputComplexVectorData() [14/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< float > > &  dataComplex)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- reference to the STL vector of complex double-precision data.

◆ OutputComplexVectorData() [15/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< float > > &  dataComplex,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- reference to the STL vector of complex double-precision data.
dimensiondimension of complex vector data.

◆ OutputComplexVectorData() [16/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const float *  dataComplex,
std::size_t  size 
)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex single-precision vectors.
size- number of vectors.

◆ OutputComplexVectorData() [17/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const float *  dataComplex,
std::size_t  size,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex single-precision vectors.
size- number of vectors.
dimensiondimension of complex vector data.

◆ OutputComplexVectorData() [18/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< float > *  dataComplex,
std::size_t  size 
)

Provide a constructor for output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex single-precision vectors.
size- number of vectors.

◆ OutputComplexVectorData() [19/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< float > *  dataComplex,
std::size_t  size,
Dimension  dimension 
)

Provide a constructor for 2D output complex vector data with compact storage for both vector components and complex components.

Parameters
dataComplex- pointer to an array of complex single-precision vectors.
size- number of vectors.
dimensiondimension of complex vector data.

◆ OutputComplexVectorData() [20/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< float > &  dataReal,
const std::vector< float > &  dataImaginary 
)

Create an output complex vector data access object with compact storage for vector components and split storage for complex components.

Parameters
dataReal- reference to the STL vector of single-precision data, that stores the real components of the complex vectors in compact storage format.
dataImaginary- reference to the STL vector of single-precision data, that stores the imaginary components of the complex vectors in compact storage format.

◆ OutputComplexVectorData() [21/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const float *  dataReal,
const float *  dataImaginary,
std::size_t  size 
)

Create an output complex vector data access object with compact storage for vector components and split storage for complex components.

Parameters
dataReal- pointer to an array of single-precision data, that stores the real components of the complex vectors in compact storage format.
dataImaginary- pointer to an array of single-precision data, that stores the imaginary components of the complex vectors in compact storage format.
size- number of vectors.

◆ OutputComplexVectorData() [22/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< std::complex< float > > &  dataComplex1,
const std::vector< std::complex< float > > &  dataComplex2,
const std::vector< std::complex< float > > &  dataComplex3 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- reference to the STL vector of complex single-precision data that stores the first components of the vectors of complex numbers.
dataComplex2- reference to the STL vector of complex single-precision data that stores the second components of the vectors of complex numbers.
dataComplex3- reference to the STL vector of complex single-precision data that stores the third components of the vectors of complex numbers.

◆ OutputComplexVectorData() [23/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::complex< float > *  dataComplex1,
const std::complex< float > *  dataComplex2,
const std::complex< float > *  dataComplex3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- pointer to an array of single-precision complex data that stores the first components of the vectors of complex numbers.
dataComplex2- pointer to an array of single-precision complex data that stores the second components of the vectors of complex numbers.
dataComplex3- pointer to an array of single-precision complex data that stores the third components of the vectors of complex numbers.
size- number of vectors.

◆ OutputComplexVectorData() [24/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const float *  dataComplex1,
const float *  dataComplex2,
const float *  dataComplex3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and compact storage for complex components.

Parameters
dataComplex1- pointer to an array of single-precision data that stores the first components of the vectors of complex numbers.
dataComplex2- pointer to an array of single-precision data that stores the second components of the vectors of complex numbers.
dataComplex3- pointer to an array of single-precision data that stores the third components of the vectors of complex numbers.
size- number of vectors.

◆ OutputComplexVectorData() [25/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const std::vector< float > &  dataReal1,
const std::vector< float > &  dataImaginary1,
const std::vector< float > &  dataReal2,
const std::vector< float > &  dataImaginary2,
const std::vector< float > &  dataReal3,
const std::vector< float > &  dataImaginary3 
)

Create an output complex vector data access object with split storage for vector components and split storage for complex components.

Parameters
dataReal1- reference to the STL vector of single-precision data that stores the first real components of the vectors of complex numbers.
dataImaginary1- reference to the STL vector of single-precision data that stores the first imaginary components of the vectors of complex numbers.
dataReal2- reference to the STL vector of single-precision data that stores the second real components of the vectors of complex numbers.
dataImaginary2- reference to the STL vector of single-precision data that stores the second imaginary components of the vectors of complex numbers.
dataReal3- reference to the STL vector of single-precision data that stores the third real components of the vectors of complex numbers.
dataImaginary3- reference to the STL vector of single-precision data that stores the third imaginary components of the vectors of complex numbers.

◆ OutputComplexVectorData() [26/26]

sysc::OutputComplexVectorData::OutputComplexVectorData ( const float *  dataReal1,
const float *  dataImaginary1,
const float *  dataReal2,
const float *  dataImaginary2,
const float *  dataReal3,
const float *  dataImaginary3,
std::size_t  size 
)

Create an output complex vector data access object with split storage for vector components and split storage for complex components.

Parameters
dataReal1- pointer to an array of single-precision data that stores the first real components of the vectors of complex numbers.
dataImaginary1- pointer to an array of single-precision data that stores the first imaginary components of the vectors of complex numbers.
dataReal2- pointer to an array of single-precision data that stores the second real components of the vectors of complex numbers.
dataImaginary2- pointer to an array of single-precision data that stores the second imaginary components of the vectors of complex numbers.
dataReal3- pointer to an array of single-precision data that stores the third real components of the vectors of complex numbers.
dataImaginary3- pointer to an array of single-precision data that stores the third imaginary components of the vectors of complex numbers.
size- number of vectors.

Member Function Documentation

◆ getData1()

const void * sysc::OutputComplexVectorData::getData1 ( ) const
noexcept

Get pointer to data1.

For internal use only (no back-compatibility guarantee).

◆ getData2()

const void * sysc::OutputComplexVectorData::getData2 ( ) const
noexcept

Get pointer to data2.

For internal use only (no back-compatibility guarantee).

◆ getData3()

const void * sysc::OutputComplexVectorData::getData3 ( ) const
noexcept

Get pointer to data3.

For internal use only (no back-compatibility guarantee).

◆ getData4()

const void * sysc::OutputComplexVectorData::getData4 ( ) const
noexcept

Get pointer to data4.

For internal use only (no back-compatibility guarantee).

◆ getData5()

const void * sysc::OutputComplexVectorData::getData5 ( ) const
noexcept

Get pointer to data5.

For internal use only (no back-compatibility guarantee).

◆ getData6()

const void * sysc::OutputComplexVectorData::getData6 ( ) const
noexcept

Get pointer to data6.

For internal use only (no back-compatibility guarantee).

◆ getDataType()

sysc::PrimitiveType sysc::OutputComplexVectorData::getDataType ( ) const
noexcept

Get the primitive type of data.

For internal use only (no back-compatibility guarantee).

◆ getDimension()

Dimension sysc::OutputComplexVectorData::getDimension ( ) const
noexcept

Get the Dimension object.

Returns
Dimension

References sysc::Double.

◆ isSplitComplex()

bool sysc::OutputComplexVectorData::isSplitComplex ( ) const
noexcept

Query whether it's a split or compact vector layout.

For internal use only (no back-compatibility guarantee).

◆ isSplitVector()

bool sysc::OutputComplexVectorData::isSplitVector ( ) const
noexcept

Query whether it's a split or compact vector layout.

For internal use only (no back-compatibility guarantee).

Connect with Ansys