Skip to content

zhimintu/EPA_MOVES_Model

 
 

Repository files navigation

MOVES3.0.4

EPA's MOtor Vehicle Emission Simulator (MOVES) is a state-of-the-science emission modeling system that estimates emissions for mobile sources at the national, county, and project level for criteria air pollutants, greenhouse gases, and air toxics, available under EPA's Open Source Software policy.

MOVES3.0 (available at https://github.com/USEPA/EPA_MOVES_Model and https://www.epa.gov/moves/latest-version-motor-vehicle-emission-simulator-moves) is the latest version of MOVES available for regulatory purposes. For more information, see Policy Guidance on the Use of MOVES3 for State Implementation Plan Development, Transportation Conformity, General Conformity, and Other Purposes (EPA-420-B-20-044).

For additional information on MOVES, visit EPA's MOVES website. A standard installer for MOVES is available here. Or, to compile and MOVES from source, follow the instructions below.

Requirements and Set Up

This repository contains all of the source code and data required to compile and run MOVES.

MOVES uses MariaDB, Java, and Go. At minimum, you will need the following:

  • MariaDB (version 10.4 or later)
  • Java JDK (version 11 or version 17)
  • Go (version 1.13 or later)

To get set up:

  1. Clone or download this repository.

  2. Make sure MariaDB, Java, and Go are all installed and available on your system path (i.e., make sure the \bin folders for each of these are in your PATH environment variable). You can test this by running each of the following lines in a command prompt:

    • mysql.exe --version
    • java.exe -version
    • go.exe version
  3. MOVES has some specific MariaDB configuration requirements. Locate the MariaDB configuration file (on Windows, this is my.ini located in your data directory--see #4 of Quick Start Guide to Accessing MariaDB Data for help on finding your data directory), and ensure the following lines are saved in the file:

    [mysqld]
    default-storage-engine=MyISAM
    secure-file-priv=''
    sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    lower_case_table_names=1
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    init-connect='SET NAMES utf8'

    Restart MariaDB after modifying this file.

  4. If MariaDB is running on a non-default port (i.e., any port other than 3306), create a file called MySQL.txt in the root MOVES directory, and save the port number to this text file. This file should contain no whitespace, just the port number.

  5. Uncomment line 2 of setenv.bat and comment out line 3 to set the JDK and JRE paths to match your environment (i.e., remove REM from the beginning of line 2 and add it to the beginning of line 3). Then, set JAVA_HOME to your JDK path on line 6.

  6. Unzip the default database dumpfile from the .zip file in the \database\Setup directory to the same directory.

  7. Edit \database\Setup\SetupDatabase.bat to use the MariaDB root user's password, and then run it. This batch file creates the MOVES database user by running \database\Setup\CreateMOVESUser.sql, and then installs the default database by running the dumpfile you extracted in the previous step.

    Note: if MariaDB is running on a different port, you will need to edit SetupDatabase.bat to add the command-line flag --port=XXXX, where XXXX is the port number.

  8. Open a command prompt, navigate to your MOVES source code directory, and run the following commands to compile MOVES and launch the GUI:

    setenv
    ant crungui

    For additional information about compiling MOVES, see CommandLineMOVES.md.

  9. Hereafter to run MOVES, simply navigate to the MOVES directory and run:

    MOVESMaster.bat

Need help?

Documentation on the software components of MOVES, database structure, running MOVES from the command line, tips for improving MOVES performance, and other information are available in the \docs directory of this project. To check the status of reported issues and planned improvements, see the MOVES GitHub Issue Tracker.

Additional resources listed below are available at the MOVES website:

  • MOVES3 Technical Guidance: Guidance on appropriate input assumptions and sources of data for the use of MOVES3 in SIP development and regional emissions analyses for transportation conformity determinations in states other than California. It also includes guidance on developing nonroad inventories with MOVES3.
  • Onroad Technical Reports and Nonroad Technical Reports: Access peer-reviewed documentation on the default inputs and algorithms used in MOVES
  • MOVES Training: Contains on-your-own training modules for using MOVES
  • MOVES FAQ: Frequent asked questions about MOVES and related models

If you have questions or feedback about MOVES, email the MOVES inbox.

Previous MOVES Versions

Previous versions of MOVES3 as well the MOVES2014b December 2018 Technical Update can be accessed on GitHub at MOVES Releases. Older versions of MOVES are available at the MOVES website.

License

MOVES is licensed for use pursuant to the GNU General Public License (GPL).

EPA Disclaimer

The United States Environmental Protection Agency (EPA) GitHub project code is provided on an "as is" basis and the user assumes responsibility for its use. EPA has relinquished control of the information and no longer has responsibility to protect the integrity, confidentiality, or availability of the information. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by EPA. The EPA seal and logo shall not be used in any manner to imply endorsement of any commercial product or activity by EPA or the United States Government.

About

Estimating emissions for mobile sources

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Java 77.9%
  • Fortran 13.0%
  • Go 4.0%
  • XSLT 3.1%
  • C++ 0.9%
  • Batchfile 0.3%
  • Other 0.8%