From 934f800662e27af0d6c37122a721ab1dd25a459e Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 16 Apr 2026 15:30:35 +0200 Subject: [PATCH 01/29] initialize CI Regressiontesting with pull_request_target-trigger --- .CI/ReSim/prepare_pr.sh | 7 ++++++ .CI/ReSim/run_pr.sh | 33 ++++++++++++++++++++++++++ .github/workflows/ReSim_CI.yml | 43 ++++++++++++++++++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100755 .CI/ReSim/prepare_pr.sh create mode 100755 .CI/ReSim/run_pr.sh create mode 100644 .github/workflows/ReSim_CI.yml diff --git a/.CI/ReSim/prepare_pr.sh b/.CI/ReSim/prepare_pr.sh new file mode 100755 index 0000000000..c2bb77c958 --- /dev/null +++ b/.CI/ReSim/prepare_pr.sh @@ -0,0 +1,7 @@ +event_number=$1 +# checkout the pull request +docker run --name compile_msl --rm --volume shared_data:/shared_data wsm_image /shared_data/run_scripts/git_pr_pull.sh $event_number +# compile msl binaries +docker run --name compile_msl --rm --volume shared_data:/shared_data wsm_image /shared_data/run_scripts/compile_msl.sh /shared_data/repos/pr_testing/ModelicaStandardLibrary +# delete old PRs with same number (in case of a new commit on a PR) +docker run --name compile_msl --rm --volume shared_data:/shared_data dymola_image /shared_data/run_scripts/delete_old_PRs.sh $event_number \ No newline at end of file diff --git a/.CI/ReSim/run_pr.sh b/.CI/ReSim/run_pr.sh new file mode 100755 index 0000000000..deb92e9655 --- /dev/null +++ b/.CI/ReSim/run_pr.sh @@ -0,0 +1,33 @@ +event_number=$1 +master_hash=$2 +pkg_name=$3 + +# Run Modelica in all tools +tools=$4 + +for tool in $tools +do + uppertool=$tool | tr 'a-z' 'A-Z' + docker run --rm --name $tool\_pr_compare_$event_number\_$pkg_name --volume shared_data:/shared_data $tool\_image python /shared_data/run_scripts/$uppertool\_PR_compare.py $master_hash $event_number $pkg_name +done + +#docker run --rm --name dymola_pr_compare_$event_number\_$pkg_name --volume shared_data:/shared_data dymola_image python /shared_data/run_scripts/Dymola_PR_compare.py $master_hash $event_number $pkg_name +#docker run --rm --name om_pr_compare_$event_number\_$pkg_name --volume shared_data:/shared_data om_image python /shared_data/run_scripts/OM_PR_compare.py $master_hash $event_number $pkg_name +#docker run --rm --name wsm_pr_compare_$event_number\_$pkg_name --volume shared_data:/shared_data wsm_image python /shared_data/run_scripts/WSM_PR_compare.py $master_hash $event_number $pkg_name + +# create an overview over all tools +docker run --name create_overview_$event_number\_$pkg_name --volume shared_data:/shared_data om_image python /shared_data/run_scripts/overview_report.py $event_number $pkg_name + +# clear published directory (web server) +if [ -d "/var/www/html/prs/$event_number/$pkg_name" ]; then + rm -rf "/var/www/html/prs/$event_number/$pkg_name" +fi +if [ ! -d "/var/www/html/prs/$event_number" ]; then + mkdir /var/www/html/prs/$event_number +fi +mkdir /var/www/html/prs/$event_number/$pkg_name + +# copy data to webserver directory +docker cp create_overview_$event_number\_$pkg_name:/shared_data/resim_output/PRs/PR_$event_number/$pkg_name/report /var/www/html/prs/$event_number/$pkg_name +docker rm create_overview_$event_number\_$pkg_name +exit $(head -n 1 /var/www/html/prs/$event_number/$pkg_name/status.txt) \ No newline at end of file diff --git a/.github/workflows/ReSim_CI.yml b/.github/workflows/ReSim_CI.yml new file mode 100644 index 0000000000..fa5dd01425 --- /dev/null +++ b/.github/workflows/ReSim_CI.yml @@ -0,0 +1,43 @@ +name: CI ReSim + +on: + pull_request_target: + workflow_dispatch: + +env: + PR_SERVER: ${{ vars.LTX_PR_SERVER }} + TESTING_TOOLS: ${{ vars.LTX_TESTING_TOOLS }} + EVENT_NUMBER: ${{ github.event.number }} + PR_SHA: ${{ github.event.pull_request.base.sha }} + +jobs: + prepare: + runs-on: [ self-hosted, Linux, regression_testing ] + steps: + - uses: actions/checkout@v6 + with: + sparse-checkout: './.CI/ReSim' + + - name: Checkout code in docker + run: ./.CI/ReSim/prepare_pr.sh ${{ env.EVENT_NUMBER }} + + testrun_modelica: + needs: prepare + runs-on: [ self-hosted, Linux, regression_testing ] + environment: + name: Report modelica + url: ${{ env.PR_SERVER }}/${{ env.EVENT_NUMBER }}/Modelica/report/PR_comparison_report.html + steps: + - name: Run tests modelica + run: ./.CI/ReSim/run_pr.sh ${{ env.EVENT_NUMBER }} ${{ env.PR_SHA }} Modelica ${{ env.TESTING_TOOLS }} + + + testrun_modelicatest: + needs: prepare + runs-on: [ self-hosted, Linux, regression_testing ] + environment: + name: Report modelicatest + url: ${{ env.PR_SERVER }}/${{ env.EVENT_NUMBER }}/ModelicaTest/report/PR_comparison_report.html + steps: + - name: Run tests modelicatest + run: ./.CI/ReSim/run_pr.sh ${{ env.EVENT_NUMBER }} ${{ env.PR_SHA }} ModelicaTest ${{ env.TESTING_TOOLS }} \ No newline at end of file From 605a4b0125a09f48c7f12095533ff7baed50dda7 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 16 Apr 2026 15:47:32 +0200 Subject: [PATCH 02/29] Add Spaces in Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 8fbd5f270a..6ef2ff57cd 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1589,7 +1589,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; "Table look-up with respect to time and various interpolation and extrapolation methods (data from matrix/file)" import Modelica.Blocks.Tables.Internal; extends Modelica.Blocks.Interfaces.MO(final nout=max([size(columns, 1); size(offset, 1)])); - parameter Boolean tableOnFile=false + parameter Boolean tableOnFile = false "= true, if table is defined on file or in function usertab" annotation (Dialog(group="Table data definition")); parameter Real table[:, :] = fill(0.0, 0, 2) From 955b92878bbc2f8701cf5317c7dd797f72966fb5 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Tue, 21 Apr 2026 11:02:31 +0200 Subject: [PATCH 03/29] add some more spaces to sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 6ef2ff57cd..69eaa4de52 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1607,7 +1607,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter String delimiter="," "Column delimiter character for CSV file" annotation (Dialog( group="Table data definition", - enable=tableOnFile and isCsvExt), + enable = tableOnFile and isCsvExt), choices(choice=" " "Blank", choice="," "Comma", choice="\t" "Horizontal tabulator", choice=";" "Semicolon")); parameter Integer nHeaderLines=0 "Number of header lines to ignore for CSV file" annotation (Dialog(group="Table data definition",enable=tableOnFile and isCsvExt)); From 80350dbe3dd373accf58584efbad720ac7dc6511 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Tue, 21 Apr 2026 14:12:19 +0200 Subject: [PATCH 04/29] more and more spaces in Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 69eaa4de52..db6ef4183e 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1606,7 +1606,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; caption="Open file in which table is present"))); parameter String delimiter="," "Column delimiter character for CSV file" annotation (Dialog( - group="Table data definition", + group = "Table data definition", enable = tableOnFile and isCsvExt), choices(choice=" " "Blank", choice="," "Comma", choice="\t" "Horizontal tabulator", choice=";" "Semicolon")); parameter Integer nHeaderLines=0 "Number of header lines to ignore for CSV file" From 29c2ecbdf6c4ddb02bcd33bd524b4077bd2f28c6 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Wed, 22 Apr 2026 08:33:27 +0200 Subject: [PATCH 05/29] Spaces, Spaces and Spaces in Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index db6ef4183e..0eac6f1081 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1618,7 +1618,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; "Columns of table to be interpolated" annotation (Dialog(group="Table data interpretation", groupImage="modelica://Modelica/Resources/Images/Blocks/Sources/CombiTimeTable.png")); - parameter Modelica.Blocks.Types.Smoothness smoothness=Modelica.Blocks.Types.Smoothness.LinearSegments + parameter Modelica.Blocks.Types.Smoothness smoothness = Modelica.Blocks.Types.Smoothness.LinearSegments "Smoothness of table interpolation" annotation (Dialog(group="Table data interpretation")); parameter Modelica.Blocks.Types.Extrapolation extrapolation=Modelica.Blocks.Types.Extrapolation.LastTwoPoints From dc7fb8ad07b31a8b31853b5a78c55e9ff456af21 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 8 May 2026 13:47:41 +0200 Subject: [PATCH 06/29] add some spaces in Continuous.mo --- Modelica/Blocks/Continuous.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Continuous.mo b/Modelica/Blocks/Continuous.mo index bd3b79f9f1..5b68e1b03b 100644 --- a/Modelica/Blocks/Continuous.mo +++ b/Modelica/Blocks/Continuous.mo @@ -19,7 +19,7 @@ package Continuous "Library of continuous control blocks with internal states" parameter Init initType=Init.InitialState "Type of initialization (1: no init, 2: steady state, 3,4: initial output)" annotation(Evaluate=true, Dialog(group="Initialization")); - parameter Real y_start=0 "Initial or guess value of output (= state)" + parameter Real y_start = 0 "Initial or guess value of output (= state)" annotation (Dialog(group="Initialization")); extends Interfaces.SISO; Modelica.Blocks.Interfaces.BooleanInput reset if use_reset "Optional connector of reset signal" annotation(Placement( From 18ce2b6dd2919318992ea6d9c92f1047cd96772b Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 8 May 2026 21:20:34 +0200 Subject: [PATCH 07/29] add more spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 0eac6f1081..cf6c338464 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1627,7 +1627,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter SI.Time timeScale( min=Modelica.Constants.eps)=1 "Time scale of first table column" annotation (Dialog(group="Table data interpretation"), Evaluate=true); - parameter Real offset[:]={0} "Offsets of output signals" + parameter Real offset[:] = {0} "Offsets of output signals" annotation (Dialog(group="Table data interpretation")); parameter SI.Time startTime=0 "Output = offset for time < startTime" From cbbb95fb36d3c02c362284b730a84239f58b07aa Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 12 Jun 2026 10:53:52 +0200 Subject: [PATCH 08/29] Add spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index cf6c338464..e300456452 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1598,7 +1598,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter String tableName="NoName" "Table name on file or in function usertab (see docu)" annotation (Dialog(group="Table data definition",enable=tableOnFile)); - parameter String fileName="NoName" "File where matrix is stored" + parameter String fileName = "NoName" "File where matrix is stored" annotation (Dialog( group="Table data definition", enable=tableOnFile, From 5f0c597f14729de3230f650c993373b597d18da1 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 12 Jun 2026 14:33:05 +0200 Subject: [PATCH 09/29] Add spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index e300456452..b5f5b9aaf9 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1595,7 +1595,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Real table[:, :] = fill(0.0, 0, 2) "Table matrix (time = first column; e.g., table=[0, 0; 1, 1; 2, 4])" annotation (Dialog(group="Table data definition",enable=not tableOnFile)); - parameter String tableName="NoName" + parameter String tableName= "NoName" "Table name on file or in function usertab (see docu)" annotation (Dialog(group="Table data definition",enable=tableOnFile)); parameter String fileName = "NoName" "File where matrix is stored" From 52f0c080a848ac4575bbdeaacb558dda44a9c791 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 12 Jun 2026 15:11:02 +0200 Subject: [PATCH 10/29] Add spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index b5f5b9aaf9..94f4ded681 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1591,7 +1591,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; extends Modelica.Blocks.Interfaces.MO(final nout=max([size(columns, 1); size(offset, 1)])); parameter Boolean tableOnFile = false "= true, if table is defined on file or in function usertab" - annotation (Dialog(group="Table data definition")); + annotation (Dialog(group= "Table data definition")); parameter Real table[:, :] = fill(0.0, 0, 2) "Table matrix (time = first column; e.g., table=[0, 0; 1, 1; 2, 4])" annotation (Dialog(group="Table data definition",enable=not tableOnFile)); From 17efc51783fb4818d6c80e5219810858a545576c Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 12 Jun 2026 15:33:05 +0200 Subject: [PATCH 11/29] Add spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 94f4ded681..e32f885a7c 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1655,7 +1655,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Modelica.Blocks.Types.ExternalCombiTimeTable tableID= Modelica.Blocks.Types.ExternalCombiTimeTable( if tableOnFile then if isCsvExt then "Values" else tableName else "NoName", - if tableOnFile and fileName <> "NoName" and not Modelica.Utilities.Strings.isEmpty(fileName) then fileName else "NoName", + if tableOnFile and fileName <> "NoName" and not Modelica.Utilities.Strings.isEmpty(fileName) then fileName else "NoName", table, startTime/timeScale, columns, From 2952971e4c815a64b83e5b2de93b1aa5bbee8735 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 09:00:58 +0200 Subject: [PATCH 12/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index e32f885a7c..df1a949588 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1647,7 +1647,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; "Maximum abscissa value defined in table"; final parameter Real t_minScaled=Internal.getTimeTableTmin(tableID) "Minimum (scaled) abscissa value defined in table"; - final parameter Real t_maxScaled=Internal.getTimeTableTmax(tableID) + final parameter Real t_maxScaled = Internal.getTimeTableTmax(tableID) "Maximum (scaled) abscissa value defined in table"; protected final parameter Real p_offset[nout]=(if size(offset, 1) == 1 then ones(nout)*offset[1] else offset) From fd999c4fea3a0442ab4b961b6edcece4a6f759a4 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 09:29:55 +0200 Subject: [PATCH 13/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index df1a949588..bfe806408d 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1625,7 +1625,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; "Extrapolation of data outside the definition range" annotation (Dialog(group="Table data interpretation")); parameter SI.Time timeScale( - min=Modelica.Constants.eps)=1 "Time scale of first table column" + min=Modelica.Constants.eps) = 1 "Time scale of first table column" annotation (Dialog(group="Table data interpretation"), Evaluate=true); parameter Real offset[:] = {0} "Offsets of output signals" annotation (Dialog(group="Table data interpretation")); From 641216caf1afaeed4fa3f0a09fce57d565b8973d Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 09:45:48 +0200 Subject: [PATCH 14/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index bfe806408d..f8474976ce 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1629,7 +1629,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group="Table data interpretation"), Evaluate=true); parameter Real offset[:] = {0} "Offsets of output signals" annotation (Dialog(group="Table data interpretation")); - parameter SI.Time startTime=0 + parameter SI.Time startTime = 0 "Output = offset for time < startTime" annotation (Dialog(group="Table data interpretation")); parameter SI.Time shiftTime=startTime From 9cd633beb4dc6481a4e6067c0a32bcdd1cb0aec6 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 10:15:21 +0200 Subject: [PATCH 15/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index f8474976ce..cab78c350a 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1632,7 +1632,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter SI.Time startTime = 0 "Output = offset for time < startTime" annotation (Dialog(group="Table data interpretation")); - parameter SI.Time shiftTime=startTime + parameter SI.Time shiftTime = startTime "Shift time of first table column" annotation (Dialog(group="Table data interpretation")); parameter Modelica.Blocks.Types.TimeEvents timeEvents=Modelica.Blocks.Types.TimeEvents.Always From 669f010af4245f608f907f47f6ea46f7807c9de3 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 10:23:00 +0200 Subject: [PATCH 16/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index cab78c350a..977110a498 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1635,7 +1635,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter SI.Time shiftTime = startTime "Shift time of first table column" annotation (Dialog(group="Table data interpretation")); - parameter Modelica.Blocks.Types.TimeEvents timeEvents=Modelica.Blocks.Types.TimeEvents.Always + parameter Modelica.Blocks.Types.TimeEvents timeEvents = Modelica.Blocks.Types.TimeEvents.Always "Time event handling of table interpolation" annotation (Dialog(group="Table data interpretation", enable=smoothness == Modelica.Blocks.Types.Smoothness.LinearSegments)); parameter Boolean verboseExtrapolation=false From 44acc1f840399416424b44926d91d29666909309 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 10:44:44 +0200 Subject: [PATCH 17/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 977110a498..0d764da4fa 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1637,7 +1637,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group="Table data interpretation")); parameter Modelica.Blocks.Types.TimeEvents timeEvents = Modelica.Blocks.Types.TimeEvents.Always "Time event handling of table interpolation" - annotation (Dialog(group="Table data interpretation", enable=smoothness == Modelica.Blocks.Types.Smoothness.LinearSegments)); + annotation (Dialog(group="Table data interpretation", enable = smoothness == Modelica.Blocks.Types.Smoothness.LinearSegments)); parameter Boolean verboseExtrapolation=false "= true, if warning messages are to be printed if time is outside the table definition range" annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); From 1e8eef3d5497e0bff8c8529a677456283a127f21 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 15 Jun 2026 13:26:01 +0200 Subject: [PATCH 18/29] There cant be enough spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 0d764da4fa..35f91b42ee 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1638,7 +1638,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Modelica.Blocks.Types.TimeEvents timeEvents = Modelica.Blocks.Types.TimeEvents.Always "Time event handling of table interpolation" annotation (Dialog(group="Table data interpretation", enable = smoothness == Modelica.Blocks.Types.Smoothness.LinearSegments)); - parameter Boolean verboseExtrapolation=false + parameter Boolean verboseExtrapolation = false "= true, if warning messages are to be printed if time is outside the table definition range" annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); final parameter SI.Time t_min=t_minScaled*timeScale From 510e21d0fbf20850b66a7d36a6a7c1306fb3f038 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Tue, 16 Jun 2026 11:26:03 +0200 Subject: [PATCH 19/29] More and more spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 35f91b42ee..d50ade4031 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1641,7 +1641,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Boolean verboseExtrapolation = false "= true, if warning messages are to be printed if time is outside the table definition range" annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); - final parameter SI.Time t_min=t_minScaled*timeScale + final parameter SI.Time t_min = t_minScaled*timeScale "Minimum abscissa value defined in table"; final parameter SI.Time t_max=t_maxScaled*timeScale "Maximum abscissa value defined in table"; From b7015d97c454b366f47b73e975fdc06000202230 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Tue, 16 Jun 2026 11:45:04 +0200 Subject: [PATCH 20/29] More and more spaces in Modelica.Blocks.Sources.mo --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index d50ade4031..10c1f5fc8c 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1641,7 +1641,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Boolean verboseExtrapolation = false "= true, if warning messages are to be printed if time is outside the table definition range" annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); - final parameter SI.Time t_min = t_minScaled*timeScale + final parameter SI.Time t_min = t_minScaled * timeScale "Minimum abscissa value defined in table"; final parameter SI.Time t_max=t_maxScaled*timeScale "Maximum abscissa value defined in table"; From bb988b1857ccd81949a0d6367c30e7c42a3838c4 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Wed, 17 Jun 2026 14:35:34 +0200 Subject: [PATCH 21/29] i need space ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 10c1f5fc8c..d0017c1f91 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1643,7 +1643,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); final parameter SI.Time t_min = t_minScaled * timeScale "Minimum abscissa value defined in table"; - final parameter SI.Time t_max=t_maxScaled*timeScale + final parameter SI.Time t_max = t_maxScaled*timeScale "Maximum abscissa value defined in table"; final parameter Real t_minScaled=Internal.getTimeTableTmin(tableID) "Minimum (scaled) abscissa value defined in table"; From 7b698e437ad79e3d0b8237bba445479984c4c1c2 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Wed, 17 Jun 2026 17:01:50 +0200 Subject: [PATCH 22/29] i need space ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index d0017c1f91..c4c272e35a 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1643,7 +1643,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group="Table data interpretation", enable=extrapolation == Modelica.Blocks.Types.Extrapolation.LastTwoPoints or extrapolation == Modelica.Blocks.Types.Extrapolation.HoldLastPoint)); final parameter SI.Time t_min = t_minScaled * timeScale "Minimum abscissa value defined in table"; - final parameter SI.Time t_max = t_maxScaled*timeScale + final parameter SI.Time t_max = t_maxScaled * timeScale "Maximum abscissa value defined in table"; final parameter Real t_minScaled=Internal.getTimeTableTmin(tableID) "Minimum (scaled) abscissa value defined in table"; From bf5a014347b1fbc958e5189e57afb80be5c36965 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 18 Jun 2026 09:27:25 +0200 Subject: [PATCH 23/29] space, space and more spaces --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index c4c272e35a..85bc99d7ab 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1645,7 +1645,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; "Minimum abscissa value defined in table"; final parameter SI.Time t_max = t_maxScaled * timeScale "Maximum abscissa value defined in table"; - final parameter Real t_minScaled=Internal.getTimeTableTmin(tableID) + final parameter Real t_minScaled = Internal.getTimeTableTmin(tableID) "Minimum (scaled) abscissa value defined in table"; final parameter Real t_maxScaled = Internal.getTimeTableTmax(tableID) "Maximum (scaled) abscissa value defined in table"; From 8b27ee12143e980b1753c537ef9a66ce4e12ffda Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 18 Jun 2026 13:00:35 +0200 Subject: [PATCH 24/29] more spaces ! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 85bc99d7ab..f2fca1513d 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1650,7 +1650,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; final parameter Real t_maxScaled = Internal.getTimeTableTmax(tableID) "Maximum (scaled) abscissa value defined in table"; protected - final parameter Real p_offset[nout]=(if size(offset, 1) == 1 then ones(nout)*offset[1] else offset) + final parameter Real p_offset[nout] = (if size(offset, 1) == 1 then ones(nout)*offset[1] else offset) "Offsets of output signals"; parameter Modelica.Blocks.Types.ExternalCombiTimeTable tableID= Modelica.Blocks.Types.ExternalCombiTimeTable( From 5ad487edfd63e1cba7bcb717581d71debc48c0f4 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 19 Jun 2026 16:09:56 +0200 Subject: [PATCH 25/29] spaaaaaace! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index f2fca1513d..9bc19b3b17 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1652,7 +1652,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; protected final parameter Real p_offset[nout] = (if size(offset, 1) == 1 then ones(nout)*offset[1] else offset) "Offsets of output signals"; - parameter Modelica.Blocks.Types.ExternalCombiTimeTable tableID= + parameter Modelica.Blocks.Types.ExternalCombiTimeTable tableID = Modelica.Blocks.Types.ExternalCombiTimeTable( if tableOnFile then if isCsvExt then "Values" else tableName else "NoName", if tableOnFile and fileName <> "NoName" and not Modelica.Utilities.Strings.isEmpty(fileName) then fileName else "NoName", From fa1fdc9d58222dee37e02c6fc6c1036e71a37817 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Fri, 19 Jun 2026 16:25:15 +0200 Subject: [PATCH 26/29] spaaaaaace! --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 9bc19b3b17..9d1fc3710b 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1621,7 +1621,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; parameter Modelica.Blocks.Types.Smoothness smoothness = Modelica.Blocks.Types.Smoothness.LinearSegments "Smoothness of table interpolation" annotation (Dialog(group="Table data interpretation")); - parameter Modelica.Blocks.Types.Extrapolation extrapolation=Modelica.Blocks.Types.Extrapolation.LastTwoPoints + parameter Modelica.Blocks.Types.Extrapolation extrapolation = Modelica.Blocks.Types.Extrapolation.LastTwoPoints "Extrapolation of data outside the definition range" annotation (Dialog(group="Table data interpretation")); parameter SI.Time timeScale( From 451aaf8c6a4c2f58939c1447872325237c4b4ed9 Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Mon, 22 Jun 2026 13:16:01 +0200 Subject: [PATCH 27/29] Do you find any spaces? --- Modelica/Blocks/Sources.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index 9d1fc3710b..df627a3e80 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1597,7 +1597,7 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group="Table data definition",enable=not tableOnFile)); parameter String tableName= "NoName" "Table name on file or in function usertab (see docu)" - annotation (Dialog(group="Table data definition",enable=tableOnFile)); + annotation (Dialog(group= "Table data definition", enable= tableOnFile)); parameter String fileName = "NoName" "File where matrix is stored" annotation (Dialog( group="Table data definition", From 973112db7b9d681887e0b9db2f3e406ca81d928f Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 25 Jun 2026 09:48:06 +0200 Subject: [PATCH 28/29] The eternal space history ... --- Modelica/Blocks/Sources.mo | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index df627a3e80..cfc8e68295 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1594,10 +1594,10 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog(group= "Table data definition")); parameter Real table[:, :] = fill(0.0, 0, 2) "Table matrix (time = first column; e.g., table=[0, 0; 1, 1; 2, 4])" - annotation (Dialog(group="Table data definition",enable=not tableOnFile)); + annotation (Dialog(group="Table data definition",enable = not tableOnFile)); parameter String tableName= "NoName" "Table name on file or in function usertab (see docu)" - annotation (Dialog(group= "Table data definition", enable= tableOnFile)); + annotation (Dialog(group= "Table data definition", enable = tableOnFile)); parameter String fileName = "NoName" "File where matrix is stored" annotation (Dialog( group="Table data definition", From 4e2c5a5d78ce343b7e4410cf35c01e74cc6c80bc Mon Sep 17 00:00:00 2001 From: Matthias Schaefer Date: Thu, 25 Jun 2026 10:38:02 +0200 Subject: [PATCH 29/29] The eternal space history ... --- Modelica/Blocks/Sources.mo | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Modelica/Blocks/Sources.mo b/Modelica/Blocks/Sources.mo index cfc8e68295..d7b93ee1cd 100644 --- a/Modelica/Blocks/Sources.mo +++ b/Modelica/Blocks/Sources.mo @@ -1608,12 +1608,12 @@ parameter Real table[:, 2]=[0, 0; 1, 1; 2, 4]; annotation (Dialog( group = "Table data definition", enable = tableOnFile and isCsvExt), - choices(choice=" " "Blank", choice="," "Comma", choice="\t" "Horizontal tabulator", choice=";" "Semicolon")); + choices(choice=" " "Blank", choice= "," "Comma" , choice="\t" "Horizontal tabulator", choice=";" "Semicolon")); parameter Integer nHeaderLines=0 "Number of header lines to ignore for CSV file" - annotation (Dialog(group="Table data definition",enable=tableOnFile and isCsvExt)); + annotation (Dialog(group="Table data definition",enable = tableOnFile and isCsvExt)); parameter Boolean verboseRead=true "= true, if info message that file is loading is to be printed" - annotation (Dialog(group="Table data definition",enable=tableOnFile)); + annotation (Dialog(group="Table data definition",enable = tableOnFile)); parameter Integer columns[:]=2:size(table, 2) "Columns of table to be interpolated" annotation (Dialog(group="Table data interpretation",