A community–developed suite of integrated
data, models,
and data and model explorers,
for research and education
Documentation for Version 0.57
|
Terms and Conditions of Use
CISM_DX OPEN SOURCE [SOFTWARE LICENSE AGREEMENT]
1. License. The Center For Integrated Space Weather Modeling (CISM) grants you a non-exclusive, nontransferable, world-wide, royalty-free license to use, reproduce, and prepare derivative works of the CISM_DX software (Software) for research, academic, and non-profit purposes.
2. Restrictions and Use.
a. No Sales. You shall not sell, or license or transfer for a fee the Software, or any work that in any manner contains the Software.
b. Modifications. All modifications or changes to the Software and derivative works that incorporate or utilize the Software, shall carry prominent notices stating that you changed the files and the date of the change. Any reproductions of derivative works shall also be on an open source basis. You may transfer such modifications, changes, and/or derivative works back to CISM.
c. Copyright/Notices. Each copy of the Software, modification, or derivative work shall include a copy of this Agreement and any copyright information. Such notices shall be displayed on any documents, media, printouts, and visualization or on any other electronic or tangible expressions associated with, related to or derived from the Software or associated documentation.
3. Termination. Your rights under this Agreement will terminate automatically without notice from CISM if you fail to comply with any term(s) of this Agreement. The following provisions shall survive termination: Sections 2, 5, 6, and 10.
4. Proprietary Rights. Title, ownership rights, and intellectual property rights in the Software shall remain in CISM. You acknowledge such ownership and intellectual property rights and will not take any action to jeopardize, limit or interfere in any manner with CISMS ownership of or rights with respect to the Software.
5. Disclaimer of Warranty on Software. You expressly acknowledge and agree that use of the Software is at your sole risk. The Software is provided ”AS IS” and without warranty of any kind and CISM EXPRESSLY DISCLAIMS ALL WARRANTIES AND/OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT OF A THIRD PARTYS INTELLECTUAL PROPERTY, MERCHANTABILITY OR SATISFACTORY QUALITY AND FITNESS FOR A PARTICULAR PURPOSE. CISM DOES NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT DEFECTS IN THE SOFTWARE WILL BE CORRECTED. FURTHERMORE, CISM DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS AND YOU ASSUME ALL RISK REGARDING THE USE OR THE RESULTS OF THE USE OF THE SOFTWARE OR RELATED DOCUMENTATION IN TERMS OF THEIR CORRECTNESS, ACCURACY, RELIABILITY, OR OTHERWISE. THE PARTIES EXPRESSLY DISCLAIM THAT THE UNIFORM COMPUTER INFORMATION TRANSACTIONS ACT (UCITA) APPLIES TO OR GOVERNS THIS AGREEMENT. No oral or written information or advice given by CISM shall create a warranty or in any way increase the scope of this warranty. Should the Software prove defective, you (and not CISM or any CISM representative) assume the cost of all necessary correction.
6. Limitation of Liability. UNDER NO CIRCUMSTANCES, INCLUDING NEGLIGENCE, SHALL CISM BE LIABLE FOR ANY DIRECT, INCIDENTAL, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES INCLUDING LOST REVENUE, PROFIT OR DATA, WHETHER IN AN ACTION IN CONTRACT OR TORT ARISING OUT OF OR RELATING TO THE USE OF OR INABILITY TO USE THE SOFTWARE, EVEN IF CISM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
7. Export Law Assurances. All Software and any technical data delivered under this Agreement are subject to U.S. export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with all such laws and regulations and you acknowledge that you have responsibility to obtain such license to export, re-export, or import as may be required after delivery to you.
8. No Support/Modifications. The Software is provided without any support or maintenance, and without any obligation to provide you with modifications, improvements, enhancements, or updates of the Software.
9. Controlling Law and Severability. This Agreement shall be governed by the laws of the United States. If for any reason a court of competent jurisdiction finds any provision, or portion thereof, to be unenforceable, the remainder of this Agreement shall continue in full force and effect. This Agreement shall not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is hereby expressly excluded.
10. Complete Agreement. This Agreement constitutes the entire agreement between the parties with respect to the use of the Software and supersedes all prior or contemporaneous understandings regarding such subject matter. No amendment to or modification of this Agreement will be binding unless in writing and signed by CISM.
The CISM Data Explorer is a collection of tools for space physics researchers and students. This project began in response for a need to simplify model (both empirical and numerical) and data (both measurement and model output) exchange between CISM group members. CISM__DX is a guided development effort with contributions from many students and scientists. The code base is composed primarily of extensions and codes written for OpenDX (a 3–D visualization and GUI package) and Octave (a numerical analysis program with scope similar to IDL and Matlab, and a syntax similar to Matlab). The CISM_DX package contains:
|
Figure 1 is a schematic of the numerical model data visualization capabilities and codes distributed in the CISM__DX package. Figure 2 is a schematic of the measurement data visualization capabilities and codes distributed in the CISM__DX package.
The most important aspect of this project its use as a research coordination tool. CISM__DX is not just a set of codes (“networks”) written for visualization in OpenDX. It is much more general than this. The CISM Data Explorer is a collection of contemporary tools for space physics researchers and students. It relies on well–documented programs and examples written in C, FORTRAN, Octave, OpenDX, and Perl. These codes are integrated with wrapper programs so that a user generally only needs to interact with OpenDX and/or Octave.
We intend to make CISM__DX useful to the widest possible audience. We recognize that many users may not want to learn how to write programs for Octave or OpenDX; they may only be interested in extracting information from CISM__DX for analysis or visualization using their own software. In future releases we will move toward this ideal. In this release a user has the ability to extract data from the measurement data set; in the future there will be equivalents for numerical data. It has been noted that we have nearly developed a data and model file standard, because a user could use the CISM_DX package to automate the conversion of many different data and file formats into a single format. At present no community standard exists; we are keenly aware of this and hope that this package will either stimulate or facilitate the creation of a standard or framework. Currently, we tell those associated with CISM that their data conforms to our standard if it can be easily viewed in CISM_DX. In many cases, the model author does not have to write a data reader; one of the many users of this package will usually write a file reader and tell us what libraries we need to include as part of the CISM_DX install process.
For visualization, OpenDX was chosen because (a) it is Open Source, (b) it is (nearly) platform independent, and (c) SPDX already had the capability to view model runs for many space physics numerical models.
For high–level computation and analysis, Octave was chosen because (a) it is Open Source, (b) it is (nearly) platform independent, and (c) many Matlab scripts are compatible with it. Although many space physics researchers and students prefer IDL over Matlab, Octave was chosen primarily because we believe that the combination of (a) and (b) will lead to code that can be used long into the future, even if Octave is no longer popular; old Octave code can be called by a wrapper program, much in the same way that wrapper programs are written for the Tsyganenko code described above.
For low–level computation and analysis, we prefer to use anything that can be compiled by the GNU compilers. These compilers run on nearly every operating system and will thus allow for the largest possible user base. One disadvantage is that GNU compilers cannot compile programs written in all languages. For example, code written in FORTRAN 90 may not compile with the GNU FORTRAN compiler. Our approach is to write and include as much code for which speed is not a limitation in a language that can be compiled with a GNU compiler. One issue that we will face in the future is how to incorporate programs written in newer or specialized languages while still keeping the CISM_DX package cross–platform compatable.
Although initially developed by a few people, our hope is to have many contributors to the CISM__DX code base.
Contributors to CISM__DX
A list of desired contributions is given in Section 1.2 below.
When making a contribution, remember that the goal is for a scientist or student to be able to test and compare
new ideas with previous results without having to re-create and re-program everything themselves. Ideally the
contribution is compilable with the GCC compiler or an Octave or OpenDX program. However, we may be
interested in programs for viewing CISM_DX data in any popular language, including those written for
non–open source programs such as IDL and Matlab. In the future submission templates will be made
available so that a student or researcher can submit the package for review and have it work seamlessly
with an existing CISM_DX installation. Until these templates are available, these are the submision
guidelines.
Style guide and Submission Process
Review Criteria
Consideration for Future development
If you have a feature that you would like to see added, please ask one of the developers
or send email to cismdx_user@miranda.colorado.edu.
The mailing list for CISM__DX and it resides on
http://miranda.colorado.edu/mailman/listinfo/cismdx_user
Users and contributors are encouraged to subscribe to it. All questions, announcements for new releases, and submission of new and discussions of OpenDX networks and Octave mfiles, are handled through this mailing list.
In addition, there is a more specific mailing list for developers. Bug reports, CVS repository activities, and the review process is handled through cism-devel-cism_dx@bu-ast.bu.edu.
The directory CISM_FMs/ contains networks and data needed for running and validating many of CISM’s empirical models. An overview of each is given in Section 2.8.
To run the forecast models, start Octave with CISM__DX extensions by executing cismdx_octave and
typing
run_forecast_models at the Octave prompt. The result of the forecast models can be viewed by pointing a web
browser to the file CISM_FMs/web_page/index.htm. The forecast models can be run from Matlab, but you must
execute Octave/CISM_DX_startup.m before invoking run_forecast_models from the Matlab command
line.
Online Documentation and Screenshots for OpenDX example networks in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
Online Documentation and Screenshots for OpenDX example networks in CISM_DX
Online Documentation and Screenshots for OpenDX macros in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
Online Documentation and Screenshots for OpenDX macros in CISM_DX
OpenDX modules are maintained as a part of a separate CVS tree named SPDX (Space Physics Data Explorer).
SPDX is a set of OpenDX “outboard” modules. These modules are binary programs that can be called only from
OpenDX. These modules are for doing tasks such as reading binary files or linking to external Fortran and C
libraries. The user interacts with these programs by wiring connections to the associated module in
a network. Example use of these programs can be found in the networks described in the previous
section.
Online Documentation and Screenshots for OpenDX modules in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
Online Documentation and Screenshots for OpenDX modules in CISM_DX
Online Documentation and Screenshots for OpenDX networks in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
Online Documentation and Screenshots for OpenDX networks in CISM_DX
The following is a list of .m scripts that can be executed using either Matlab or Octave (with startup flag
–traditional). All of the functions have been tested using Matlab 6.5.0 and Octave 2.1.50 on Red Hat Enterprise
Linux 3.0, and Windows XP. We are working to make most of these files work under both Matlab and Octave.
Subdirectories matlab_only and octave_only contain either functions included for cross–compatibility or functions
that are not planned to be made cross compatable.
Online List of Octave scripts in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
List of Octave scripts in CISM_DX
A few IDL programs are included for the user that wants to browse the CISM_DX data set.
Online List of IDL scripts in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
List of IDL scripts in CISM_DX
Online List of Perl scripts in CISM_DX
Or, if you have installed CISM_DX, point your web browser at
List of Perl scripts in CISM_DX
Most of these programs are called by a m–file in in mfiles/make_uniform_time_series. They are generally used during the process of transforming data files into the common format in the uniform time series data set.
This directory contains the data and source code needed for locally running and validating many of CISM’s fast–executing research and forecast models. These models can be run using real–time or historical data.
For example, to run the Ap models, start Octave and cd to models/Ap/ and type main. The program main.m will attempt to download real–time data, call all of the models that predict Ap, and then call the plotting programs plot_output.m, plot_output1.m, and plot_output2.m which create .eps and .jpg files to view the results from a web page.
The figure on the right (see also Fig. ??) shows the results of predicting Ap with the CISM FM as generated by the code models/Ap/validation/Ap_validation.m. For a skill score we chose the Prediction Efficiency PE over the time interval 1989–2004 for the 1 day forecast. In blue we plot the PE and in gray the actual Ap value scaled between zero and unity. The top model shows that USAF achieves a PE = 0.21; the second panel demonstrates that persistence is not a good predictor; the third panel uses the autoregressive scheme to obtain a PE = 0.27; the bottom panel employs the ARX method with ACE solar wind data for a limited temporal window. |
If you have an Ap model that you want to add, simply create a subdirectory for your model. Then add a line in main.m to call your model. Also add lines for loading your output in ensemble_prediction.m and plot_output.m. You will probably need to write wrapper programs to convert input/output to/from your data format listed in the Ap model description below.
Available Input files
Output file
References: ?, ?
This directory contains programs, libraries, or wrapper code that are not part of the CISM_DX CVS tree but required to run certain Octave functions or OpenDX networks. The original code and any patches that were required are included.
For each library there are one or more directories that contain wrapper programs that allow the library to be called from other programs. To reduce the number of these wrapper programs, we are starting to write only wrappers these libraries for Octave, because Octave functions can be called from OpenDX (OctaveOp.net). Octave can also be called from Matlab and IDL, but these programs have not been written.
Directories or files in gray are not distributed in CISM__DX__DATA. These data files reside on re.bu.edu in the directory /raid/cismdx/CISM_DX_DATA-Full/.
Data from the Halloween 2003 storms. During the storm, the ACE SWEPAM instrument did not function for much of the time. Needs documenting. Send email to the user email list if you are interested in this data set.
Data in these directories obtained during calls to the CISM Forecast Model (FM). These directories contain a historical archive of all real time data used as inputs to the CISM FM to make real time forecasts. These data files have also been transformed from their original format and put in one of the standard CISM__DX HDF files.
Contains ACE real time data downloaded from the SEC web site during a call to the CISM FM.
Contains real time Ap data downloaded from the SEC web site during a call to the CISM FM.
Contains the solar synoptic maps as downloaded by CISM FM in the subdirectories MWO and WSO.
Contains the recent WSA predictions as downloaded by CISM FM in the subdirectory predictions and the recent solar surface maps in the subdirectories MWO and WSO.
new3d.dat.gz, new3d__mhd_2_n001000.dat, newy_mhd_1_n001000.dat
cr1892b-reduced.nc
cr1896-reduced-trunc.nc
May12-00id.nc for id ∈ (00,04,08,12,16,20)
Initial_Conditions_1-3.{animate,hdf,dat}
Initial_Conditions_1-3_SW-SM.dat
north-imf.hdf, south-imf.hdf, west-imf.hdf
sw-T5-cism.dat, T5-cism.dat
Jun01-23-reduced.hdf
rundata_30Jun01.dat
solarwind_30Jun01.rot.SM.dat
Joule_LFM_AGU_2003_1_minute.dat
Joule_LFM_TING_AGU_2003_1_minute.dat
Ting-climate-base-ion.dat, Ting-climate-ion.dat
Mike_AGU_Data.txt
bp001.hdf, br001.hdf, bt001.hdf, jp001.hdf, jr001.hdf, jt001.hdf, vp001.hdf, vr001.hdf,
vt001.hdf, p001.hdf, rho001.hdf, t001.hdf
bp002.hdf, br002.hdf, bt002.hdf, jp002.hdf, jr002.hdf, jt002.hdf, vp002.hdf, vr002.hdf,
vt002.hdf, p002.hdf, rho002.hdf, t002.hdf
For Carrington rotation numbers cr = 1930...1939 the following data files: beltcr.dat, conmwocr.dat, eqsscr.dat, opcr.dat, sheetcrhi2.dat, sheetcrpolar.dat
McPherron_Ap_1_day_Autoregressive.dat
McPherron_Ap_1_day_Persistence.dat
b365.3df.021600.gz, b365.grid, b404.3da.019440.gz
cmite7001.hdf
saved_vel_imf_e.dat
WSA_V_v0_1_1_day_1963_2002.dat
WSA_V_v0_2_1_day_1963_2002.dat
This material is based upon work supported by CISM which is funded by the STC Program of the National Science Foundation under Agreement Number ATM-0120950 and NASA LWS grant NAG5-12652. The authors thank the NSSDC, maintainers of the OMNIWeb and CDAWeb data sets, the Finnish Meteorological Institute for permission to include access to the IMAGE magnetometer chain data, the World Data Center for Geomagnetism (Copenhagen) for permission to include magnetometer data from their ftp archive, the National Center for Geophysical Data for permission to provide access to various data sets, the Space Environment Center, source of ACE real time data over the most recent month, and ISGI, providers of the quiet day list, and the am and aa indices.
Version 0.11
Menus, data sets from many sources, and data from empirical and inverse models were integrated with SPDX
to form the first version, 0.11. The concept was presented to part of the CISM Executive Council in
January, 2004. The program was named CISM__DX, the CISM Data eXplorer. The 0.X distributions will
consist of alpha and beta versions that include source code and a suite of well–documented example
applications.
Versions 0.12 - 0.24
The older versions of CISM__DX (0.21–0.23) can be re-built out of the CVS repository and are available
upon request. The previous version (0.24) of CISM__DX and CISM__DX__DATA are still posted on
http://lasp.colorado.edu/cism/CISM_DX in the .tar.gz format.
The tarballs for CISM__DX are:
|
|
Starting with version 0.21, the CISM__DX distribution has been ingested into the CISM CVS repository named VIZ on the host re.bu.edu at Boston University.
Additionally, useful multi-platform codes have been split out of the CISM__DX distribution and now reside in CISM__DX__Auxiliary version 0.22. This portion of the CISM__DX package, and subsequent versions of CISM__DX__ DATA are being maintained by R.S. Weigel.
Since version 0.23 all Linux auxiliary functions have been folded into CISM__DX thus eliminating the directory CISM__DX__Auxiliary. For the time being, it continues to exist for the Windows XP and Macintosh versions.
Bugs that were reported with versions 0.22 through 0.24 are fixed in the current version. In particular, relative paths replace the absolute paths wherever meaningful, thus reducing the number of path corrections at install time to a minimum. With version 0.25 we introduced a new ”generic” installation script. Execution scripts that drive the network tutorials, the major networks, and the CISM forecast models were also added.
The models in the models/ directory and the Octave files in the mfiles/ directory were extensively rewritten.
They recently became part of the CISM Forecast Model that is running at NOAA SEC.
Version 0.30
This is the version that was released following the All–Hands meeting in September, 2004. The installation script was re-worked so that it lets the user know what programs are being installed and where the code will reside. Ideally, a single package containing all necessary components would be distributed on a CD, but the current network install script allows us to work around complex licensing issues because we are not distributing licensed software, but are only facilitating the steps a user would have to take in order to use CISM__ DX.
Much of the dependence on .mat and .txt files has been removed. Nearly all of the code that does data analysis
now uses data from extracted from the .hdf files distributed with CISM__DX.
Version 0.34
First public release. New programs for auto-downloading and browsing uniform time series data set were included. Linux installation was simplified by pre-compiling code. SPDX now has links to libraries for geocentric and heliospheric transforms, a TING reader, and a preliminary network that allows OpenDX to call Octave functions.
Version 0.36
Second public release. Major change was upgrade to use of OpenDX 4.3.2. This broke several SPDX modules which were fixed in a later release.
Version 0.42
SPDX modules were fixed. Some documentation was moved to web pages and screenshots of OpenDX-interpreted programs were created. An Perl script that generates documenation based on text in .net and .m files is not used to generate the web documentation.
Version 0.50
New directory structure and browser interface to demos. Time series data sets integrated with the TSDS package, which will be maintained as a separate project.
Version 0.57
Documentation and usability improvements. New packaging method.