Is there a way to extract specific data from sim result?

6 posts / 0 new
Last post

Hi,dear Equesters!
Im currently doing my ph.d research using equest to analyse building energy
performance, i found its time consuming to find the data i need from sim
result, as the data i need almost the same for every simulation, do you
know a way to extract the specific text data(for importing to excel)
quickly by using some third party program maybe?

--
Best regards
Ivan

caselysun's picture
Offline
Joined: 2012-02-25
Reputation: 0

Hi, tiejun!
Thanks for your reply but I dont need the hourly data, i need annual system
peak loads, cooling and heating system loads for example, do you have a
idea how to automate the data extraction?

caselysun's picture
Offline
Joined: 2012-02-25
Reputation: 0

tirjun
but i dont want to check them manually, there are more than 2000 sim
files to check!

caselysun's picture
Offline
Joined: 2012-02-25
Reputation: 0

As others have pointed out, eQUEST runs DOE-2.2 which outputs a text
file originally renamed *.OUT in DOE-2 but now renamed *.SIM in
eQUEST. As a long-time DOE-2 user, I've written lots of awk scripts to
extract out the variables of interest from the *.OUT/*.SIM files. In
fact, I only look at the *.OUT/*.SIM file during the debugging phase of
a project, or when some results look suspicious.

I don't know how many people still use awk, but I've found it absolutely
indispensible in my work (no exaggeration). Basically, awk is a
scripting language with C-like syntax, but more contextual than formal
languages like C or Fortran, i.e., you don't have to define variable
types, set array sizes, etc.

When I use awk to extract data from a *.OUT/*.SIM file, I basically do a
pattern search for the title of the report (SS-A, SS-H, etc.), and when
I find it, I start counting lines. Then, when I get to the correct line
number, I pull out the variables of interest, which in awk are simply
the strings with a blank as the "field separator". I've done this so
many times that it takes me only a few minutes to write an awk script
for what you're trying to do. For your info, I'm attaching a sample
awk script that I use to pull out the heating and cooling loads and peak
loads from an SS-H file.

Awk has been around since the 1980's. I'm sure you can do the same with
Ppython, Perl, VB, etc., but I've never felt the need because awk
worked so well for me.

Joe

Joe Huang's picture
Offline
Joined: 2011-09-30
Reputation: 406

Hi Joe

Im trying to do configuration perturbation analyse like you and your
colleague did before, there's large amount of simulations to do and thats
why i need to automate some data process, finally i got a solution from the
specialist like you.

Thanks!

caselysun's picture
Offline
Joined: 2012-02-25
Reputation: 0

Ivan,

After sending my previous post, I realized that the example sshF.awk script actually did
not search for the report title and count lines, but rather just picked out the exact
lines because they had unique patterns ( 0TOTAL, 0MAX). Therefore, I'm attaching this
time two other awk scripts, one that picks out the total annual heating and cooling energy
consumptions from the SS-F report, which counts lines, and another that picks out the
annual end-uses from the BEPS report, which doesn't count lines but looks for the end-use
names. I think those show better the "technique" that I use to extract data from
DOE-2/eQUEST *.OUT/*.SIM files.

To run these awk scripts, you need of course a copy of awk, of which there are many
version freely available on the Web. Then, to run it on a file, just type in a command
line terminal:

awk -f [awk script name] [any options] = [option name] [name of file to be
processed] > [name of output file]

If "> [name of output file]" is left off, the result will just appear on the monitor.
For example, If you were to run ssf.awk to get total annual loads, type

awk -f ssf.awk yourfile.SIM > yourfile.SSF

If you want the loads normalized per square foot, type

awk -f ssf.awk o=sf yourfile.SIM > yourfile.SSF.a

Joe

Joe Huang

Joe Huang's picture
Offline
Joined: 2011-09-30
Reputation: 406