Skip to content

Commit

Permalink
[Janitor mode] Fix tabs
Browse files Browse the repository at this point in the history
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@19229 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
OpenModelica-Hudson committed Feb 21, 2014
1 parent dd30eaf commit 55d0791
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 63 deletions.
Expand Up @@ -109,7 +109,7 @@ static int initial_guess_ipopt_sim(IPOPT_DATA_ *iData,SOLVER_INFO* solverInfo)
SIMULATION_INFO *sInfo = &(data->simulationInfo);

if(!data->simulationInfo.external_input.active)
externalInputallocate(data);
externalInputallocate(data);

/* Initial DASSL solver */
DASSL_DATA* dasslData = (DASSL_DATA*) malloc(sizeof(DASSL_DATA));
Expand Down
124 changes: 62 additions & 62 deletions SimulationRuntime/c/simulation/solver/external_input.c
Expand Up @@ -45,76 +45,76 @@

int externalInputallocate(DATA* data)
{
FILE * pFile;
int n,m,c;
int i,j;

pFile = fopen("externalInput.csv","r");
data->simulationInfo.external_input.active = (modelica_boolean) (pFile != NULL);
n = 0;
if(data->simulationInfo.external_input.active){
while(1) {
c = fgetc(pFile);
if (c==EOF) break;
if (c=='\n') ++n;
}
--n;
data->simulationInfo.external_input.n = n;
rewind(pFile);

do{
c = fgetc(pFile);
}while(c!='\n');

m = data->modelData.nInputVars;
data->simulationInfo.external_input.u = (modelica_real**)calloc(n,sizeof(modelica_real*));
for(i = 0; i<n; ++i)
data->simulationInfo.external_input.u[i] = (modelica_real*)calloc(m,sizeof(modelica_real));
data->simulationInfo.external_input.t = (modelica_real*)calloc(n,sizeof(modelica_real));

for(i = 0; i < n; ++i){
fscanf(pFile, "%f", &data->simulationInfo.external_input.t[i]);
for(j = 0; j < m; ++j){
fscanf(pFile, "%f", &data->simulationInfo.external_input.u[i][j]);
}
}
fclose(pFile);
data->simulationInfo.external_input.i = 0;
}

return 0;
FILE * pFile;
int n,m,c;
int i,j;

pFile = fopen("externalInput.csv","r");
data->simulationInfo.external_input.active = (modelica_boolean) (pFile != NULL);
n = 0;
if(data->simulationInfo.external_input.active){
while(1) {
c = fgetc(pFile);
if (c==EOF) break;
if (c=='\n') ++n;
}
--n;
data->simulationInfo.external_input.n = n;
rewind(pFile);

do{
c = fgetc(pFile);
}while(c!='\n');

m = data->modelData.nInputVars;
data->simulationInfo.external_input.u = (modelica_real**)calloc(n,sizeof(modelica_real*));
for(i = 0; i<n; ++i)
data->simulationInfo.external_input.u[i] = (modelica_real*)calloc(m,sizeof(modelica_real));
data->simulationInfo.external_input.t = (modelica_real*)calloc(n,sizeof(modelica_real));

for(i = 0; i < n; ++i){
fscanf(pFile, "%f", &data->simulationInfo.external_input.t[i]);
for(j = 0; j < m; ++j){
fscanf(pFile, "%f", &data->simulationInfo.external_input.u[i][j]);
}
}
fclose(pFile);
data->simulationInfo.external_input.i = 0;
}

return 0;
}

int externalInputFree(DATA* data)
{
if(data->simulationInfo.external_input.active){
int j;

free(data->simulationInfo.external_input.t);
for(j = 0; j < data->simulationInfo.external_input.n; ++j)
free(data->simulationInfo.external_input.u[j]);
free(data->simulationInfo.external_input.u);
}
return 0;
if(data->simulationInfo.external_input.active){
int j;

free(data->simulationInfo.external_input.t);
for(j = 0; j < data->simulationInfo.external_input.n; ++j)
free(data->simulationInfo.external_input.u[j]);
free(data->simulationInfo.external_input.u);
}
return 0;
}


int externalInputUpdate(DATA* data)
{
double t;
int i;
t = data->localData[0]->timeValue;
while(t > data->simulationInfo.external_input.t[data->simulationInfo.external_input.i+1]
&& data->simulationInfo.external_input.i < (data->simulationInfo.external_input.n-2)){
++data->simulationInfo.external_input.i;
}

data->simulationInfo.external_input.dt = (data->simulationInfo.external_input.t[data->simulationInfo.external_input.i+1] - data->simulationInfo.external_input.t[data->simulationInfo.external_input.i]);
for(i = 0; i < data->modelData.nInputVars; ++i){
data->simulationInfo.inputVars[i] =
data->simulationInfo.external_input.u[data->simulationInfo.external_input.i][i] +
data->simulationInfo.external_input.dt*(t -data->simulationInfo.external_input.t[data->simulationInfo.external_input.i])*
data->simulationInfo.external_input.u[data->simulationInfo.external_input.i+1][i];
}
double t;
int i;
t = data->localData[0]->timeValue;
while(t > data->simulationInfo.external_input.t[data->simulationInfo.external_input.i+1]
&& data->simulationInfo.external_input.i < (data->simulationInfo.external_input.n-2)){
++data->simulationInfo.external_input.i;
}

data->simulationInfo.external_input.dt = (data->simulationInfo.external_input.t[data->simulationInfo.external_input.i+1] - data->simulationInfo.external_input.t[data->simulationInfo.external_input.i]);
for(i = 0; i < data->modelData.nInputVars; ++i){
data->simulationInfo.inputVars[i] =
data->simulationInfo.external_input.u[data->simulationInfo.external_input.i][i] +
data->simulationInfo.external_input.dt*(t -data->simulationInfo.external_input.t[data->simulationInfo.external_input.i])*
data->simulationInfo.external_input.u[data->simulationInfo.external_input.i+1][i];
}
return 0;
}

0 comments on commit 55d0791

Please sign in to comment.