Changeset 18452


Ignore:
Timestamp:
2013-12-10T11:35:10+01:00 (10 years ago)
Author:
vitalij
Message:
  • partial fix for gradient
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SimulationRuntime/c/optimization/mainOptimizer/ipoptODE.c

    r18359 r18452  
    6767  iData->current_time = 0;
    6868  iData->data = data;
    69   iData->mayer_index = 0;
    70   iData->lagrange_index = 1;
    71 
    7269  iData->mayer = (short) (mayer(data, &obj) >= 0);
    7370  iData->lagrange = (short) (lagrange(data, &obj) >= 0);
     71
     72  iData->mayer_index = 0;
     73  iData->lagrange_index = (iData->mayer)? 1 : 0;
    7474
    7575  iData->matrixA = data->callback->initialAnalyticJacobianA((void*) iData->data);
     
    136136    AddIpoptIntOption(nlp, "max_iter", 5000);
    137137
    138     for(i=0, tmp = 1;i<=4;++i){
    139         res = IpoptSolve(nlp, (*iData).v, NULL, &obj, (*iData).mult_g, (*iData).mult_x_L, (*iData).mult_x_U, (void*)iData);
    140         if(res!= Solve_Succeeded)
    141           {
    142             AddIpoptNumOption(nlp,"mu_init",tmp);
    143             tmp *=10.0;
    144             AddIpoptIntOption(nlp, "max_iter", 500);
    145           }else {break;}
    146     }
    147    
     138    res = IpoptSolve(nlp, (*iData).v, NULL, &obj, (*iData).mult_g, (*iData).mult_x_L, (*iData).mult_x_U, (void*)iData);
     139
    148140    FreeIpoptProblem(nlp);
    149141
Note: See TracChangeset for help on using the changeset viewer.