Novice's question

From: Airat A. Sadreev (airat@hq.tatenergo.ru)
Date: Wed Oct 13 1999 - 07:50:43 MEST


Thank you for reply and excuse my poor English.
>
> > I need some help to decide: "to use or not to use".
>
>   What you said "developing system for storing and handling
>   the geophysical data ". It is not enough to give you any advice.

The system for storing and handling the oil wells data. The system is
developed for small research enterprise.
Number of wells: ~1000. On each well there are many additional information:
  well's name, well's owner, ...
On each well is made several investigation. One investigation is called
interval. Interval is described as follows:

struct TSample { // one measurement
  double h; // height
  double a; // azimuth angle. May be missing in some packets due the well
state.
  double u; // polar angle
};

class TInterval {
  double fFromHeigth; // interval's begin height
  double fToHeight;   // interval's end height
  int fDeviceType;    // type of measurement device
  TDate fDate;        // date of investigation
  int fN;             // number of samples
  TSample fData[];    // bundle of samples. fData[0].h = fFromHeight,
fData[fN - 1] = fToHeight
  ... etc
};

Intervals can overlap;
At given well there are up to 100 intervals with up to 100 samples per
interval.

    well
----|----|----------- ground level
    |    | ---------- fFromHeight
    |    | interval 0
    |    |            --------------------
    |    |
h   |    | ---------- fToHight
    |    |
    |    |                  interval 1
    |    |                                --------------------
    |    |
    |    |            --------------------
    |    |
    |    |                                    interval 3
    |    |
    |    |                                 --------------------
    |    |
    |    |
    |    |



The data processing consists of next steps (this is the simplest case):
    1. Calculate missing azimuth angle values (see TSample). There is some
kind of approximation.
    2. Aggregate samples on given height from multiple intervals into one
sample (some kind of average)
    3. Calculate measurement errors for each sample, basing on measurement
device parameters
    4. Convert the packet (h, u, a) into Cartesian coordinates (x, y, z)
It's desirable that each step is implemented by single program (class,
component, ...) so user can write script to define it's own processing
sequence.

Is ROOT I/O system good enough to store such kind of data or it maybe better
to use some relation DBMS.

Once more question.
 The ROOT has it's own GUI subsystem. If I'm using MSVC, what should I use:
MFC or ROOT GUI?

Thank you.

P.S.
  Valeri, do you speak Russian?



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:40 MET