[root]/testsuite/openmodelica/xml
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 81 (100.0%) | 45132 (100.0%) | 557.1 |
adrpo | 19 (23.5%) | 32326 (71.6%) | 1701.3 |
lochel | 5 (6.2%) | 5092 (11.3%) | 1018.4 |
sjoelund.se | 15 (18.5%) | 3762 (8.3%) | 250.8 |
wbraun | 8 (9.9%) | 2156 (4.8%) | 269.5 |
perost | 13 (16.0%) | 1249 (2.8%) | 96.0 |
vwaurich | 1 (1.2%) | 311 (0.7%) | 311.0 |
vitalij | 14 (17.3%) | 146 (0.3%) | 10.4 |
mahge930 | 1 (1.2%) | 76 (0.2%) | 76.0 |
hudson | 4 (4.9%) | 8 (0.0%) | 2.0 |
jfrenkel | 1 (1.2%) | 6 (0.0%) | 6.0 |
+ Handle nested array types when creating array equations.
+ Correct subscript ordering when expanding crefs.
+ Fix List.combinationMap to properly order combinations and combination lists. Also accumulate the results.
+ Added List.combination.
76 lines of code changed in 1 file:
imporved negate for binary
9 lines of code changed in 2 files:
added preprocessing for ExpressionSolve.solve: sort and split equation like h(x,y) = g(z) -> h(x) = k(y,z,pre(x),delay(x,const),start(x))
- remove some recursive parts
- move some solver rules inside preprocessding
- using loop
- not need swaps args, because equation is already sorted
- support more cases e.g.
- tanh, sinh, cosh, if() +- if(), pow(x*y,z)*x = 0, abs(x) = 0, delay(x,const) = x,...
- added testcase
- remove pow(f(x),y) = z -> sign(pre(x))*pow(z,inv(y))
- rewrite some rules
- work with "terms" and "factors" (see Expression.terms, Expression.allTerms, Expression.factors) and not longer with localy expression neighborhood
- fixed some rules for der(x)
- solve (hope all) linear expression without derivation
ToDo: solve lienar user functions
allTerms: added a case for DAE.LUNARY and unite some cases
factors: added case for DAE.LUNARY
1 lines of code changed in 1 file:
-improved simplify
-update test
2 lines of code changed in 1 file:
- fixed #2867 by fixing the calculation of adjacency rows for ASUB expressions
26 lines of code changed in 1 file:
- expected output
1 lines of code changed in 1 file:
- partial fix for #2858 (does not yet work with for iterators indexing the array of records)
* some tests are now actually giving correct results
- partial support for Connections.uniqueRoot and Connections.uniqueRootIndexes
* non standard operators: Connections.uniqueRoot and Connections.uniqueRootIndices are only partially implemented
* Connections.uniqueRoot currently does nothing, only collects information
* Connections.uniqueRootIndices needs to be implemented, it returns an array of ones (1) of size of first input
* See specification for these here (Modelica_StateGraph2):
https://github.com/modelica/Modelica_StateGraph2 and
https://trac.modelica.org/Modelica/ticket/984 and
http://www.ep.liu.se/ecp/043/041/ecp09430108.pdf
* any takers for the actual implementation? is not that complicated :)
- changed the way array types are printed out to be easier to follow
29 lines of code changed in 1 file:
- remove MSL 3.2.1 MultiBody patch
4 lines of code changed in 1 file:
Merged branches/FFrontEnd into trunk/
Main changes:
- changed the environment to support both non-destructive and destructive updates
- Env.Cache -> FCore.Cache, Env.Env -> FCore.Graph
- FCore.Graph is not a list of Frames anymore is a stucture where the previous list is saved in component "scope"
- all Frames in the new FCore.Graph are FCore.Ref pointing to FCore.Node having different FCore.Data depending on what they are
- all FCore.Nodes have children (FCore.CAvlTree) which maps names to FCore.Ref (which is Array<FCore.Node>, size 1)
- FGraph.openScope pushes an already existing FCore.Ref (or a new one) on the scope list
- for all components having modifications the last class in the type path is renamed to include the
prefix, see FGraph.createVersionScope (this is done because we need unique names for redeclared functions,
records, etc and we need a unique type scope for that)
Example: A.B.C c -> A.B.C$c c
Bug fixes:
- calling function via component (multibody MSL 3.2.1 patch not needed anymore, will remove it in a next commit)
- #2837 array equations wrongly handled in RemoveSimpleEquations (used in ThermoPower and PowerSystems libraries, etc)
#2784, #2727, #2739 (missing modifiers combined with redeclare and unique function generation for redeclared functions)
#2835 - handle overconstrained connectors extending basic types (used in PowerSystems library)
- do not loose modifications on derived classes handled by InstExtends
- some error messages about missing components in Fluid library are gone
- for components of size 0 do not check if they are assigned before use in functions (residue in equalityConstraint)
3305 lines of code changed in 4 files:
Fix bug #2837
- properly handle array equations in RemoveSimpleEquations.mo
269 lines of code changed in 1 file:
#2804 Optimize `(x,_,_) = fn(y)` into `x = TSUB(fn(y),1)`.
Triggered some unwanted optimisations/inlining of function calls that were handled by forcing ceval of some function calls in the backend
60 lines of code changed in 1 file:
#2786
- Fix code generation for multiple iterators (threaded)
- Ceval constant function calls in the front-end
3 lines of code changed in 1 file:
Fix for #2806:
- Remove input/output also from record components that are not top-level.
252 lines of code changed in 1 file:
Fix for #2806:
- Remove input/output from variables which are not at top-level or inside a
top-level connector.
474 lines of code changed in 3 files:
Fix Expression.isConst to also work for function calls.
Changed most ExpressionSimplify routines to call isConstValue instead (since they try to do things like constant folding which fails for compound expressions anyway).
33 lines of code changed in 1 file:
added some simplify rules
18 lines of code changed in 1 file:
- imporved rule x/c1 = c2*x
1 lines of code changed in 1 file:
Fix some of the sorting of components based on dependencies in the bindings
- Would silently fail in some cases in the past
- Some models now give no warnings in compile-time and run-time
- AIMS_Start gives a different result for one variable
- UnevaluateableFixedAttribute.mos gives different results for RML and bootstrapped omc versions
278 lines of code changed in 1 file:
Fix for #2705:
- Propagate inline annotations in derived component functions.
1 lines of code changed in 1 file:
- attempt to improve r20789 (don't handle impure functions as constant)
2325 lines of code changed in 1 file:
- Improved DAEDumpTpl and switched to it as default.
- Untupled min and max in DAE.VariableAttributes.
2 lines of code changed in 1 file:
- fix #2704 (don't handle impure functions as constant)
- add TRACE information to dassl.c::functionODE_residual and solver_main.c::finishSimulation
2709 lines of code changed in 1 file:
- updated expected output
311 lines of code changed in 1 file:
Various bugfixes and new features
- A new implementation for overloaded (binary) operators.
* Follows the specification more strictly and produces less fewer warnings for legal code
* matrix*matrix and matrix*vector uses reduction expressions to implement sum and array
* Checked that inlining of the generated functions works and produces simple expressions
* The code has been split into its own file since it is 2200 LOC and very few things in there actually depend on Static.mo (most of the remaining ones should be refactored)
- Implemented inlining of functions that assign to record members instead of call the record constructor in a single statement
- When evaluating function inputs to determine output array dimensions, keep the evaluated results
- Adding new preOptModule evaluateReplaceProtectedFinalEvaluateParameters which replaces evaluateReplaceFinalEvaluateParameters as a default module
* Causes problems for NPendulum.mos and PrismaticConstraint. They have different preOptModules set in the tests
- Added simulation flag `-abortSlowSimulation` used for the library tests in the testsuite
- EngineV6 now causes chattering behaviour. It was set to a Compilation test.
* The test will not spin thanks to the `-abortSlowSimulation` flag
- Improve elaboration, simplification, evaluation, and code generation for reductions
* Each operator now has unique indexes to avoid conflicts when replacing iterator crefs
* We can now simplify user-defined operators
* Added a new kind of mode for reductions: DAE.THREAD(), as opposed to the standard DAE.COMBINE()
- When we have multiple iterators, the default DAE.COMBINE() is used and iterates over all combinations of the expressions in the iterators. DAE.THREAD() instead assumes the arrays have equal length and folds over the reduction expression with the n-th expression in each iterator at a time. Used by operator overloading to implement element-wise and `sum` operations.
* This changes the DAE slightly
- Implemented DAE.FuncArg as a uniontype instead of tuple (DAE change)
- Some better simplification for ASUB (ranges and reductions)
- And some more things. Hopefully the major changes are all listed.
2307 lines of code changed in 1 file:
- added rule
a - (-b)*c = a + b*c
5 lines of code changed in 1 file:
- added rule
- x*x = x^2
motivation: simplification for derivations as for expression evaluation
71 lines of code changed in 1 file:
[Janitor mode] Fix whitespace
2 lines of code changed in 1 file:
Fix unparsing of newlines in string comments
1 lines of code changed in 1 file:
- update tests
5 lines of code changed in 1 file:
- added rules for signum
- added rule for e/exp(e1) => e * exp(-e1)
5 lines of code changed in 1 file:
- added rule for sqrt(c*e) => c1*sqrt(e)
3 lines of code changed in 1 file:
added rule for (e * e1) * e => e1*e^2
3 lines of code changed in 1 file:
- fixed a + a = 2*a
3 lines of code changed in 1 file:
Use Absyn.pathCompare(...) instead of stringCompare(pathString...)
198 lines of code changed in 1 file:
Added targets to bootstrap with the new build system (Compiler/boot)
0 lines of code changed in 1 file:
Fix for #2587:
- Added simplification rules -{e1, e2, ...} => {-e1, -e2, ...} and -[e1, e2, ...] => [-e1, e2, ...].
- Improved Static.elabMatrixCatTwoExp so it handles more cases.
12 lines of code changed in 1 file:
- simplify rule x/r = x *(1/r) with test of numerical issues
can someone have a look of
./simulation/libraries/3rdParty/ThermoSysPro/ThermoSysPro.Examples.SimpleExamples.TestJunctions4.mos
25 lines of code changed in 2 files:
- move warnings for parameters from front end to back end
- get rid of false warnings
2 lines of code changed in 1 file:
Fix #2566 in the FrontEnd
- report parameter T p(start = value, fixed = true) and use the start value.
6 lines of code changed in 1 file:
- Changed DAEDump to always print out modifications after the variable name
instead of after the type name.
1 lines of code changed in 1 file:
(21 more)