Skip to content

Commit 9875a45

Browse files
author
Mark Miesch
authored
Merge pull request #1387 from JCSDA-internal/release/mpas-1.0
Release/mpas 1.0
2 parents 0a07af4 + 81aeaa9 commit 9875a45

File tree

359 files changed

+6711
-3500
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

359 files changed

+6711
-3500
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ exp.summary.txt
1919
CMakeLists.txt.user
2020
dependencies.mk
2121
loadmap
22+
git-hammer-config.json
2223

2324
#Ignore the contents of these directories
2425
#(html and latex directories are generated by doxygen)

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
################################################################################
1212

1313
cmake_minimum_required( VERSION 3.12 )
14-
project( oops VERSION 1.1.0 LANGUAGES CXX Fortran )
14+
project( oops VERSION 1.2.0 LANGUAGES CXX Fortran )
1515

1616
## Ecbuild integration
1717
find_package( ecbuild 3.3.2 REQUIRED )

LICENSE renamed to LICENSE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@
188188
identification within third-party archives.
189189

190190
Copyright 2009-2016 European Centre for Medium-Range Weather Forecasts (ECMWF)
191-
Copyright 2017-2020 University Corporation for Atmospheric Research (UCAR)
191+
Copyright 2017-2021 University Corporation for Atmospheric Research (UCAR)
192192

193193
Licensed under the Apache License, Version 2.0 (the "License");
194194
you may not use this file except in compliance with the License.

README.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
Object Oriented Prediction System (OOPS)
22

3-
GNU: [![AWS-gnu](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiN2RzbkhSR3o4dm9HN29wRW5laDRMdGlSdGFrNUswWE9pMVJHbmwrQ0EvYWZkNnRjMTFzZWFQL3dUdUpLbmUxNlJXYlFsYmRoaDR5K1NUdCtWNmNvTHFBPSIsIml2UGFyYW1ldGVyU3BlYyI6ImV5OWJFdFRWNWVnMVpwcHEiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-gnu/history?region=us-east-1)
4-
INTEL: [![AWS-intel](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiWG5KM0dQR3VBNWdVVUdJeURwUjhoOXNWYlBYdnpGR2prLzQ4RXk2ZlkrN2llZ2M4S05MeXdWcERMVFZ2RGIxbTRXZFMvTFM5cTRoamFzV3hYanlZVEVNPSIsIml2UGFyYW1ldGVyU3BlYyI6IjZJVnJYL1Z5VktTQWZzZUkiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-intel)
5-
CLANG: [![AWS-clang](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiNHdvREpKTnVOT2pneEx6cHpaMjlma3RsUmlLZFQrMmpDR0tNODBrMzA0Z0pFazFKMFloQVc0Q0xkeGRZbW9WSDJ4c2FWSFg0SkZWb1VXVmVQRk5rSTFJPSIsIml2UGFyYW1ldGVyU3BlYyI6InRQckQrWDdaY0l2RkZoWmUiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-clang/history?region=us-east-1)
6-
[![codecov](https://codecov.io/gh/JCSDA/oops/branch/develop/graph/badge.svg?token=GdDzbEQedm)](https://codecov.io/gh/JCSDA/oops)
3+
### Continuous integration:
4+
| Platform | JCSDA-internal | JCSDA |
5+
| ------------- | ------------- |------------- |
6+
| GNU | [![AWS-gnu](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiNjVsdE5keGM1Tk5yV3FEd2tiaU5YRFVLWEVUTitBdCs5dm9nc29LNjh0T1plank1bzB2TTB2ZkptT2lUSFNWMklmWWdkNW5IbFR1VXZ1NE12M0JiR3BrPSIsIml2UGFyYW1ldGVyU3BlYyI6IkthTWxpTkZaY21CUklINnciLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/469205354006/projects/oops-internal-gnu/history) | [![AWS-gnu](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiN2RzbkhSR3o4dm9HN29wRW5laDRMdGlSdGFrNUswWE9pMVJHbmwrQ0EvYWZkNnRjMTFzZWFQL3dUdUpLbmUxNlJXYlFsYmRoaDR5K1NUdCtWNmNvTHFBPSIsIml2UGFyYW1ldGVyU3BlYyI6ImV5OWJFdFRWNWVnMVpwcHEiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://us-east-1.console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-gnu/history)
7+
| Intel | [![AWS-intel](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiUkd1YnZqN2RLWWhaOFE5MkdmbGZ5K1I0amlGU3l4Z3h5Ymw2KzR1Z3lhMXNFSEpkK2M2QTlIZk9mdVQ0ZEx5UFMvRDBZa2tUbVd6TkU1QmZPRWEycmNRPSIsIml2UGFyYW1ldGVyU3BlYyI6IjhmY2tER1c5SDVYekJZRS8iLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/469205354006/projects/oops-internal-intel/history) | [![AWS-intel](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiWG5KM0dQR3VBNWdVVUdJeURwUjhoOXNWYlBYdnpGR2prLzQ4RXk2ZlkrN2llZ2M4S05MeXdWcERMVFZ2RGIxbTRXZFMvTFM5cTRoamFzV3hYanlZVEVNPSIsIml2UGFyYW1ldGVyU3BlYyI6IjZJVnJYL1Z5VktTQWZzZUkiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://us-east-1.console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-intel/history)
8+
| CLANG | [![AWS-clang](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiL3F2OHVEcmc0WitOTlY3Vm9LV0J3NHREZ0RicUZ6RDFXcFNlODhrRHN6a0RjNlF2TDI0VzM2S0VBKzMxR1BIREdYNmZrRWRUcm9xd0h2ZnhYNzVNc3NJPSIsIml2UGFyYW1ldGVyU3BlYyI6Iit1Y01tZSt4b1VtbGxKeDQiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://console.aws.amazon.com/codesuite/codebuild/469205354006/projects/oops-internal-clang/history) | [![AWS-clang](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiNHdvREpKTnVOT2pneEx6cHpaMjlma3RsUmlLZFQrMmpDR0tNODBrMzA0Z0pFazFKMFloQVc0Q0xkeGRZbW9WSDJ4c2FWSFg0SkZWb1VXVmVQRk5rSTFJPSIsIml2UGFyYW1ldGVyU3BlYyI6InRQckQrWDdaY0l2RkZoWmUiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=develop)](https://us-east-1.console.aws.amazon.com/codesuite/codebuild/projects/automated-testing-oops-clang/history)
9+
| Code Coverage | [![codecov](https://codecov.io/gh/JCSDA/oops/branch/develop/graph/badge.svg?token=GdDzbEQedm)](https://codecov.io/gh/JCSDA/oops) |

cmake/backtrace_deps.cmake

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# (C) Copyright 2021 UCAR.
2+
#
3+
# This software is licensed under the terms of the Apache Licence Version 2.0
4+
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
5+
6+
# This CMake file tests which stack trace provider libraries are available on
7+
# a particular system. This is needed to set appropriate flags for
8+
# boost stacktrace (used in src/oops/util/signal_trap.cc).
9+
10+
include(CheckCXXSourceCompiles)
11+
12+
# check_cxx_source_compiles uses global flags, unfortunately, so we need to
13+
# save a bit of state to run the tests.
14+
15+
set(saved_libraries ${CMAKE_REQUIRED_LIBRARIES})
16+
set(saved_defs ${CMAKE_REQUIRED_DEFINITIONS})
17+
18+
string(CONFIGURE [[
19+
#include <iostream>
20+
#include <boost/stacktrace.hpp>
21+
22+
int main() {
23+
std::cout << boost::stacktrace::stacktrace() << std::endl;
24+
return 0;
25+
}
26+
]] stacktracecode @ONLY)
27+
28+
29+
# Different configs
30+
31+
list( APPEND OOPS_STACKTRACE_none_LIBS "")
32+
set( OOPS_STACKTRACE_none_DEFS -DBOOST_STACKTRACE_USE_NOOP)
33+
34+
list( APPEND OOPS_STACKTRACE_default_LIBS -ldl)
35+
set( OOPS_STACKTRACE_default_DEFS "")
36+
37+
list( APPEND OOPS_STACKTRACE_libbacktrace_LIBS -ldl -lbacktrace)
38+
list( APPEND OOPS_STACKTRACE_libbacktrace_DEFS -DBOOST_STACKTRACE_USE_BACKTRACE)
39+
40+
list( APPEND OOPS_STACKTRACE_addr2line_LIBS -ldl -lbacktrace)
41+
list( APPEND OOPS_STACKTRACE_addr2line_DEFS -DBOOST_STACKTRACE_USE_ADDR2LINE)
42+
find_program(addr2line_PATH addr2line)
43+
if(addr2line_PATH)
44+
message( STATUS "Found addr2line at ${addr2line_PATH}." )
45+
list(APPEND OOPS_STACKTRACE_addr2line_DEFS -DBOOST_STACKTRACE_ADDR2LINE_LOCATION=${addr2line_PATH})
46+
endif()
47+
48+
49+
# Test each configuration here.
50+
foreach ( provider IN ITEMS libbacktrace addr2line default none )
51+
list(APPEND CMAKE_REQUIRED_LIBRARIES ${OOPS_STACKTRACE_${provider}_LIBS})
52+
list(APPEND CMAKE_REQUIRED_DEFINITIONS ${OOPS_STACKTRACE_${provider}_DEFS})
53+
check_cxx_source_compiles("${stacktracecode}" OOPS_STACKTRACE_${provider}_AVAILABLE)
54+
set(CMAKE_REQUIRED_LIBRARIES ${saved_libraries})
55+
set(CMAKE_REQUIRED_DEFINITIONS ${saved_defs})
56+
if ( OOPS_STACKTRACE_${provider}_AVAILABLE )
57+
list( APPEND OOPS_STACKTRACE_AVAILABLE_PROVIDERS ${provider} )
58+
endif()
59+
endforeach()
60+
61+
message( STATUS "Boost stacktrace supports these providers: ${OOPS_STACKTRACE_AVAILABLE_PROVIDERS}.")
62+
list(GET OOPS_STACKTRACE_AVAILABLE_PROVIDERS 0 OOPS_STACKTRACE_PROVIDER)
63+
message( STATUS "Using this provider for stacktraces: ${OOPS_STACKTRACE_PROVIDER}.")
64+

cmake/oops_compiler_flags.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,5 @@ elseif( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
4949
else()
5050
message( STATUS "C++ compiler with ID ${CMAKE_CXX_COMPILER_ID} will be used with CMake default options")
5151
endif()
52+
53+

docs/Doxyfile.in

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1127,13 +1127,6 @@ VERBATIM_HEADERS = YES
11271127

11281128
ALPHABETICAL_INDEX = YES
11291129

1130-
# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
1131-
# which the alphabetical index list will be split.
1132-
# Minimum value: 1, maximum value: 20, default value: 5.
1133-
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
1134-
1135-
COLS_IN_ALPHA_INDEX = 5
1136-
11371130
# In case all classes in a project start with a common prefix, all classes will
11381131
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
11391132
# can be used to specify a prefix (or a list of prefixes) that should be ignored

docs/mainpage.h

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#pragma once
2+
3+
// This file defines what appears on the Main Page of the documentation
4+
// generated by doxygen. The file contains no code, and does not appear
5+
// in any cpp include statement.
6+
//
7+
/*!
8+
* \mainpage Object Oriented Prediction System (OOPS)
9+
*
10+
* OOPS is the top level of JEDI that orchestrates the configuration and execution of applications. This is where DA applications are implemented. OOPS also includes the Lorenz 95 and Quasi-geostrophic toy models that can used to run many of the DA applications.
11+
*/

ewok/4dvar.yaml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
11
cost function:
2-
cost type: $(cost_function)
2+
cost type: ${cost_function}
33
window begin: '{{window_begin}}'
4-
window length: $(window_length)
4+
window length: ${window_length}
55
geometry:
6-
$(GEOMETRY)
6+
${GEOMETRY}
77
model:
8-
$(MODEL)
9-
analysis variables: $(an_variables)
8+
${MODEL}
9+
analysis variables: ${an_variables}
1010
background:
11-
$(BACKGROUND)
11+
${BACKGROUND}
1212
background error:
13-
$(BACKGROUND_ERROR)
13+
${BACKGROUND_ERROR}
1414
observations:
15-
$(OBSERVATIONS)
15+
${OBSERVATIONS}
1616
constraints:
17-
- $(JC)
17+
- ${JC}
1818
variational:
1919
minimizer:
20-
$(MINIMIZER)
20+
${MINIMIZER}
2121
iterations:
22-
- ninner: $(ninner)
23-
gradient norm reduction: $(reduc)
22+
- ninner: ${ninner}
23+
gradient norm reduction: ${reduc}
2424
geometry:
25-
$(GEOMETRY)
25+
${GEOMETRY}
2626
linear model:
27-
$(LINEAR_MODEL)
27+
${LINEAR_MODEL}
2828
diagnostics:
29-
departures: $(diag)
29+
departures: ${diag}
3030
final:
3131
diagnostics:
3232
departures: oman
3333
prints:
3434
frequency: PT3H
3535
output:
36-
$(AN_OUTPUT)
36+
${AN_OUTPUT}

ewok/forecast.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
forecast length: $(forecast_length)
1+
forecast length: ${forecast_length}
22
initial condition:
3-
$(FC_INPUT)
3+
${FC_INPUT}
44
geometry:
5-
$(GEOMETRY)
5+
${GEOMETRY}
66
model:
7-
$(MODEL)
7+
${MODEL}
88
output:
9-
$(FC_OUTPUT)
9+
${FC_OUTPUT}

0 commit comments

Comments
 (0)