gtool4/Fortran 90 tools tutorials

At first, a goal for gtool4

2001-09-25 TOYODA Eizi


gtool4 is the software to visualize the numerical value data of the multiple dimensions and to operate it. The software called a visualization tool has already been in the world abundantly. But, we (the developer of gtool4) thought that gtool4 should be created. In other words, the goal that we want to realize it for that reason through gtool4 from now is introduced.

What is the multi-dimensional numerical data?

The word of the multiple dimensions came out first. We are making that unified handling can be done a goal as for the data as well that a position is almost the same number as the data so that it may be seen by not only rule lattice data but also observation and the lattice data which have irregular arrangement well.

There are only a line graph and a contour figure in the implementation of the processor at present.
The specifications of the file form are only decided, and the support of the non-structure lattice hasn't been completed.

Background

We are researchers such as the nucleus of the earth fluid science people concerned, that is, the weather, ocean, planet atmosphere, and solid earth. We usually exchange large quantities of data, and we are doing work. It is in such cases as the data that it was calculated in the center of the distant computer by using the data which it could get, them as the data that for example a stranger observed it, the result of the calculation that it is theoretical.

The data which we handle become huge along with the ability improvement of the computer and the development of the observation means year by year. It became it made the huge file that it was difficult even to deal with even a super computer for 10 years front by the notebook personal computer and kept it and it can did it. Not only hugeness but also the kind of data to deal with and the complexity of the calculation increase markedly, too.

An old person said "A quantitative change brought about a qualitative change at last.". A human brain punctures if the treatment which is too complicated is being done in the data which are too abundant. It becomes difficult to exchange data for the stranger and to take over work to the stranger and to explain even if it is somehow if it is done alone. Or, even one forgets it. This is that it can't be solved with a emotional argument like "Because it isn't understood seriously, it is improper." and so on.

The plan of "the virtual laboratory" is proposed caused by the computer and the progress of the network. It is easy for the people who can take a communication from the first to disperse. But, you must make the virtual laboratory of sincerity that people are gathered soon useful the data, knowledge, program collected from the stranger by using the network for yourself by using the network to compose it.

So, we think that you must create a new standard about the processor of the expression of the knowledge which the form of the data, data were used for, the data and so on.

What do you want to improve?

Then, what should I make convenient? We think that it is necessary as follows.

portability

Is there an experience of not reading a file by the byte order and a machine dependency like a floating decimal point form when a file is taken to another machine? It is difficult to write a change program in that occasion. We want to make a file format to be machine-independent.

Self-description

Is there an experience of not understanding how you may decode data on earth or when it begins to look for the file made long ago by oneself and tries to use it when it gets a file from the stranger? It doesn't know the way of the drawing of decoding even if it is understood though it. Though it only wants the figure drawn in that document.... Is there often a thing, too? The information said like this can use the file which it got if it was made to circulate with the data soon.

Network transparency

There is it to want to share some of the data because it is a place to vary and works when data consist of more than one files. You have only to be able to seem to do data acquisition automatically at such time via the network. Because it gets out of the way now, a file common protocol will be HTTP. Then, when the outside reference function is increased in the file, it isn't close in the file name, and you had better generalize in URL. Like this, if it is made that it is the same, we are calling it the consideration of the network permeation that expansion to the network environment is taken into consideration.

In GUI environment that it is represented by MS-Windows and MacOS, viewer program can be registered corresponding to the kind of the data file in the visual shell. Clicking (Windows is double-clicking.) only does the icon of the file, and a program is started. Such a thing that a calculation can start from there will be possible if a figure is indicated and it downloads for example if a data file is indicated as one of the links of WWW and it clicks, too.

If saving labor can be attempted in this place, the time which does an information offer will be able to be sometimes added about the data form in no at all the working number of people.
The catch phrase of the gtool4 project is stated for such a reason.

The data file which a picture can be written in by one clicking.

How do you want to improve it?

We have a hitch to the way of the realization as well.

Openness/freedom

We make specifications open. We try so that it can distribute a code freely as much as possible. It is here even for ourselves though it is being expected to be useful for everyone of the user.

We think that it is effective in both talented people and the idea to adopt it by the open development so that large-scale software may grow soundly to understand it even if a success of Linux and X11 is seen.

Object-orientation

The component of the system is caught as an object, and an object-orientation is the thought that it tries to describe a system as a behavior of that object. An object-orientation is suitable for the goal for gtool4 because it is control like the autonomy of the data. How to think about an object-orientation goes to both the program code and the command specifications all the time.

Of course, all the things said as the object-oriented characteristics aren't always being spent. It isn't sticking to the inheritance and so on though for example it made use of the code, the unification of the data and the information concealment in the Fortran90 implementation.

It is oriented toward both of the interactive process and the batch process.

It thinks about visualization. It will be good if it is completely left to the interactive software if you only have only to draw a contour in the interval which doesn't have scale out simply. But, it doesn't actually often go so from the purpose of the drawing. For example, if a contour interval isn't the same to a rhinoceros which repeats more than one section and to draw, I will want to pull only the contour of the numerical value which couldn't be compared and which was limited more.

A batch process wants to make such a detailed order first when many times are repeated and it thinks that a process is done though it is desirable to find it interactively. gtool4 takes that both into account, and proceeds with the development.