/// <summary> /// Measure NH4 content inside a digester /// 1st measurement is Snh4 in g/l /// 2nd : Snh4 + NH4 in Xc in g/l /// /// type 5 /// </summary> /// <param name="myPlant"></param> /// <param name="x">ADM state vector</param> /// <param name="param">not used - but OK</param> /// <param name="par">not used</param> /// <returns></returns> override protected physValue[] doMeasurement(biogas.plant myPlant, double[] x, string param, params double[] par) { physValue[] values = new physValue[dimension]; // hier wird umrechnungsfaktor 18 genutzt, deshalb nur ammonium und nicht // ammonium nitrogen values[0] = ADMstate.calcFromADMstate(x, "Snh4", "g/l"); // // -2 wegen _2 bzw. _3 string digester_id = id.Substring(("Snh4_").Length, id.Length - 2 - ("Snh4_").Length); // kmol N/m^3 double NH4 = ADMstate.calcNH4(x, digester_id, myPlant); // // erstmal Snh4 nennen, damit convertUnit funktioniert // TODO - könnte es auch N nennen, dann wird allerdings nur mit 14 als // umrechnungsfaktor gerechnet und nicht wie jetzt mit 18. Vorsicht // bei vergleich mit Ntot, TKN und Norg, dort wird nur mit 14 gerechnet. // da ich die Größe ammonium nitrogen nenne, wird umrechnungsfaktor 14 genutzt values[1] = new physValue("N", NH4, "mol/l", "total ammonium nitrogen"); values[1] = values[1].convertUnit("g/l"); values[1].Symbol = "NH4"; return(values); }
/// <summary> /// Measure NH3 content inside a digester /// 1st measurement is Snh3 in g/l /// 2nd : Snh3 + NH3 in Xc in g/l /// /// type 5 /// </summary> /// <param name="myPlant"></param> /// <param name="x">ADM state vector</param> /// <param name="param">not used - but OK</param> /// <param name="par">not used</param> /// <returns></returns> override protected physValue[] doMeasurement(biogas.plant myPlant, double[] x, string param, params double[] par) { physValue[] values = new physValue[dimension]; // ammonia values[0] = ADMstate.calcFromADMstate(x, "Snh3", "g/l"); // // -2 wegen _2 bzw. _3 string digester_id = id.Substring(("Snh3_").Length, id.Length - 2 - ("Snh3_").Length); // kmol N/m^3 double NH3 = ADMstate.calcNH3(x, digester_id, myPlant); // // erstmal Snh3 nennen, damit convertUnit funktioniert // ammonia nitrogen, umrechnungsfaktor 14 values[1] = new physValue("N", NH3, "mol/l", "total ammonia nitrogen"); values[1] = values[1].convertUnit("g/l"); values[1].Symbol = "NH3"; return(values); }