Skip to content

Commit

Permalink
- keep original states in the inline-solver-system
Browse files Browse the repository at this point in the history
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@14498 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
lochel committed Dec 21, 2012
1 parent d073f5d commit dab021a
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 2 deletions.
3 changes: 1 addition & 2 deletions Compiler/BackEnd/BackendVariable.mo
Original file line number Diff line number Diff line change
Expand Up @@ -1669,8 +1669,7 @@ algorithm
outVars := List.map1(inVars,setVarKind,inVarKind);
end setVarsKind;

public function setVarKind
"function setVarKind
public function setVarKind "function setVarKind
author: PA
Sets the BackendDAE.VarKind of a variable"
input BackendDAE.Var inVar;
Expand Down
4 changes: 4 additions & 0 deletions Compiler/BackEnd/InlineSolver.mo
Original file line number Diff line number Diff line change
Expand Up @@ -364,6 +364,9 @@ algorithm

// state
case((var as BackendDAE.VAR(varName=cr, varKind=BackendDAE.STATE(), varType=ty, arryDim=arryDim), (vars, eqns,vars0))) equation
var = BackendVariable.setVarKind(var, BackendDAE.VARIABLE());
vars = BackendVariable.addVar(var, vars);

(x0,_) = stringCrVar("$t0", cr, ty, arryDim); // VarDirection = input
var = BackendDAE.VAR(x0, BackendDAE.VARIABLE(), DAE.INPUT(), DAE.NON_PARALLEL(), ty, NONE(), NONE(), arryDim, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
vars0 = BackendVariable.addVar(var, vars0);
Expand Down Expand Up @@ -400,6 +403,7 @@ algorithm
//eqn = eulerStep(x0,x1,derx0,dt,ty);
eqn = stepLobatt(x0, x1, x2, x3, x4, derx0, derx1, derx2, derx3, derx4,dt,ty);
eqns = BackendEquation.mergeEquationArray(eqn, eqns);
eqns = BackendEquation.equationAdd(BackendDAE.EQUATION(DAE.CREF(cr, ty), DAE.CREF(x4, ty), DAE.emptyElementSource, false), eqns);
then ((var, (vars, eqns,vars0)));

// else
Expand Down

0 comments on commit dab021a

Please sign in to comment.