From 9a1798243dca65df97ac3f42a1d807a57156aa0c Mon Sep 17 00:00:00 2001 From: Niklas Worschech Date: Wed, 2 Sep 2015 15:53:10 +0200 Subject: [PATCH] fix in cpp runtime isConsistent method --- Compiler/Template/CodegenCpp.tpl | 8 ++++---- .../cpp/Core/System/SystemDefaultImplementation.cpp | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Compiler/Template/CodegenCpp.tpl b/Compiler/Template/CodegenCpp.tpl index 0effbddc186..c08d8e608e6 100644 --- a/Compiler/Template/CodegenCpp.tpl +++ b/Compiler/Template/CodegenCpp.tpl @@ -12395,9 +12395,9 @@ template initialAnalyticJacobians(Integer indexJacobian, list ja let type = getConfigString(MATRIX_FORMAT) let matrixinit = match type case ("dense") then - 'ublas::zero_matrix (<%index_%>,<%indexColumn%>)' + 'ublas::zero_matrix (<%indexColumn%>,<%index_%>)' case ("sparse") then - '<%index_%>,<%indexColumn%>,<%sp_size_index%>' + '<%indexColumn%>,<%index_%>,<%sp_size_index%>' else "A matrix type is not supported" end match << @@ -12561,8 +12561,8 @@ case _ then ;separator="\n") let jacvals = ( sparsepattern |> (index,indexes) hasindex index0 => let jaccol = ( indexes |> i_index hasindex index1 => - (match indexColumn case "1" then '_<%matrixName%>jacobian(<%index%>,0) = _<%matrixName%>jac_y(0);/*test1<%index0%>,<%index1%>*/' - else '_<%matrixName%>jacobian(<%index%>,<%i_index%>) = _<%matrixName%>jac_y(<%i_index%>);/*test2<%index0%>,<%index1%>*/' + (match indexColumn case "1" then '_<%matrixName%>jacobian(0,<%index%>) = _<%matrixName%>jac_y(0);/*test1<%index0%>,<%index1%>*/' + else '_<%matrixName%>jacobian(<%i_index%>,<%index%>) = _<%matrixName%>jac_y(<%i_index%>);/*test2<%index0%>,<%index1%>*/' ) ;separator="\n" ) '_<%matrixName%>jac_x(<%index0%>) = 1; diff --git a/SimulationRuntime/cpp/Core/System/SystemDefaultImplementation.cpp b/SimulationRuntime/cpp/Core/System/SystemDefaultImplementation.cpp index fcd69868bf1..bb95a0c2bf1 100644 --- a/SimulationRuntime/cpp/Core/System/SystemDefaultImplementation.cpp +++ b/SimulationRuntime/cpp/Core/System/SystemDefaultImplementation.cpp @@ -188,7 +188,7 @@ void SystemDefaultImplementation::initialize() _conditions0= new bool[_dimZeroFunc]; memset(_conditions,false,(_dimZeroFunc)*sizeof(bool)); - + _event_system = dynamic_cast(this); } if(_dimTimeEvent > 0) { @@ -205,7 +205,7 @@ void SystemDefaultImplementation::initialize() _start_time = 0.0; _terminal = false; _terminate = false; - _event_system = dynamic_cast(this); + }; @@ -282,7 +282,7 @@ boost::shared_ptr SystemDefaultImplementation::getSimData() bool SystemDefaultImplementation::isConsistent() { - if(_event_system) + if(_dimZeroFunc > 0) { getConditions(_conditions0); IContinuous::UPDATETYPE pre_call_type=_callType;