Skip to content

Commit

Permalink
- fixed constraints scaling
Browse files Browse the repository at this point in the history
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@18747 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
Vitalij Ruge committed Jan 23, 2014
1 parent f5ba88d commit 57aba42
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 2 deletions.
6 changes: 5 additions & 1 deletion SimulationRuntime/c/optimization/constraints/evalfG.c
Expand Up @@ -180,14 +180,18 @@ int diff_functionODE(double* v, double t, IPOPT_DATA_ *iData, double **J)
double tmp;
double *x, *u;
long double rcal;
int nJ = iData->nx + iData->nc;
x = v;
u = v + iData->nx;

refreshSimData(x,u,t,iData);
diff_symColoredODE(v,t,iData,J);
for(i = 0;i<iData->nv;++i)
for(i = 0;i<iData->nv;++i){
for(j = 0; j <iData->nx; ++j)
J[j][i] *= iData->scalf[j]*iData->vnom[i];
for(; j <nJ; ++j)
J[j][i] *= iData->vnom[i];
}

/*
#ifdef JAC_ADOLC
Expand Down
4 changes: 3 additions & 1 deletion SimulationRuntime/c/optimization/lagrangeFun/ipopt_hessian.c
Expand Up @@ -193,7 +193,7 @@ static int sumLagrange(IPOPT_DATA_ *iData, double * erg,int ii, int i, int j, in
int nJ = (ii) ? iData->nx + iData->nc : iData->nx;
sum = 0.0;
if(iData->Hg[j][i])
for(l = 0; l<nJ; ++l)
for(l = 0; l<iData->nx; ++l)
sum += iData->H[l][i][j];

if(iData->lagrange){
Expand All @@ -203,6 +203,8 @@ static int sumLagrange(IPOPT_DATA_ *iData, double * erg,int ii, int i, int j, in
sum += iData->bl[p]*iData->oH[i][j];
}
sum = iData->dt[ii]*sum;
for(l = iData->nx; l<nJ; ++l)
sum += iData->H[l][i][j];
if(mayer_yes)
sum += iData->mH[i][j];

Expand Down

0 comments on commit 57aba42

Please sign in to comment.