needed mods

- adding qtime setter
- formatting issues
This commit is contained in:
Sam Hatchett
2013-07-19 17:36:04 -04:00
parent ba82aee97d
commit 15d187433f
4 changed files with 73 additions and 55 deletions

View File

@@ -121,7 +121,6 @@
08FB7794FE84155DC02AAC07 /* epanet */ = { 08FB7794FE84155DC02AAC07 /* epanet */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
2298EBDB16B17DBD0088A6DC /* LemonTiger */,
22322FA8106836A000641384 /* Include */, 22322FA8106836A000641384 /* Include */,
08FB7795FE84155DC02AAC07 /* Source */, 08FB7795FE84155DC02AAC07 /* Source */,
1AB674ADFE9D54B511CA2CBB /* Products */, 1AB674ADFE9D54B511CA2CBB /* Products */,
@@ -132,12 +131,12 @@
08FB7795FE84155DC02AAC07 /* Source */ = { 08FB7795FE84155DC02AAC07 /* Source */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
22322F701068369500641384 /* enumstxt.h */,
22322F711068369500641384 /* epanet.c */, 22322F711068369500641384 /* epanet.c */,
22322F751068369500641384 /* hydraul.c */,
22322F701068369500641384 /* enumstxt.h */,
22322F721068369500641384 /* funcs.h */, 22322F721068369500641384 /* funcs.h */,
22322F731068369500641384 /* hash.c */, 22322F731068369500641384 /* hash.c */,
22322F741068369500641384 /* hash.h */, 22322F741068369500641384 /* hash.h */,
22322F751068369500641384 /* hydraul.c */,
22322F761068369500641384 /* inpfile.c */, 22322F761068369500641384 /* inpfile.c */,
22322F771068369500641384 /* input1.c */, 22322F771068369500641384 /* input1.c */,
22322F781068369500641384 /* input2.c */, 22322F781068369500641384 /* input2.c */,
@@ -174,13 +173,6 @@
name = Include; name = Include;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
2298EBDB16B17DBD0088A6DC /* LemonTiger */ = {
isa = PBXGroup;
children = (
);
name = LemonTiger;
sourceTree = "<group>";
};
/* End PBXGroup section */ /* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */ /* Begin PBXHeadersBuildPhase section */

View File

@@ -97,8 +97,9 @@
#define EN_PERIODS 9 #define EN_PERIODS 9
#define EN_STARTTIME 10 /* Added TNT 10/2/2009 */ #define EN_STARTTIME 10 /* Added TNT 10/2/2009 */
#define EN_HTIME 11 #define EN_HTIME 11
#define EN_HALTFLAG 12 #define EN_QTIME 12
#define EN_NEXTEVENT 13 #define EN_HALTFLAG 13
#define EN_NEXTEVENT 14
#define EN_ITERATIONS 0 #define EN_ITERATIONS 0
#define EN_RELATIVEERROR 1 #define EN_RELATIVEERROR 1
@@ -250,7 +251,7 @@ extern "C" {
int DLLEXPORT ENsettimeparam(int, long); int DLLEXPORT ENsettimeparam(int, long);
int DLLEXPORT ENsetoption(int, EN_API_FLOAT_TYPE); int DLLEXPORT ENsetoption(int, EN_API_FLOAT_TYPE);
int DLLEXPORT ENsetstatusreport(int); int DLLEXPORT ENsetstatusreport(int);
int DLLEXPORT ENsetqualtype(int, char *, char *, char *); int DLLEXPORT ENsetqualtype(int qualcode, char *chemname, char *chemunits, char *tracenode);
//LemonTiger functions //LemonTiger functions
/* See testLT.c for a LemonTiger test */ /* See testLT.c for a LemonTiger test */

View File

@@ -1974,7 +1974,7 @@ int DLLEXPORT ENsetnodevalue(int index, int code, EN_API_FLOAT_TYPE v)
if (j < 0 || j > Npats) return(205); if (j < 0 || j > Npats) return(205);
source->Pat = j; source->Pat = j;
} }
else else // code == EN_SOURCETYPE
{ {
j = ROUND(value); j = ROUND(value);
if ( j < CONCEN || j > FLOWPACED) return(251); if ( j < CONCEN || j > FLOWPACED) return(251);
@@ -2350,42 +2350,67 @@ int DLLEXPORT ENsettimeparam(int code, long value)
if (value < 0) return(202); if (value < 0) return(202);
switch(code) switch(code)
{ {
case EN_DURATION: Dur = value; case EN_DURATION:
Dur = value;
if (Rstart > Dur) Rstart = 0; if (Rstart > Dur) Rstart = 0;
break; break;
case EN_HYDSTEP: if (value == 0) return(202);
case EN_HYDSTEP:
if (value == 0) return(202);
Hstep = value; Hstep = value;
Hstep = MIN(Pstep, Hstep); Hstep = MIN(Pstep, Hstep);
Hstep = MIN(Rstep, Hstep); Hstep = MIN(Rstep, Hstep);
Qstep = MIN(Qstep, Hstep); Qstep = MIN(Qstep, Hstep);
break; break;
case EN_QUALSTEP: if (value == 0) return(202);
case EN_QUALSTEP:
if (value == 0) return(202);
Qstep = value; Qstep = value;
Qstep = MIN(Qstep, Hstep); Qstep = MIN(Qstep, Hstep);
break; break;
case EN_PATTERNSTEP: if (value == 0) return(202);
case EN_PATTERNSTEP:
if (value == 0) return(202);
Pstep = value; Pstep = value;
if (Hstep > Pstep) Hstep = Pstep; if (Hstep > Pstep) Hstep = Pstep;
break; break;
case EN_PATTERNSTART: Pstart = value;
case EN_PATTERNSTART:
Pstart = value;
break; break;
case EN_REPORTSTEP: if (value == 0) return(202);
case EN_REPORTSTEP:
if (value == 0) return(202);
Rstep = value; Rstep = value;
if (Hstep > Rstep) Hstep = Rstep; if (Hstep > Rstep) Hstep = Rstep;
break; break;
case EN_REPORTSTART: if (Rstart > Dur) return(202);
case EN_REPORTSTART:
if (Rstart > Dur) return(202);
Rstart = value; Rstart = value;
break; break;
case EN_RULESTEP: if (value == 0) return(202);
case EN_RULESTEP:
if (value == 0) return(202);
Rulestep = value; Rulestep = value;
Rulestep = MIN(Rulestep, Hstep); Rulestep = MIN(Rulestep, Hstep);
break; break;
case EN_STATISTIC: if (value > RANGE) return(202);
case EN_STATISTIC:
if (value > RANGE) return(202);
Tstatflag = (char)value; Tstatflag = (char)value;
break; break;
case EN_HTIME: Htime = value;
case EN_HTIME:
Htime = value;
break; break;
default: return(251);
case EN_QTIME:
Qtime = value;
break;
default:
return(251);
} }
return(0); return(0);
} }

View File

@@ -233,7 +233,7 @@ int runqual(long *t)
Htime = hydtime + hydstep; Htime = hydtime + hydstep;
} }
else { else {
// stepwise calculation // stepwise calculation - hydraulic results are already in memory
for (int i=1; i<= Ntanks; ++i) { for (int i=1; i<= Ntanks; ++i) {
QTankVolumes[i-1] = Tank[i].V; QTankVolumes[i-1] = Tank[i].V;
} }