    

 ## On this page

  

 

 # Release notes for 2024 R1

 Last update: 17.07.2025 

## 2D Vector APIs

This change applies to C++, C, Fortran, and Python APIs.

### C++

`sysc::OutputVectorData` and `sysc::InputVectorData` supports constructing both compact and split 2D vector data.

For example, the following new constructor function can used to create compact 2D vector data by passing sysc::Dimension::D2 to the dimension parameter.

sysc::OutputVectorData (const double* data, std::size_t size, Dimension dimension);

sysc::InputVectorData (double* data, std::size_t size, Dimension dimension);



The following new constructor function has been added to create split 2D vector data, accepting two data pointers or arrays.

sysc::OutputVectorData (const double* data1, const double* data2);

sysc::InputVectorData (double* data1, double* data2);



Note for `sysc::OutputComplexVector` and `sysc::InputComplexVectorData`, only 2D compact complex and compact vector formats are supported for now, and the new constructor below has been added to create 2D complex vector data by passing sysc::Dimension::D2 to the dimension parameter.

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

InputComplexVectorData(double* dataComplex, std::size_t size, Dimension dimension);



### C

For C, helper functions have been added for creating 2D vector data.

For compact 2D vector data (pass SyscD2 to dimension):

SyscOutputVectorData syscGetOutputVectorDataCompactDoubleDim(

 const double *const data,

 size\_t dataSize,

 enum SyscDimension dimension);



For split 2D vector data:

SyscOutputVectorData syscGetOutput2DVectorDataSplitDouble(

 const double *const data0,

 const double *const data1,

 size\_t dataSize);



For 2D compact complex and compact vector data (pass SyscD2 to dimension):

SyscInputComplexVectorData syscGetInputCompactComplexCompactVectorDataDoubleDim(

 double *const data,

 size\_t dataSize,

 enum SyscDimension dimension);



### Fortran

For fortran, helper functions have been added for creating 2D vector data.

For compact 2D vector data (pass SyscD2 to dimension):

function syscgetoutputvectordatacompactdimf(&amp;

 data, dataSize, dimension) result (ret)



For split 2D vector data:

function syscgetoutput2dvectordatasplitf(&amp;

 data0, data1, dataSize) result (ret)



For 2D compact complex and compact vector data (pass SyscD2 to dimension):

function syscgetoutputcompactcomplexcompactvectordatadimf(&amp;

 data, dataSize, dimension) result (ret)



### Python

For python, new constructors have been added for creating 2D vector data.

For compact 2D vector data:

py2DVector=sysc.OutputVectorData(data0=data,dimension=sysc.Dimension_D2)



For split 2D vector data:

py2DVector=sysc.OutputVectorData(data0=data0, data1=data1)



For 2D compact complex and compact vector data:

py2DComplexVector=sysc.OutputComplexVectorData(data1=complexData,dimension=sysc.Dimension_D2)



## New APIs for create system coupling SetupInfo

### C++

The following new constructor has been added for creating sysc::SetupInfo with specifying participant dimension:

SetupInfo(

 enum AnalysisType analysisType,

 bool restartsSupported,

 enum Dimension dimension);



### C

A help function has been added for creating SyscSetupInfo with specifying participant dimension:

SyscSetupInfo syscGetSetupInfoARD(

 enum SyscAnalysisType analysisType,

 int restartsSupported,

 enum SyscDimension dimension);



### Fortran

A help function has been added for creating SyscSetupInfo with specifying participant dimension:

function syscgetsetupinfof_ard(analysisType, &amp;

 restartsSupported, dimension) result(ret)



### Python

A new constructor has been added for sysc.SetupInfo with specifying participant dimension:

pySetupInfo=sysc.SetupInfo(sysc.Steady,False,sysc.Dimension_D2)