 
This package contains components models to report values to files.
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
| Name | Description | 
|---|---|
|  Printer | Model that prints values to a file | 
|  printRealArray | Print string to terminal or file | 
|  Examples | Collection of models that illustrate model use and test models | 
 Buildings.Utilities.Reports.Printer
Buildings.Utilities.Reports.Printer
 
This model prints to a file or the terminal at a fixed sample interval.
The parameter configuration controls the printing as follows:
| configuration | configuration | 
| 1 | print at sample times only | 
| 2 | print at sample times and at end of simulation | 
| 3 | print at end of simulation only | 
Extends from Modelica.Blocks.Interfaces.DiscreteBlock (Base class of discrete control blocks).
| Type | Name | Default | Description | 
|---|---|---|---|
| Time | samplePeriod | Sample period of component [s] | |
| Time | startTime | 0 | First sample time instant [s] | 
| String | header | "" | Header to be printed | 
| String | fileName | "" | File name (empty string is the terminal) | 
| Integer | nin | 1 | Number of inputs | 
| Integer | configuration | 1 | Index for treating final report (see documentation) | 
| Integer | minimumLength | 1 | Minimum length of result string | 
| Integer | significantDigits | 16 | Number of significant digits | 
| Type | Name | Description | 
|---|---|---|
| input RealInput | x[nin] | Value to be printed | 
model Printer "Model that prints values to a file"
  extends Modelica.Blocks.Interfaces.DiscreteBlock;
  parameter String header="" "Header to be printed";
  parameter String fileName="" "File name (empty string is the terminal)";
  parameter Integer nin=1 "Number of inputs";
  parameter Integer configuration = 1 
    "Index for treating final report (see documentation)";
  parameter Integer minimumLength =  1 "Minimum length of result string";
  parameter Integer significantDigits = 16 "Number of significant digits";
  Modelica.Blocks.Interfaces.RealInput x[nin] "Value to be printed"; 
initial algorithm 
  if (fileName <> "") then
    Modelica.Utilities.Files.removeFile(fileName);
  end if;
  Modelica.Utilities.Streams.print(fileName=fileName, string=header);
equation 
  if configuration < 3 then
  when {sampleTrigger, initial()} then
      Buildings.Utilities.Reports.printRealArray(
                                      x=x, fileName=fileName,
                                      minimumLength=minimumLength,
                                      significantDigits=significantDigits);
  end when;
  end if;
  when terminal() then
    if configuration >= 2 then
       Buildings.Utilities.Reports.printRealArray(
                                      x=x, fileName=fileName,
                                      minimumLength=minimumLength,
                                      significantDigits=significantDigits);
   end if;
  end when;
end Printer;
 
 Buildings.Utilities.Reports.printRealArray
Buildings.Utilities.Reports.printRealArray
Function that prints a real array to an output file.
Extends from Modelica.Icons.Function (Icon for functions).
| Type | Name | Default | Description | 
|---|---|---|---|
| Real | x[:] | Input to be printed | |
| String | fileName | "" | File where to print (empty string is the terminal) | 
| Integer | minimumLength | 1 | Minimum width of result | 
| Integer | significantDigits | 6 | Number of significant digits | 
| Type | Name | Description | 
|---|---|---|
| String | outStr | String to be printed | 
function printRealArray "Print string to terminal or file"
  extends Modelica.Icons.Function;
  input Real[:] x "Input to be printed";
  input String fileName="" "File where to print (empty string is the terminal)";
  input Integer minimumLength =  1 "Minimum width of result";
  input Integer significantDigits = 6 "Number of significant digits";
  output String outStr="" "String to be printed";
algorithm 
  for i in 1:size(x,1) loop
     outStr :=outStr + "  "
                     + String(x[i],
                              minimumLength=minimumLength,
                              significantDigits=significantDigits);
  end for;
  Modelica.Utilities.Streams.print(string=outStr, fileName=fileName);
end printRealArray;