Perl language earthquake forecasting computer program update
Posted by EQF on August 16, 2004 at 05:08:26:

This is most of the text of a report which was posted to sci.geo.earthquakes and several other Newsgroups on August 16, 2004

The information in this report represents expressions of personal opinion.

This is an introductory report regarding a Perl language earthquake forecasting computer program which is now generating good results. I personally believe that the program has the potential to enable us to accurately forecast the approach of a reasonable percentage of the destructive earthquakes which are occurring around the world. This report will explain how the program works.

That program is presently already fully operational and in use. But for it to be effectively used by governments etc. around the world it will probably be necessary for some organization to "fine tune" the program code and the output data format and take charge of circulating the program and instructing government personnel regarding how to use it.

Note: I don't have time to get into a lengthy discussion regarding this subject matter. If you post a response which asks questions which require lengthy answers, which are too difficult to answer, or if you ask too many questions I am not going to be able to respond to your note. Also, it might take me a few days to respond to any questions.

This subject matter involves earthquakes, geophysics, celestial mechanics, and Perl language computer programming. That is why this report has been posted to a number of Newsgroups. If you wish to respond in just one of them I would recommend sci.geo.earthquakes.

Present Theories:

*** Earthquakes occur when fault zones collect enough strain energy as the result of tectonic plate movements etc. that their rock layers fracture.

*** The actual times when many earthquakes occur and when certain types of fault zone process related electromagnetic energy field fluctuations (EM signals) are being generated are controlled by forces which are directly and/or indirectly related to the positions of the sun and the moon in the sky. The sun and moon gravities are controlling those forces. They add enough additional strain energy to the fault zone to trigger the earthquake.

*** A given fault zone will tend to fracture when those forces bend, stretch, and compress its rock layers in certain directions. Years, decades, and even centuries may pass before the fault zone has stored enough energy for another earthquake to occur and it is once again bent etc. in such a manner that one is triggered. But this process is sufficiently repetitive and reliable that it can be used to forecast earthquakes.

A computer program can be used to compare the times when those EM signals are generated with the times when earthquakes occurred in the past. And when matches are found between the signals and past earthquakes then that can serve as an indicator that a new earthquake is about to occur in the general area where the past one occurred.

With the program I am presently using:

About 500 EM signals are detected each year. They last from 0.25 to 20 seconds. That short duration time can make it a little difficult to detect them. But it makes them ideal for use with this type of computer program.

For each data point, about 3 months worth of signals, usually between 100 and 200, are compared one by one with the roughly 25,000 earthquakes I have in my database. They occurred during the years 1990 through the present.

To present a somewhat simplified picture, when signal # 1 is compared with the first earthquake in the database the earthquake is given a rating on a 0 to 100 scale for how well the signal matched the earthquake. Then signal # 1 is compared with earthquake # 2.

When all of the earthquakes have been checked the same steps are taken for signal # 2. And when those checks are finished the results of the first series of tests are added to the results of the second series of tests. This then continues for each of the signals.

When all of the comparisons are done the result is a list of 25,000 earthquakes which has a single probability rating for each earthquake which shows how it matched all of the signals combined.

Some of those 150 or so signals will have preferentially matched one earthquake. And as a result it will have a higher rating. Some will have preferentially matched another etc.

The list is adjusted so that the earthquake which was the best match for all of the signals (the highest results rating) is multiplied by some factor so that it has a final rating of 100. And all of the other earthquakes are then multiplied by that factor. They then have final ratings which range from 0 to 100.

The next steps provide the information regarding when and where an earthquake is going to occur.

A complete run like that takes about 30 minutes on a 700 Meg speed computer. And that series of tests is repeated about every 3 days.

With each new test date the signals for the oldest 3 day period are removed from the test list. And signals detected during the latest 3 day period are added to it. So the list of signals gradually changes with time.

If an earthquake at say 122W and 36N has a final rating of:

50 on day 1
60 on day 4
80 on day 7
93 on day 10
97 on day 13
99 on day 16

That gradual increase in final ratings would then indicate that another earthquake could be about to occur near 122W and 36N.

If and when it did occur, say on day 17, the final ratings for the 122W and 36N earthquake in the list would usually begin to go down as the warning signals which pointed to it were gradually removed from the test signal list.

Because some 25,000 earthquakes which occurred around the world are given ratings with each series of tests, and because some of the signals during that 90 day test signal period will point to one earthquake and some will point to another, the final results list which is generated every 3 days shows were earthquakes around the world might be about to occur.

An example for a single earthquake:

On December 22, 2003 the following destructive earthquake occurred in California, U.S.A.

2003/12/22 19:15:56 35.71N 121.10W 7.6 6.5 CENTRAL CALIFORNIA
(NEIS data)

My data processing computer program was not fully operational until April of 2004. And so I could not use it to watch for that earthquake at the time that it occurred. However I recently used the program to test the signals which were detected back around then to see how well it might have done if it had existed last December. And it generated the following data.

These were the final ratings for the following earthquake which is one of the ones in my 25,000 earthquake data table. It was one of the geographically closest ones to that December 22 earthquake.

1989/10/18 00:04:15 37.03N 121.88W 19.0 7.1 SAN FRANCISCO, CALIFORNIA

The dates in this list are the end dates for each 3 month test signal period. The Pa: numbers represent final ratings for that San Francisco earthquake when it was compared with all of the 25,000 earthquakes in the database. The Pd: numbers represent final rating for that earthquake when it was compared with only those earthquakes in the database which produced fatalities.

Test Date Pa: Pd:

03/10/30 71: 75
03/11/25 87: 89:
03/12/07 92: 94:
03/12/15 91: 96:
03/12/22 93: 97:
03/12/25 90: 95:
03/12/30 91: 94:
04/01/15 91: 91:
04/02/19 74: 81:
04/03/20 65: 69:
04/04/13 72: 77:
04/05/18 66: 67:

Both the Pa: and Pd: final results numbers peaked beginning around December 7, continuing through December 30. And if that computer program had been operational back in December, and had government officials here in the U.S. and earthquake forecasters seen those numbers reach a peak for that San Francisco earthquake which occurred at 37N and 122W, then they might have been able to check that general area for other signs of an approaching earthquake such as large, fresh cracks in building foundations, radon gas releases, abrupt changes in ground water table levels etc. And perhaps it would have been possible to determine that the December 22 earthquake which occurred at 36N and 121W was getting ready to occur.

PRESENT STATUS OF THIS FORECASTING PROGRAM

This is not a futuristic computer program which will become available 10 years from now. It is already fully operational. And several other people that I know of have it running on their computers at this time. Signal data are being collected each day. And for the past few months I have been storing final results data at one of my Web sites for examination and use by government officials etc. around the world. Anyone who can run a Perl language program on his or her computer can confirm the results himself or herself.

The computer program and its enormous database files were also until recently available as free downloads from my Web site. However, that site allows just a limited number of visits each month (bandwidth allowance). And a few weeks ago it had become so popular that the monthly bandwidth was exceeded and the site temporarily shut down. When that happened I removed most of the large download files etc. from the site so that it would not crash immediately after it started running again. Additionally, I am in the process of producing a new final results Web page which has a format which makes it easier to interpret the data.

I recently received the formal U.S. copyright ownership papers for one version of that Perl language data processing computer program. And, if I do not receive more requests than I can respond to I can send people e-mail copies of a version which is presently several months old but which produces the same type of data as the latest version. The final results data are simply formatted a little differently with the latest version. To run the program you need to first install a Perl computer language compiler on your computer. That takes just a few minutes. The following Web page contains instructions for how to obtain a free copy of a Perl compiler:

http://www.freewebz.com/eq-forecasting/Perl.html

The following file contains a copy of my earthquake forecasting Perl program. However that file does not contain the very large support files which are presently needed to run it.

http://www.freewebz.com/eq-forecasting/311.zip

That Perl program was designed to run with Windows XP. It will also run with Windows 98. To get it to run with other operating systems such as UNIX it is probably necessary to change some of its internal statements. I myself would not know what changes needed to be made. However, this is a text program. And such changes should be easy to make with any text editor if you are familiar with Perl language computer programming.

The computer program works quite well with the EM signal data that I myself am collecting. It remains to be seen how well it will work with other types of data including EM signal data being collected by other people around the world.

The next planned step is to create a new version of the final results data Web page and store it at my Web site for demonstration purposes. That might take a few days or perhaps as much as a few weeks. And at that time a program update note will probably be posted to the Newsgroups.

Longer range, additional data need to be generated and evaluated. The Perl program should be rewritten using a more conventional programming format. It presently simply consists of a group of subroutines which have been linked together. Perhaps a different programming language should be used.

The program contains scores of software settings which can be optimized for better performance. More sophisticated data processing routines should be added. And geophysicists should try to determine why the program actually works. It relies on an unusual geophysical theory model for how earthquakes are being triggered. And although the computer program produces good data indicating that the theory model has some value, the actual earthquake triggering mechanism is not yet understood.

This is not a funded research effort. It is not being run in connection with any formal research group. And I myself have only limited amounts of time to devote to the effort. Progress is therefore not as rapid as I would like. But it is being slowly made.

This first report was intended to simply let people know that the earthquake forecasting computer program which was described here now exists and to provide a preliminary explanation of how it works.

COMMENT: THE PERL COMPUTER LANGUAGE

Without being an expert on this subject I believe that the Perl language was probably created in part so that people who are not professional computer programmers could have a versatile language for use which was inexpensive (it is actually free), widely available, well supported, powerful, and not too difficult to learn. I would say that if that was the case then this application demonstrates that this goal was achieved. And the development of an effective, inexpensive, and easily used computer program for forecasting earthquakes and doing advanced research on them would certainly have to be considered an important application for any computer language.


Follow Ups:
     ● Format test - ignore - EQF  11:19:52 - 8/27/2004  (22594)  (1)
        ● Format test - ignore - EQF  11:25:03 - 8/27/2004  (22596)  (1)
           ● Format test - ignore - EQF  11:27:14 - 8/27/2004  (22597)  (1)
              ● Format test - ignore - EQF  11:29:15 - 8/27/2004  (22598)  (1)
                 ● Format test - ignore - EQF  11:32:40 - 8/27/2004  (22599)  (1)
                    ● Format test - ignore - EQF  11:35:20 - 8/27/2004  (22600)  (1)
                       ● Format test - ignore - EQF  11:37:54 - 8/27/2004  (22601)  (0)