@@ -1866,22 +1866,26 @@ algorithm
18661866 list< tuple< DAE . ComponentRef ,Integer >> states;
18671867 BackendDAE . Assignments ass1,ass2;
18681868 array< BackendDAE . Value > vec1,vec2;
1869+ String smeqs;
18691870
18701871 case (BackendDAE . REDUCE_INDEX (),dae,m,mt,inFunctions,ass1,ass2,derivedAlgs,derivedMultiEqn,(so,orgEqnsLst))
18711872 equation
18721873 eqns = BackendDAEEXT . getMarkedEqns();
18731874 diff_eqns = BackendDAEEXT . getDifferentiatedEqns();
18741875 eqns_1 = Util . listSetDifferenceOnTrue(eqns, diff_eqns, intEq);
1875- print("marked equations:" );print(Util . stringDelimitList(Util . listMap(eqns_1,intString),"," ));
1876- print(" \n " );
1877- print(BackendDump . dumpMarkedEqns(dae, eqns));
1878-
1876+ Debug . fcall("bltdump" , print, "Reduce Index \n " );
1877+ Debug . fcall("bltdump" , print, "marked equations: " );
1878+ Debug . fcall("bltdump" , BackendDump . debuglst, (eqns_1,intString));
1879+ Debug . fcall("bltdump" , print, " \n " );
1880+ smeqs = BackendDump . dumpMarkedEqns(dae, eqns);
1881+ Debug . fcall("bltdump" , print, smeqs);
18791882 (dae,deqns,derivedAlgs1,derivedMultiEqn1,orgEqns,so1) = differentiateEqnsX(dae,eqns_1,inFunctions,derivedAlgs,derivedMultiEqn,so);
18801883 // dae = replaceStateOrder(deqns,dae,so1);
1881- print("Update Incidence Matrix: " ); BackendDump . debuglst((deqns,intString)); print(" \n " );
1884+ Debug . fcall("bltdump" , print, "Update Incidence Matrix: " );
1885+ Debug . fcall("bltdump" , BackendDump . debuglst,(deqns,intString));
1886+ Debug . fcall("bltdump" , print, " \n " );
18821887 (m,mt) = BackendDAEUtil . updateIncidenceMatrix(dae, m, mt, deqns);
1883- print("new DAE:" );
1884- BackendDump . dump(dae);
1888+ Debug . fcall("bltdump" , BackendDump . dump, dae);
18851889 then
18861890 (dae,m,mt,ass1,ass2,derivedAlgs1,derivedMultiEqn1,(so1,orgEqns::orgEqnsLst));
18871891
@@ -1892,22 +1896,18 @@ algorithm
18921896 equation
18931897 vec1 = assignmentsVector(ass1);
18941898 vec2 = assignmentsVector(ass2);
1895- BackendDump . dumpMatching(vec1);
1896- BackendDump . dumpMatching(vec2);
1899+ Debug . fcall("bltdump" , print, "Reduce Index Endstep \n " );
1900+ Debug . fcall("bltdump" , BackendDump . dumpMatching, vec1);
1901+ Debug . fcall("bltdump" , BackendDump . dumpMatching, vec2);
18971902 (orgEqnsLst1,ae1,al1,wclst1) = replaceStateOrderOrgEqns(orgEqnsLst,ae,al,wclst,so);
1898- dumpEqnsX( orgEqnsLst);
1899- dumpStateOrder( so);
1903+ Debug . fcall( "bltdump" , dumpEqnsX, orgEqnsLst);
1904+ Debug . fcall( "bltdump" , dumpStateOrder, so);
19001905 states = statesCandidates(dae,so);
19011906 (dae,m,mt,states,ass1,ass2) = selectDummyStates(orgEqnsLst1,so,dae,m,mt,states,ass1,ass2);
1902- print("new DAE:" );
1903- BackendDump . dump(dae);
1904- BackendDump . dumpIncidenceMatrix(m);
1905- BackendDump . dumpIncidenceMatrixT(mt);
19061907 vec1 = assignmentsVector(ass1);
19071908 vec2 = assignmentsVector(ass2);
1908- BackendDump . dumpMatching(vec1);
1909- BackendDump . dumpMatching(vec2);
1910- then (dae,m,mt,ass1,ass2,derivedAlgs,derivedMultiEqn,(so,orgEqnsLst));
1909+ Debug . fcall("bltdump" , BackendDump . bltdump, ("new DAE:" ,dae,m,mt,vec1,vec2,{}));
1910+ then (dae,m,mt,ass1,ass2,derivedAlgs,derivedMultiEqn,(so,orgEqnsLst));
19111911
19121912 case (BackendDAE . REDUCE_INDEX (),dae,m,mt,_,_,_,_,_,_)
19131913 equation
@@ -1928,7 +1928,7 @@ algorithm
19281928 then
19291929 fail();
19301930
1931- case (_,_,_,_,_,_,_,_,_,_)
1931+ else
19321932 equation
19331933 Error . addMessage(Error . INTERNAL_ERROR , {"- BackendDAETransform.reduceIndexDummyDerX failed!" });
19341934 then
@@ -2026,15 +2026,15 @@ algorithm
20262026 Integer leneqns;
20272027 case (false ,inEquationArray,inInteger,inEquation)
20282028 equation
2029- print( " Replace Eqn with diffeqn " ); print(intString( inInteger)); print( " \n " );
2029+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStr, (( " Replace Eqn with diffeqn " ), inInteger, " \n " ));
20302030 eqns = BackendEquation . equationSetnth(inEquationArray,inInteger- 1 ,inEquation);
20312031 then
20322032 (inInteger,eqns);
20332033 case (true ,inEquationArray,inInteger,inEquation)
20342034 equation
20352035 eqns = BackendEquation . equationAdd(inEquation,inEquationArray);
20362036 leneqns = BackendDAEUtil . equationSize(eqns);
2037- print( " Add diffEqn " ); print(intString( leneqns)); print( " old eqn" ); print(intString( inInteger)); print( " \n " );
2037+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, (( " Add diffEqn " ), leneqns, " old eqn" , inInteger, " \n " ));
20382038 BackendDAEEXT . markDifferentiated(inInteger) "length gives index of new equation Mark equation as differentiated so it won \' t be differentiated again" ;
20392039 then
20402040 (leneqns,eqns);
@@ -2165,20 +2165,21 @@ algorithm
21652165 case ({},inStateOrd,inBackendDAE,m,mt,inStates,ass1,ass2) then (inBackendDAE,m,mt,inStates,ass1,ass2);
21662166 case ((e,orgeqn)::rest,inStateOrd,(dae as BackendDAE . DAE (v,kv,ev,av,eqns,seqns,ie,ae,al,BackendDAE . EVENT_INFO (wclst,zc),eoc)),m,mt,inStates,ass1,ass2)
21672167 equation
2168- print("Select Dummy State from Eqn " ); print(intString(e)); print(" " ); print(BackendDump . equationStr(orgeqn)); print(" \n " );
2168+ Debug . fcall("bltdump" , BackendDump . debugStrIntStr, (("Select Dummy State from Eqn " ),e," " ));
2169+ Debug . fcall("bltdump" , print ,BackendDump . equationStr(orgeqn));
21692170 // get candidates
21702171 str = Util . stringDelimitList(Util . listMap(inStates,dumpStates)," : " );
2171- print( "Candidates : "); print( str); print( " \n " );
2172+ Debug . fcall( "bltdump" , print, " \n Candidates : " +& str +& " \n " );
21722173 // get Jacobian
21732174 jac = calculateJacobian(orgeqn,ae,al,inStates);
21742175 str = Util . stringDelimitList(Util . listMap(jac,ExpressionDump . printExpStr)," : " );
2175- print( " Jac: "); print( str); print( " \n " );
2176+ Debug . fcall( "bltdump" , print, " Jac: " +& str +& " \n " );
21762177 // analyse jac -> get dummy derivative candidate
21772178 (dummydercand,dyndummydercand) = analyseJac(jac,inStates);
21782179 str = Util . stringDelimitList(Util . listMap(dummydercand,dumpStates1)," : " );
2179- print( " Dummy DerCandidates: "); print( str); print( " \n " );
2180+ Debug . fcall( "bltdump" , print, " Dummy DerCandidates: " +& str +& " \n " );
21802181 str = Util . stringDelimitList(Util . listMap(dyndummydercand,dumpStates1)," : " );
2181- print( " Dynamic DummyDer Candidates: "); print( str); print( " \n " );
2182+ Debug . fcall( "bltdump" , print, " Dynamic DummyDer Candidates: " +& str +& " \n " );
21822183 // add derived equation at the end
21832184 eqns_1 = BackendEquation . equationAdd(orgeqn,eqns);
21842185 ep = arrayLength(m)+ 1 ;
@@ -2238,9 +2239,9 @@ algorithm
22382239 ass1 = assignmentsExpand(ass1, 1 );
22392240 ass2 = assignmentsExpand(ass2, 1 );
22402241 ast = getAssigned(stateno,ass1,ass2);
2241- print( "Assign: " ); print(intString(stateno)); print( " " ); print(intString(ep)); print( " \n " );
2242+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,stateno, " " ,ep, " \n " ) );
22422243 (ass1,ass2) = assign(stateno, ep, ass1, ass2);
2243- print( "Assign: " ); print(intString(ep)); print( " " ); print(intString( ast)); print( " \n " );
2244+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,ep, " " , ast, " \n " ) );
22442245 (ass1,ass2) = assign(ep, ast, ass1, ass2);
22452246 then
22462247 (dae,m,mt,states,ass1,ass2);
@@ -2283,23 +2284,25 @@ algorithm
22832284 ep1 = ep+ 1 ;
22842285 ep2 = ep+ 2 ;
22852286 ep3 = ep+ 3 ;
2286- print("Update Incidence Matrix: " ); BackendDump . debuglst(({ep1,ep2,ep3},intString)); print(" \n " );
2287+ Debug . fcall("bltdump" , print, "Update Incidence Matrix: " );
2288+ Debug . fcall("bltdump" , BackendDump . debuglst,({ep1,ep2,ep3},intString));
2289+ Debug . fcall("bltdump" , print, " \n " );
22872290 (m,mt) = BackendDAEUtil . updateIncidenceMatrix(dae, m, mt, {ep1,ep2,ep3});
22882291 ass1 = assignmentsExpand(ass1, 4 );
22892292 ass2 = assignmentsExpand(ass2, 4 );
22902293 ast = getAssigned(stateno,ass1,ass2);
22912294 ast1 = getAssigned(stateno1,ass1,ass2);
2292- print( "Assign: " ); print(intString(stateno)); print( " " ); print(intString(ep)); print( " \n " );
2295+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,stateno, " " ,ep, " \n " ) );
22932296 (ass1,ass2) = assign(stateno, ep, ass1, ass2);
2294- print( "Assign: " ); print(intString(stateno1)); print( " " ); print(intString( ep1)); print( " \n " );
2297+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,stateno1, " " , ep1, " \n " ) );
22952298 (ass1,ass2) = assign(stateno1, ep1, ass1, ass2);
2296- print( "Assign: " ); print(intString(ep)); print( " " ); print(intString( ast)); print( " \n " );
2299+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,ep, " " , ast, " \n " ) );
22972300 (ass1,ass2) = assign(ep, ast, ass1, ass2);
2298- print( "Assign: " ); print(intString(ep1)); print( " " ); print(intString( ast1)); print( " \n " );
2301+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " ,ep1, " " , ast1, " \n " ) );
22992302 (ass1,ass2) = assign(ep1, ast1, ass1, ass2);
2300- print( "Assign: " ); print(intString(ep2)); print( " " ); print(intString( ep2)); print( " \n " );
2303+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " , ep2, " " ,ep2, " \n " ) );
23012304 (ass1,ass2) = assign(ep2, ep2, ass1, ass2);
2302- print( "Assign: " ); print(intString(ep3)); print( " " ); print(intString( ep3)); print( " \n " );
2305+ Debug . fcall( "bltdump" , BackendDump . debugStrIntStrIntString, ( "Assign: " , ep3, " " ,ep3, " \n " ) );
23032306 (ass1,ass2) = assign(ep3, ep3, ass1, ass2);
23042307 then
23052308 (dae,m,mt,states,ass1,ass2);
@@ -2378,10 +2381,12 @@ algorithm
23782381 case (dummystates,stateindx,dae,m,mt,states,inStateOrd)
23792382 equation
23802383 (state,stateno) = selectDummyState(dummystates, stateindx, dae, m, mt);
2381- print("Selected " );print(ComponentReference . printComponentRefStr(state));print(" as dummy state \n " );
2382- print(" From candidates:" );print(Util . stringDelimitList(Util . listMap(dummystates,ComponentReference . printComponentRefStr),", " ));print(" \n " );
2384+ Debug . fcall("bltdump" , BackendDump . debugStrCrefStr, ("Selected " ,state," as dummy state \n " ));
2385+ Debug . fcall("bltdump" , print ," From candidates:" );
2386+ Debug . fcall("bltdump" , BackendDump . debuglst ,(dummystates,ComponentReference . printComponentRefStr));
2387+ Debug . fcall("bltdump" , print ," \n " );
23832388 (dummy_der,dae) = newDummyVar(state, dae, DAE . NEW_DUMMY_DER (state,dummystates));
2384- print ("Chosen dummy: " );print( ComponentReference . printComponentRefStr( dummy_der));print( " \n " );
2389+ Debug . fcall( "bltdump" , BackendDump . debugStrCrefStr, ("Chosen dummy: " , dummy_der, " as dummy state \n " ) );
23852390 changedeqns = BackendDAEUtil . eqnsForVarWithStates(mt, stateno);
23862391 stateexp = Expression . crefExp(state);
23872392 tp = Expression . typeof(stateexp);
@@ -2390,13 +2395,15 @@ algorithm
23902395 (dae,m,mt) = replaceDummyDer(stateexpcall, dummyderexp, dae, m, mt, changedeqns)
23912396 "We need to change variables in the differentiated equations and in the equations having the dummy derivative" ;
23922397 dae = makeAlgebraic(dae, state);
2393- print("Update Incidence Matrix: " ); BackendDump . debuglst((changedeqns,intString)); print(" \n " );
2398+ Debug . fcall("bltdump" , print ,"Update Incidence Matrix: " );
2399+ Debug . fcall("bltdump" , BackendDump . debuglst, (changedeqns,intString));
2400+ Debug . fcall("bltdump" , print ," \n " );
23942401 (m,mt) = BackendDAEUtil . updateIncidenceMatrix(dae, m, mt, changedeqns);
23952402 // update statecandidates
23962403 states = updateStateCandidates(state,states,inStateOrd,BackendVariable . daeVars(dae));
23972404 then
23982405 (dae,m,mt,states,state,dummy_der,stateno);
2399- case (_,_,_,_,_,_,_)
2406+ else
24002407 equation
24012408 print("selectDummyDerivative failed" );
24022409 then fail();
0 commit comments