The NOAA Fisheries Integrated Modeling System (FIMS) is a software system designed to support next-generation fisheries stock assessment, ecosystem, and socioeconomic modeling. A team of experts within NOAA Fisheries is designing and developing the system, and we are advised by the FIMS Council, which includes academic, industry, and international partners. Our software is currently operational for estimation purposes and we plan for it to be operational for management in late 2025.
Installing FIMS
A precompiled version of the latest release of FIMS is available from R universe by running the following code within R:
install.packages("FIMS", repos = c("https://noaa-fims.r-universe.dev", "https://cloud.r-project.org"))
Users can also compile it themselves, like any other TMB package by running devtools::install_github("NOAA-FIMS/FIMS")
. This workflow allows for the specification of a particular branch or tag using the ref
argument.
Developers who are interested in building FIMS can clone this repository, e.g., git clone https://github.com/NOAA-FIMS/FIMS.git
and build it with devtools::install()
, which builds the package from the cloned files and installs the R library. Installing with devtools::load_all()
is not recommended because it uses shim files for things like system.file()
, which can cause FIMS to not function as expected. For example, if you try to optimize the same model twice, you will more than likely not get estimates of uncertainty from the second model run. Additionally, devtools::load_all()
adds the debugger flag -O0 -g
which leads to Windows users seeing Fatal error: can't write <xxx> bytes to section .text of FIMS.o: 'file too big
. Thus, Windows users need to run withr::local_options(pkg.build_extra_flags = FALSE)
at the beginning of every R session before calling devtools::load_all()
. If you want to compile FIMS with the debugger turned on you will need to run the {withr} function in addition to manually modifying the call to PKG_CXXFLAGS in the Makevars.win file in src
to PKG_CXXFLAGS = -DTMB_MODEL -DTMB_EIGEN_DISABLE_WARNINGS -O1 -g
. For a list of development tools needed to build, test, and document FIMS see the on- and off-boarding repository for NOAA Fisheries Office of Science & Technology.
Getting Help
If you encounter a clear π, please file an Issue with a minimal reproducible example on GitHub. If you are uncertain if you have actually encountered a π, are looking for more information, or want to talk about some new ideas please use the Discussion Board to post your thoughts. Users, developers, lurkers, and anyone else interested in our project are welcome to join the discussions, this is a place for all members of the assessment and open-source software community to ask and answer questions, share updates, have open-ended conversations, and follow along on decisions affecting FIMS. Also, feel free to introduce yourself π on the FIMS Discussion Board.
Contributors
All contributions to this project are gratefully acknowledged using the allcontributors
package following the all-contributors specification. Contributions of any kind are welcome!
Code
Issue Authors
Cole-Monnahan-NOAA |
Andrea-Havron |
Ovec8hkin |
cmlegault |
arni-magnusson |
Schiano-NOAA |
NOAA Disclaimer
This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project code is provided on an βas isβ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. 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 the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.
Software code created by U.S. Government employees is not subject to copyright in the United States (17 U.S.C. section 105). The United States/Department of Commerce reserve all rights to seek and obtain copyright protection in countries other than the United States for Software authored in its entirety by the Department of Commerce. To this end, the Department of Commerce hereby grants to Recipient a royalty-free, nonexclusive license to use, copy, and create derivative works of the Software outside of the United States.
U.S. Department of Commerce | National Oceanographic and Atmospheric Administration | NOAA Fisheries