    

 ## On this page

  

 

 # syscCommonTypesF

 Last update: 17.07.2025 

<a id="l00001" name="l00001"></a> 1module fortran

<a id="l00002" name="l00002"></a> 2!

<a id="l00003" name="l00003"></a> 3! Copyright ANSYS, Inc. 

<a id="l00004" name="l00004"></a> 4! Unauthorized use, distribution, or duplication is prohibited.

<a id="l00005" name="l00005"></a> 5!

<a id="l00006" name="l00006"></a> 6! Provide free-form Fortran interface for

<a id="l00007" name="l00007"></a> 7! System Coupling Participant Library.

<a id="l00008" name="l00008"></a> 8!

<a id="l00009" name="l00009"></a> 9! This interfaces file provides commonly-used types and parameters.

<a id="l00010" name="l00010"></a> 10!

<a id="l00011" name="l00011"></a> 11! \*\*\*\*\*\* Parameter for string legth \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00012" name="l00012"></a> 12!

<a id="l00013" name="l00013"></a> 13integer(kind=4), parameter :: SyscStrLen = 256

<a id="l00014" name="l00014"></a> 14integer(kind=4), parameter :: SyscFilePathLen = 4096

<a id="l00015" name="l00015"></a> 15!

<a id="l00016" name="l00016"></a> 16! \*\*\*\*\*\* Parameters for variable mesh locations \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00017" name="l00017"></a> 17!

<a id="l00018" name="l00018"></a> 18integer(kind=4), parameter :: SyscNode = 0

<a id="l00019" name="l00019"></a> 19integer(kind=4), parameter :: SyscElement = 1

<a id="l00020" name="l00020"></a> 20!

<a id="l00021" name="l00021"></a> 21! \*\*\*\*\*\* Parameters for variable tensor types \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00022" name="l00022"></a> 22!

<a id="l00023" name="l00023"></a> 23integer(kind=4), parameter :: SyscScalar = 0

<a id="l00024" name="l00024"></a> 24integer(kind=4), parameter :: SyscVector = 1

<a id="l00025" name="l00025"></a> 25!

<a id="l00026" name="l00026"></a> 26! \*\*\*\*\*\* Parameters for region topologies \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00027" name="l00027"></a> 27!

<a id="l00028" name="l00028"></a> 28integer(kind=4), parameter :: SyscSurface = 2

<a id="l00029" name="l00029"></a> 29integer(kind=4), parameter :: SyscVolume = 3

<a id="l00030" name="l00030"></a> 30!

<a id="l00031" name="l00031"></a> 31! \*\*\*\*\*\* Parameters for region discretization types \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00032" name="l00032"></a> 32!

<a id="l00033" name="l00033"></a> 33integer(kind=4), parameter :: SyscMeshRegion = 0

<a id="l00034" name="l00034"></a> 34integer(kind=4), parameter :: SyscPointCloudRegion = 1

<a id="l00035" name="l00035"></a> 35!

<a id="l00036" name="l00036"></a> 36! \*\*\*\*\*\*\*\*\*\*\* Parameters for interface side \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00037" name="l00037"></a> 37!

<a id="l00038" name="l00038"></a> 38integer(kind=4), parameter :: SyscInterfaceSide_One = 1

<a id="l00039" name="l00039"></a> 39integer(kind=4), parameter :: SyscInterfaceSide_Two = 2

<a id="l00040" name="l00040"></a> 40!

<a id="l00041" name="l00041"></a> 41! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* Dimensionality \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00042" name="l00042"></a> 42!! \\brief Provide a structure for dimensionality

<a id="l00043" name="l00043"></a>[ 43](structfortran_1_1syscdimensionalityf.xhtml)type :: [syscdimensionalityf](structfortran_1_1syscdimensionalityf.xhtml)

<a id="l00044" name="l00044"></a> 44 real(kind=8) :: length

<a id="l00045" name="l00045"></a> 45 real(kind=8) :: time

<a id="l00046" name="l00046"></a> 46 real(kind=8) :: mass

<a id="l00047" name="l00047"></a> 47 real(kind=8) :: temperature

<a id="l00048" name="l00048"></a> 48 real(kind=8) :: amountofsubstance

<a id="l00049" name="l00049"></a> 49 real(kind=8) :: current

<a id="l00050" name="l00050"></a> 50 real(kind=8) :: luminousintensity

<a id="l00051" name="l00051"></a> 51 real(kind=8) :: angle

<a id="l00052" name="l00052"></a> 52end type [syscdimensionalityf](structfortran_1_1syscdimensionalityf.xhtml)



<a id="l00053" name="l00053"></a> 53!

<a id="l00054" name="l00054"></a> 54!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00056" name="l00056"></a> 56!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00057" name="l00057"></a> 57!

<a id="l00058" name="l00058"></a>[ 58](interfacefortran_1_1syscgetdimensionalityf.xhtml)interface [syscgetdimensionalityf](interfacefortran_1_1syscgetdimensionalityf.xhtml)

<a id="l00059" name="l00059"></a> 59!

<a id="l00060" name="l00060"></a> 60!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00064" name="l00064"></a> 64!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00065" name="l00065"></a>[ 65](interfacefortran_1_1syscgetdimensionalityf.xhtml#aa3941d7e6725d55891d181a71c40fd44)function [syscgetdimensionalityf](interfacefortran_1_1syscgetdimensionalityf.xhtml)() result(ret)

<a id="l00066" name="l00066"></a> 66!

<a id="l00067" name="l00067"></a> 67 import :: [syscdimensionalityf](structfortran_1_1syscdimensionalityf.xhtml)

<a id="l00068" name="l00068"></a> 68 type([syscdimensionalityf](structfortran_1_1syscdimensionalityf.xhtml)) :: ret

<a id="l00069" name="l00069"></a> 69!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00070" name="l00070"></a> 70!DIR$ ATTRIBUTES DLLIMPORT :: syscGetDimensionalityF

<a id="l00071" name="l00071"></a> 71!DIR$ ENDIF



<a id="l00072" name="l00072"></a> 72end function [syscgetdimensionalityf](interfacefortran_1_1syscgetdimensionalityf.xhtml)

<a id="l00073" name="l00073"></a> 73!



<a id="l00074" name="l00074"></a> 74end interface [syscgetdimensionalityf](interfacefortran_1_1syscgetdimensionalityf.xhtml)

<a id="l00075" name="l00075"></a> 75!

<a id="l00076" name="l00076"></a> 76! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00077" name="l00077"></a> 77! \\brief Provide parameters for supported quantity types.

<a id="l00078" name="l00078"></a> 78!

<a id="l00079" name="l00079"></a> 79! Quantity type provides information about the physical meaning of

<a id="l00080" name="l00080"></a> 80! the variable. This can be useful for detecting validation errors

<a id="l00081" name="l00081"></a> 81! during the coupled analysis setup. If the variable does not match

<a id="l00082" name="l00082"></a> 82! any of the provided quantity types, quantity type can be set to

<a id="l00083" name="l00083"></a> 83! unspecified.

<a id="l00084" name="l00084"></a> 84!

<a id="l00085" name="l00085"></a> 85integer(kind=4), parameter :: syscunspecified = 0

<a id="l00086" name="l00086"></a> 86integer(kind=4), parameter :: syscforce = 1

<a id="l00087" name="l00087"></a> 87integer(kind=4), parameter :: syscincrementaldisplacement = 2

<a id="l00088" name="l00088"></a> 88integer(kind=4), parameter :: sysctemperature = 3

<a id="l00089" name="l00089"></a> 89integer(kind=4), parameter :: syscheatrate = 4

<a id="l00090" name="l00090"></a> 90integer(kind=4), parameter :: syscheattransfercoefficient = 5

<a id="l00091" name="l00091"></a> 91integer(kind=4), parameter :: syscconvectionreferencetemperature = 6

<a id="l00092" name="l00092"></a> 92integer(kind=4), parameter :: syscmodeshape = 7

<a id="l00093" name="l00093"></a> 93integer(kind=4), parameter :: syscelectricalconductivity = 8

<a id="l00094" name="l00094"></a> 94!

<a id="l00095" name="l00095"></a> 95! \*\*\*\*\*\* Parameters for data type \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00096" name="l00096"></a> 96!

<a id="l00097" name="l00097"></a> 97integer(kind=4), parameter :: syscdatatype_real = 0

<a id="l00098" name="l00098"></a> 98integer(kind=4), parameter :: syscdatatype_complex = 1

<a id="l00099" name="l00099"></a> 99!

<a id="l00100" name="l00100"></a> 100! \*\*\*\*\*\* Parameters for participant solver's convergence status \*\*\*\*\*\*\*

<a id="l00101" name="l00101"></a> 101!

<a id="l00102" name="l00102"></a> 102integer(kind=4), parameter :: syscdiverging = -1

<a id="l00103" name="l00103"></a> 103integer(kind=4), parameter :: syscnotyetconverged = 0

<a id="l00104" name="l00104"></a> 104integer(kind=4), parameter :: syscconverged = 1

<a id="l00105" name="l00105"></a> 105integer(kind=4), parameter :: sysccomplete = 2

<a id="l00106" name="l00106"></a> 106integer(kind=4), parameter :: syscnotevaluated = 3

<a id="l00107" name="l00107"></a> 107!

<a id="l00108" name="l00108"></a> 108! \*\*\*\*\*\* Parameters for analysis types \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00109" name="l00109"></a> 109!

<a id="l00110" name="l00110"></a> 110integer(kind=4), parameter :: syscsteady = 0

<a id="l00111" name="l00111"></a> 111integer(kind=4), parameter :: sysctransient = 1

<a id="l00112" name="l00112"></a> 112!

<a id="l00113" name="l00113"></a> 113! \*\*\*\*\*\* Parameters for dimension \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00114" name="l00114"></a> 114!

<a id="l00115" name="l00115"></a> 115integer(kind=8), parameter :: syscd2 = 2

<a id="l00116" name="l00116"></a> 116integer(kind=8), parameter :: syscd3 = 3

<a id="l00117" name="l00117"></a> 117!

<a id="l00118" name="l00118"></a> 118! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00119" name="l00119"></a> 119!

<a id="l00121" name="l00121"></a>[ 121](structfortran_1_1sysctimestepf.xhtml)type :: [sysctimestepf](structfortran_1_1sysctimestepf.xhtml)

<a id="l00122" name="l00122"></a>[ 122](structfortran_1_1sysctimestepf.xhtml#a6e5ddd537aaf8d69b811abda71510ca7) integer(kind=8) :: timestepnumber

<a id="l00123" name="l00123"></a>[ 123](structfortran_1_1sysctimestepf.xhtml#aadc3370b9e2337739a8831790220ea37) real(kind=8) :: starttime 

<a id="l00124" name="l00124"></a>[ 124](structfortran_1_1sysctimestepf.xhtml#a19b7d81773f470750c5427fd5153bdf2) real(kind=8) :: timestepsize 

<a id="l00125" name="l00125"></a> 125end type [sysctimestepf](structfortran_1_1sysctimestepf.xhtml)



<a id="l00126" name="l00126"></a> 126!

<a id="l00127" name="l00127"></a> 127! \*\*\*\*\*\* Parameters for return codes \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00128" name="l00128"></a> 128!

<a id="l00129" name="l00129"></a> 129integer(kind=4), parameter :: syscstatusok = 0

<a id="l00130" name="l00130"></a> 130integer(kind=4), parameter :: syscstatuserror = 1

<a id="l00131" name="l00131"></a> 131!

<a id="l00133" name="l00133"></a>[ 133](structfortran_1_1syscerrorf.xhtml)type :: [syscerrorf](structfortran_1_1syscerrorf.xhtml)

<a id="l00135" name="l00135"></a>[ 135](structfortran_1_1syscerrorf.xhtml#a79a9fe07cdde873d9bf5a786ee076cba) integer(kind=4) :: retcode

<a id="l00137" name="l00137"></a>[ 137](structfortran_1_1syscerrorf.xhtml#a03ea72a9d280946f9411ff9c261f7fa6) character(len=SyscStrLen) :: message

<a id="l00138" name="l00138"></a> 138end type [syscerrorf](structfortran_1_1syscerrorf.xhtml)



<a id="l00139" name="l00139"></a> 139!

<a id="l00140" name="l00140"></a> 140! \*\*\*\*\*\* Provide parameters for supported primitive types \*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00141" name="l00141"></a> 141!

<a id="l00142" name="l00142"></a> 142integer(kind=4), parameter :: syscreal4 = 0

<a id="l00143" name="l00143"></a> 143integer(kind=4), parameter :: syscreal8 = 1

<a id="l00144" name="l00144"></a> 144integer(kind=4), parameter :: syscint4 = 2

<a id="l00145" name="l00145"></a> 145integer(kind=4), parameter :: syscint8 = 3

<a id="l00146" name="l00146"></a> 146!

<a id="l00147" name="l00147"></a> 147! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00159" name="l00159"></a> 159! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00160" name="l00160"></a>[ 160](structfortran_1_1syscsetupinfof.xhtml)type :: [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

<a id="l00161" name="l00161"></a>[ 161](structfortran_1_1syscsetupinfof.xhtml#aeab455ed168e2f3e178793e8f6c69c50) integer(kind=8) :: analysistype

<a id="l00162" name="l00162"></a>[ 162](structfortran_1_1syscsetupinfof.xhtml#a4a6aff883f05c2ab2f3fedc949218ed0) logical(kind=8) :: restartssupported

<a id="l00163" name="l00163"></a>[ 163](structfortran_1_1syscsetupinfof.xhtml#a86ac613c1baf4a60d347742b387bb8e4) integer(kind=8) :: dimension

<a id="l00164" name="l00164"></a> 164end type [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)



<a id="l00165" name="l00165"></a> 165!

<a id="l00166" name="l00166"></a> 166!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00168" name="l00168"></a> 168!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00169" name="l00169"></a> 169!

<a id="l00170" name="l00170"></a>[ 170](interfacefortran_1_1syscgetsetupinfof.xhtml)interface [syscgetsetupinfof](interfacefortran_1_1syscgetsetupinfof.xhtml)

<a id="l00171" name="l00171"></a> 171!

<a id="l00172" name="l00172"></a> 172!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00179" name="l00179"></a> 179!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00180" name="l00180"></a>[ 180](interfacefortran_1_1syscgetsetupinfof.xhtml#a73374df2183a799e03180e006525fcfe)function [syscgetsetupinfof](interfacefortran_1_1syscgetsetupinfof.xhtml)() result(ret)

<a id="l00181" name="l00181"></a> 181!

<a id="l00182" name="l00182"></a> 182 import :: [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

<a id="l00183" name="l00183"></a> 183 type([syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)) :: ret

<a id="l00184" name="l00184"></a> 184!

<a id="l00185" name="l00185"></a> 185!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00186" name="l00186"></a> 186!DIR$ ATTRIBUTES DLLIMPORT :: syscGetSetupInfoF

<a id="l00187" name="l00187"></a> 187!DIR$ ENDIF

<a id="l00188" name="l00188"></a> 188!



<a id="l00189" name="l00189"></a> 189end function [syscgetsetupinfof](interfacefortran_1_1syscgetsetupinfof.xhtml)

<a id="l00190" name="l00190"></a> 190!

<a id="l00191" name="l00191"></a> 191!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00199" name="l00199"></a> 199!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00200" name="l00200"></a>[ 200](interfacefortran_1_1syscgetsetupinfof.xhtml#a58bcb1256d3ecb3eb57483e07be85646)function syscgetsetupinfof_a(analysisType) result(ret)

<a id="l00201" name="l00201"></a> 201!

<a id="l00202" name="l00202"></a> 202 import :: [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

<a id="l00203" name="l00203"></a> 203 integer(kind=4), intent(in) :: analysistype

<a id="l00204" name="l00204"></a> 204 type([syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)) :: ret

<a id="l00205" name="l00205"></a> 205!

<a id="l00206" name="l00206"></a> 206!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00207" name="l00207"></a> 207!DIR$ ATTRIBUTES DLLIMPORT :: syscGetSetupInfoF\_A

<a id="l00208" name="l00208"></a> 208!DIR$ ENDIF

<a id="l00209" name="l00209"></a> 209!



<a id="l00210" name="l00210"></a> 210end function syscgetsetupinfof_a

<a id="l00211" name="l00211"></a> 211!

<a id="l00212" name="l00212"></a> 212!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00219" name="l00219"></a> 219!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00220" name="l00220"></a>[ 220](interfacefortran_1_1syscgetsetupinfof.xhtml#a6fa355e1a61155b4f9199dfbf10d9ccf)function syscgetsetupinfof_ar(analysisType, &amp;

<a id="l00221" name="l00221"></a> 221 restartsSupported) result(ret)

<a id="l00222" name="l00222"></a> 222!

<a id="l00223" name="l00223"></a> 223 import :: [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

<a id="l00224" name="l00224"></a> 224 integer(kind=4), intent(in) :: analysistype

<a id="l00225" name="l00225"></a> 225 logical, intent(in) :: restartssupported

<a id="l00226" name="l00226"></a> 226 type([syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)) :: ret

<a id="l00227" name="l00227"></a> 227!

<a id="l00228" name="l00228"></a> 228!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00229" name="l00229"></a> 229!DIR$ ATTRIBUTES DLLIMPORT :: syscGetSetupInfoF\_AR

<a id="l00230" name="l00230"></a> 230!DIR$ ENDIF

<a id="l00231" name="l00231"></a> 231!



<a id="l00232" name="l00232"></a> 232 end function syscgetsetupinfof_ar

<a id="l00233" name="l00233"></a> 233!

<a id="l00234" name="l00234"></a> 234!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00242" name="l00242"></a> 242!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00243" name="l00243"></a>[ 243](interfacefortran_1_1syscgetsetupinfof.xhtml#a3e01c7e9d24d8ed1d10c771cde749a53)function syscgetsetupinfof_ard(analysisType, &amp;

<a id="l00244" name="l00244"></a> 244 restartsSupported, dimension) result(ret)

<a id="l00245" name="l00245"></a> 245!

<a id="l00246" name="l00246"></a> 246 import :: [syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

<a id="l00247" name="l00247"></a> 247 integer(kind=4), intent(in) :: analysistype

<a id="l00248" name="l00248"></a> 248 logical, intent(in) :: restartssupported

<a id="l00249" name="l00249"></a> 249 integer(kind=8), intent(in) :: dimension 

<a id="l00250" name="l00250"></a> 250 type([syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)) :: ret

<a id="l00251" name="l00251"></a> 251!

<a id="l00252" name="l00252"></a> 252!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00253" name="l00253"></a> 253!DIR$ ATTRIBUTES DLLIMPORT :: syscGetSetupInfoF\_ARD

<a id="l00254" name="l00254"></a> 254!DIR$ ENDIF

<a id="l00255" name="l00255"></a> 255!



<a id="l00256" name="l00256"></a> 256 end function syscgetsetupinfof_ard

<a id="l00257" name="l00257"></a> 257!



<a id="l00258" name="l00258"></a> 258end interface [syscgetsetupinfof](interfacefortran_1_1syscgetsetupinfof.xhtml)

<a id="l00259" name="l00259"></a> 259!

<a id="l00260" name="l00260"></a> 260! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00273" name="l00273"></a> 273! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00274" name="l00274"></a>[ 274](structfortran_1_1syscsetupfileinfof.xhtml)type :: [syscsetupfileinfof](structfortran_1_1syscsetupfileinfof.xhtml)

<a id="l00275" name="l00275"></a>[ 275](structfortran_1_1syscsetupfileinfof.xhtml#ab4e2b5c783a6f184674e32cfaaa4f09e) character(len=SyscFilePathLen) :: setupfilename

<a id="l00276" name="l00276"></a>[ 276](structfortran_1_1syscsetupfileinfof.xhtml#a2758579ead626ca02c0c38e9d0407056) logical :: restartssupported

<a id="l00277" name="l00277"></a> 277end type [syscsetupfileinfof](structfortran_1_1syscsetupfileinfof.xhtml)



<a id="l00278" name="l00278"></a> 278!

<a id="l00279" name="l00279"></a> 279!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00282" name="l00282"></a> 282!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00283" name="l00283"></a> 283!

<a id="l00284" name="l00284"></a>[ 284](interfacefortran_1_1syscgetsetupfileinfof.xhtml)interface [syscgetsetupfileinfof](interfacefortran_1_1syscgetsetupfileinfof.xhtml)

<a id="l00285" name="l00285"></a> 285!

<a id="l00286" name="l00286"></a> 286!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00294" name="l00294"></a> 294!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00295" name="l00295"></a>[ 295](interfacefortran_1_1syscgetsetupfileinfof.xhtml#a229b1f07d15719212cf4a6f65e0a016a)function [syscgetsetupfileinfof](interfacefortran_1_1syscgetsetupfileinfof.xhtml)(setupFileName) result(ret)

<a id="l00296" name="l00296"></a> 296!

<a id="l00297" name="l00297"></a> 297 import :: [syscsetupfileinfof](structfortran_1_1syscsetupfileinfof.xhtml)

<a id="l00298" name="l00298"></a> 298 character(len=\*), intent(in) :: setupfilename

<a id="l00299" name="l00299"></a> 299 type([syscsetupfileinfof](structfortran_1_1syscsetupfileinfof.xhtml)) :: ret

<a id="l00300" name="l00300"></a> 300!

<a id="l00301" name="l00301"></a> 301!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00302" name="l00302"></a> 302!DIR$ ATTRIBUTES DLLIMPORT :: syscGetSetupFileInfoF

<a id="l00303" name="l00303"></a> 303!DIR$ ENDIF

<a id="l00304" name="l00304"></a> 304!



<a id="l00305" name="l00305"></a> 305end function [syscgetsetupfileinfof](interfacefortran_1_1syscgetsetupfileinfof.xhtml)

<a id="l00306" name="l00306"></a> 306!



<a id="l00307" name="l00307"></a> 307end interface [syscgetsetupfileinfof](interfacefortran_1_1syscgetsetupfileinfof.xhtml)

<a id="l00308" name="l00308"></a> 308!

<a id="l00309" name="l00309"></a> 309! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00311" name="l00311"></a> 311! \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00312" name="l00312"></a>[ 312](structfortran_1_1syscresultsinfof.xhtml)type :: [syscresultsinfof](structfortran_1_1syscresultsinfof.xhtml)

<a id="l00313" name="l00313"></a>[ 313](structfortran_1_1syscresultsinfof.xhtml#ab87a2b05cc2fa1114379c39b325438b4) character(len=SyscFilePathLen) :: basefilename

<a id="l00314" name="l00314"></a> 314end type [syscresultsinfof](structfortran_1_1syscresultsinfof.xhtml)



<a id="l00315" name="l00315"></a> 315!

<a id="l00316" name="l00316"></a> 316!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00319" name="l00319"></a> 319!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00320" name="l00320"></a> 320!

<a id="l00321" name="l00321"></a>[ 321](interfacefortran_1_1syscgetresultsinfof.xhtml)interface [syscgetresultsinfof](interfacefortran_1_1syscgetresultsinfof.xhtml)

<a id="l00322" name="l00322"></a> 322!

<a id="l00323" name="l00323"></a> 323!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00329" name="l00329"></a> 329!\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

<a id="l00330" name="l00330"></a>[ 330](interfacefortran_1_1syscgetresultsinfof.xhtml#aedf7568887b92f0cfe772a39febbccac)function [syscgetresultsinfof](interfacefortran_1_1syscgetresultsinfof.xhtml)(baseFileName) result(ret)

<a id="l00331" name="l00331"></a> 331 import :: [syscresultsinfof](structfortran_1_1syscresultsinfof.xhtml)

<a id="l00332" name="l00332"></a> 332 character(len=\*), intent(in) :: basefilename

<a id="l00333" name="l00333"></a> 333 type([syscresultsinfof](structfortran_1_1syscresultsinfof.xhtml)) :: ret

<a id="l00334" name="l00334"></a> 334!DIR$ IF DEFINED(\_WIN32) .and. ( .not. DEFINED(SYSTEM\_COUPLING\_PARTICIPANT\_PROXY))

<a id="l00335" name="l00335"></a> 335!DIR$ ATTRIBUTES DLLIMPORT :: syscGetResultsInfoF

<a id="l00336" name="l00336"></a> 336!DIR$ ENDIF



<a id="l00337" name="l00337"></a> 337end function [syscgetresultsinfof](interfacefortran_1_1syscgetresultsinfof.xhtml)

<a id="l00338" name="l00338"></a> 338!



<a id="l00339" name="l00339"></a> 339end interface [syscgetresultsinfof](interfacefortran_1_1syscgetresultsinfof.xhtml)

<a id="l00340" name="l00340"></a> 340!

<a id="l00341" name="l00341"></a> 341 

<a id="l00342" name="l00342"></a> 342end module fortran

[fortran::syscgetdimensionalityf](interfacefortran_1_1syscgetdimensionalityf.xhtml)

Provide an interface to get dimensionality.

**Definition** [syscCommonTypesF.fi:58](syscCommonTypesF_8fi_source.xhtml#l00058)



[fortran::syscgetresultsinfof](interfacefortran_1_1syscgetresultsinfof.xhtml)

Provide an interface to get a System Coupling results info type.

**Definition** [syscCommonTypesF.fi:321](syscCommonTypesF_8fi_source.xhtml#l00321)



[fortran::syscgetsetupfileinfof](interfacefortran_1_1syscgetsetupfileinfof.xhtml)

Provide an interface to get a System Coupling setup file info type.

**Definition** [syscCommonTypesF.fi:284](syscCommonTypesF_8fi_source.xhtml#l00284)



[fortran::syscgetsetupinfof](interfacefortran_1_1syscgetsetupinfof.xhtml)

Provide an interface to get a setup info type.

**Definition** [syscCommonTypesF.fi:170](syscCommonTypesF_8fi_source.xhtml#l00170)



[fortran::syscdimensionalityf](structfortran_1_1syscdimensionalityf.xhtml)

**Definition** [syscCommonTypesF.fi:43](syscCommonTypesF_8fi_source.xhtml#l00043)



[fortran::syscerrorf](structfortran_1_1syscerrorf.xhtml)

Provide an error type returned by the Fortran interface calls.

**Definition** [syscCommonTypesF.fi:133](syscCommonTypesF_8fi_source.xhtml#l00133)



[fortran::syscresultsinfof](structfortran_1_1syscresultsinfof.xhtml)

Provide a type for writing results files.

**Definition** [syscCommonTypesF.fi:312](syscCommonTypesF_8fi_source.xhtml#l00312)



[fortran::syscsetupfileinfof](structfortran_1_1syscsetupfileinfof.xhtml)

Provide a type for writing System Coupling setup files.

**Definition** [syscCommonTypesF.fi:274](syscCommonTypesF_8fi_source.xhtml#l00274)



[fortran::syscsetupinfof](structfortran_1_1syscsetupinfof.xhtml)

Provide a type for System Coupling setup information.

**Definition** [syscCommonTypesF.fi:160](syscCommonTypesF_8fi_source.xhtml#l00160)



[fortran::sysctimestepf](structfortran_1_1sysctimestepf.xhtml)

Provide a time step type.

**Definition** [syscCommonTypesF.fi:121](syscCommonTypesF_8fi_source.xhtml#l00121)