Skip to content

Commit

Permalink
- fix for last commit, log messages needs memory in initData
Browse files Browse the repository at this point in the history
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@14277 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
Jens Frenkel committed Dec 7, 2012
1 parent 7f3d80e commit 1df0bd6
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
Expand Up @@ -432,11 +432,12 @@ static int initialize(DATA *data, int optiMethod)
INIT_DATA *initData = initializeInitData(data);

/* no initial values to calculate */
if(initData == NULL)
if(initData->nVars == 0)
{
INFO(LOG_INIT, "no variables to initialize");
/* call initial_residual to execute algorithms with no counted outputs, for examples external objects as used in modelica3d */
initial_residual(data, initData->initialResiduals);
free(initData);
return 0;
}

Expand Down Expand Up @@ -513,9 +514,10 @@ static int initialize(DATA *data, int optiMethod)
/* FIX */
initData = initializeInitData(data);
/* no initial values to calculate. (not possible to be here) */
if(initData == NULL)
if(initData->nVars == 0)
{
INFO(LOG_INIT, "no initial values to calculate");
free(initData);
return 0;
}
}
Expand Down
Expand Up @@ -87,8 +87,7 @@ INIT_DATA *initializeInitData(DATA *simData)

if(initData->nVars == 0)
{
free(initData);
return NULL;
return initData;
}

initData->vars = (double*)calloc(initData->nVars, sizeof(double));
Expand All @@ -112,7 +111,7 @@ INIT_DATA *initializeInitData(DATA *simData)
/* setup initData */
INFO(LOG_INIT, "initial problem:");
INFO3(LOG_INIT, "| number of unfixed variables: %ld (%ld states + %ld parameters)", initData->nVars, initData->nStates, initData->nParameters);

/* i: all states; j: all unfixed vars */
for(i=0, j=0; i<simData->modelData.nStates; ++i)
{
Expand Down Expand Up @@ -209,7 +208,7 @@ INIT_DATA *initializeInitData(DATA *simData)
* for(i=0; i<data->modelData.nVariablesReal; ++i)
* if(data->modelData.realVarsData[i].attribute.useStart)
* INFO3(LOG_INIT, "| | [%ld] Real %s(start=%g)", ++j, data->modelData.realVarsData[i].info.name, data->modelData.realVarsData[i].attribute.start);
*
*
* * for real parameters *
* for(i=0; i<data->modelData.nParametersReal; ++i)
* if(data->modelData.realParameterData[i].attribute.useStart && !data->modelData.realParameterData[i].attribute.fixed)
Expand Down

0 comments on commit 1df0bd6

Please sign in to comment.