Cette page appartient aux archives web de l'EPFL et n'est plus tenue à jour.
This page belongs to EPFL's web archive and is no longer updated.


Cost index and heat transfer coefficients

Hello all, 

I have two things. 

1 - As Adriano noticed eiampl_calculateStreamsHTC gives unlikely results for the heat transfer coefficient. So I changed the equation and default values to match the ones in Martin thesis. As this will effect everybody who uses heat integration quite a bit, is anybody up to do a double check before I commit the changes? Also does anybody know where the default value for the cost per square meter for the HEN comes from (8.8k$)? 

2- The year index most of us use (M&S) has not been updated since 2011 and up to now we don't have the new values. I therefore added the option in the cost_defaults to select which index we want to use (M&S, CEPCI, or DCCI)  and the cost functions have to be slightly modified. If anybody wants this option please let me know and I will pass it on. 




Posted by Emanuela Peduzzi at 17:43
Osmose_is_empty... the bad guy!

Hi there, 

I've been doing some profiling of Osmose and the function that kept most of the time of calculation is : Osmose_is_empty


the results of the profiling shows that more or less one third of the total time of a one run is used in this function. 

As you can see in the attached pdf this function is called about 400'000 times for a one run calculation, these checks are all over Osmose so it will take quite a time to eliminate the unnecesary ones. 

Claude RERAT has improved this function and we got much better results in term of time (cf attached pdf) and we can improve even further if the figures and graphviz figures are turned off (next bad guy in the list)

you can also see that depending on the format of figures, the total time can vary significantly..

I did a Benchmark with the models I have available, and the improved function of Osmose_is_empty seems to work quite well, However I can not guarantee that for everyone of you is going to be painless.. 




Posted by Leandro Sebastian Salgueiro Hartard at 13:48
Multi Period with changing constants

What I want to to:

Multi Period EI with different geographical zones


Each zone represented as a Multi-Period CC needs to be fixed as o.Constants before starting the run. However o.Constants will change with every run in the MOO or Sensi.

Proposed Solution:

in order to stay in the ET syntax I propose to change osmose_appendModel.m lines 32 and following to:

%% Model loading
o = osmose_addToStructure(o,'Model',model);
if osmose_is_defined(model, 'Constants')
    o = osmose_addToStructure(o,'Constants',model.Constants);

That way for example energis can write the model file with the Multi Period values as technology.Constants(i).Period(p).Value = {PeriodValue} and they will be recognized.

(alternative would writing a front - front end or changing the use of o.constants to normal model tags (= modification of one line in purge tags) but might influence the way you work e.g. adaptation of your frontend )

What is the best solution ?

Posted by Jakob Rager at 9:34
purge tags

hi everybody,

could you please let me know if the function  osmose_purge_tags(o,'global') in line 13 of your osmose_comunicator is activated?

If I activate it with my models, all tags are deleted... (so the question is: is that only my problem or have you all deactivated it ?)

the other osmose_purge_tags(0) are still activated.

thanks for your feedback



Posted by Jakob Rager at 17:03
Comments (2)
heat exchange surface and other problems in eiampl


We discovered some problems with the calculation of the heat exchange area and the results from eiampl and easy were quite different. 


I corrected the equation in osmose and I modified the default values. 

The results are still not the same but almost similar. I recognized the the result is very sensitive to the default values.

François when you can check the default values in easy it would be great (href, dtref & gamma).



At the same time I discovered following problems and bugs in osmose :


1.  the equation which is used for the optimization of the dtmin is not correct. (please be careful when you do this kind of optimization) 


2.  for a stream definition with dtmin = -1 and a defined heat transfer coefficient, the dtmin is never calculated and the dtmin of hot and cold streams are not correct parsed for the eiampl_input file.  (Cold streams are shifted by -1°C and hot streams by +1°C). 

For the moment it is not possible to do a correct calculation with eiampl when no dtmin is defined ! 



Posted by Helen Becker at 14:33
Comments (1)
objective function in eiampl

From today you can chose the new objective function 'YearlyTotalCost' . 


o.Eiampl.Objective = {'YearlyTotalCost'};


It optimizes the yearly operating costs and the investment cost given in fields cinv1 and cinv2.  Just be careful with the definition of these fields: it should be the annualized investment costs.


Have a nice Christmas and see you next year !


Posted by Helen Becker at 16:22
Changing the Date of Documentation Meeting?

Hello everybody,

looking at the abscences for friday (and taking into consideration our nicely loaded agendas...), I propose that we move the meeting to friday the 10.12, 16h ?

Please let me know if this might work for you, thank you and have a great evening.


Posted by Jakob Rager at 16:54
Comments (2)
comments osmose doc


As discussed during the last meeting I updated the doc with regard to Aspen usage by adding some sections to explain the model definition and the tags definition based on imported/exported variables.  Aspen users, please let me know if you think that further information have to be added.

Moreover, I updated throughout the doc the svn paths to https:// lenisvn.epfl.ch/svn/…. 


Here below some things I noticed and which I think have to be addressed and updated in our next meetings:

- With regard to EASY/EIampl usage some paragraphs have still to be updated:  4.5.4 Energy Integration Model and 5.5 Energy integration model definition

- Figure 4.5: Osmose model general structure could also be modified for easy/eiampl . I don’t know exactly why but in the text there is also a problem with the reference to this figure (fig:model), the number isn’t the right one….

- chapter  4.7 Analysing data, link to chapter 8 results analysis

- chapter  4.8 Frontend usage, link to annex with detailed frontend example

- chapters 6.5 Multi-objective optimization and 6.6 Recomputing a Pareto curve have to be updated and completed to remove question marks ‘?’

- chapter 8 results analysis: could perhaps be updated with regard to quick tips?  8.2 Reporting ?

- annex:  include a detailed frontend example with brief comments

- Theory chapter: Throughout the doc it referred to a chapter entitled theory which is however not included. If you think it is relevant to add a theoretical part we have to update it otherwise we have to remove the links


Unfortunatly I can't attend the meeting on Friday, please excuse me.





Posted by Laurence Tock at 12:44
mod files for energy integration and hld



I changed the mod files for energy integration and hld, in order to be able to run the same file independently from the use of ampl and glpk. so from now on it is important to work only with the mod files (used for glpk before). If you use osmose it is done automatically.

I let the old mod files for ampl, if you need them for developing, but once you want to commit, commit only the glpk mod. files. 


so I hope I eliminated one source of error.


have a nice evening !



Posted by Helen Becker at 16:54
Minutes MP Meeting

Present:HBE, LGE, JRA

Meeting to define ongoing student projects

1. Implementation of .time is necessary in order to resolve problems with storage at once

2. Implementation phase into osmose and eiample : 10.-12.11.2010

3. Students will develope a simple test case with few interconnected periods in order to compare the osmose results with their own calculation (benchmarking)


Definition for OSMOSE:

.Period independ time intervalls

.time interconnected time intervalls

Both are defined by a certain time length in order to avoid date handling in the first test runs.


Next meeting to be defined.

EVERYBODY is welcome to join the implementation. (= to join means to productivily spend several hours with the implementation team)

Posted by Jakob Rager at 16:17
Comments (1)
Page : 1 2 3 Next