Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translated F77 and F90 examples to F2003 examples (with one new addition in IDA) #302

Closed
wants to merge 90 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
78ace6f
Propagated F2003 example updates to new branch
drreynolds Jul 10, 2023
90334e9
Fixed segfault
drreynolds Jul 10, 2023
a5aa4dd
Minor bugfix
drreynolds Jul 10, 2023
dbeae61
Fixed the segfault, but the example still does not run
drreynolds Jul 10, 2023
2bc070b
Added cv_roberts_klu_f2003.f90 back into examples/cvode/F2003_serial/…
drreynolds Jul 10, 2023
d7fc813
Fixed cv_roberts_klu_f2003.f90.
danmm16 Jul 10, 2023
d2f516c
Finished last example.
danmm16 Jul 10, 2023
410f056
Nearly ready for poll request!
danmm16 Jul 11, 2023
f7993e9
Fixed ARKODE to completion with respect to suggestions.
danmm16 Jul 12, 2023
3f4cc46
Fixed README files and example author citation.
danmm16 Jul 12, 2023
41bd21c
Cleaned up a few F2003 files and all the *.out files.
danmm16 Jul 13, 2023
430db54
Signed-off-by: Daniel Margolis <[email protected]>
danmm16 Jul 14, 2023
15417b7
Made a number of requested changes, will push the rest tomorrow.
danmm16 Jul 18, 2023
8104715
Added *.out files, fixed a CMakeList.txt file, and added function hea…
danmm16 Jul 18, 2023
7b72b06
Fixed a few errors with printed output in *.out files.
danmm16 Jul 21, 2023
50958ab
Fixed one more CVode *.out file and print code to look cleaner.
danmm16 Jul 22, 2023
01ae7d7
Examples: add missing include (#331)
johnwparent Sep 13, 2023
75ffe46
append to CMAKE_MODULE_PATH instead of overwrite (#336)
martinjrobins Sep 13, 2023
235a506
Change typedefs names to allow simulateous use of idas and cvodes (#337)
mottelet Sep 14, 2023
5aebf44
Feature/compare califiles (#318)
yu-nix Sep 15, 2023
0ece42c
Fix time complexity issue for sparse matrix (#257)
phannebohm Sep 18, 2023
60b5849
Fix missing soversion (#343)
jschueller Sep 27, 2023
a4e18e5
Update ARKODE methods docs (#344)
Steven-Roberts Sep 28, 2023
b557eea
Bugfix: Support ARK2-3-1-2 in ARKStepSetTableNum (#346)
drreynolds Sep 29, 2023
e800b15
Bugfix: stop time and output time reached in same step (#349)
gardner48 Oct 4, 2023
62f81c2
Merge branch 'develop' into feature/f2003-examples
balos1 Oct 20, 2023
df0b211
Bugfix: docs missing cvodequadsstolerances (#352)
balos1 Oct 20, 2023
6ae281e
Add Sofroniou-Spaletta-5-3-4 method only (#355)
Steven-Roberts Oct 26, 2023
747da2e
Add Ginkgo dpcpp into example (#351)
yhmtsai Oct 26, 2023
b84b330
Bugfix: CMake FindMAGMA (#356)
balos1 Oct 27, 2023
9717d6d
Feature: Fortran interface for lapack dense solver (#353)
balos1 Oct 27, 2023
6c60a56
Feature/new tables (#359)
drreynolds Oct 28, 2023
26317e2
Bugfix: Remove MPI wtime in profiler (#317)
balos1 Nov 2, 2023
ebf92db
Bugfix: ARKODE ONE_STEP Description (#362)
gardner48 Nov 2, 2023
15071ae
CI: Upload only test outputs (#364)
balos1 Nov 3, 2023
37d75e1
Maintenance: Remove unused files (#366)
gardner48 Nov 6, 2023
1184484
CI: Update actions (#368)
gardner48 Nov 6, 2023
9b01e93
Maintenance: Remove F77 interface examples (#367)
gardner48 Nov 6, 2023
4e5de4c
Maintenance: Simplify tarscripts (#365)
gardner48 Nov 6, 2023
da23565
Feature: Update Full RHS Calls (#324)
gardner48 Nov 8, 2023
110a6d9
Feature/oo adaptivity2 (#358)
drreynolds Nov 9, 2023
1b913be
Developer docs (#361)
balos1 Nov 12, 2023
551f676
Remove deprecated code (#360)
balos1 Nov 13, 2023
e75d0c0
Remove deprecated types (#369)
balos1 Nov 14, 2023
6838fad
Docs: Fix table name (#374)
Steven-Roberts Nov 16, 2023
de253fb
Docs: Display graphviz figures (#376)
gardner48 Nov 17, 2023
7c389bf
Cleaned up implementation style
drreynolds Nov 21, 2023
35fa67a
Merged with develop
drreynolds Nov 21, 2023
378c9e0
Fixed tarscript merge issues, removed F2003 example README files
drreynolds Nov 21, 2023
00f9d17
Unified style of F2003 examples
drreynolds Nov 22, 2023
b4f256c
Updated ida/F2003_openmp/CMakeLists.txt to allow repeated runs of the…
drreynolds Nov 22, 2023
c6f2209
Fixed build issues on MacOS
drreynolds Nov 26, 2023
12d8fb3
Feature: Add SUNComm type (#370)
balos1 Nov 28, 2023
4cc9ea9
Fixed compilation issue
drreynolds Nov 28, 2023
80398b4
Merge branch 'develop' into feature/f2003-examples
gardner48 Nov 29, 2023
388fe09
Fixed compilation issues from recent merge
drreynolds Nov 29, 2023
d8e953a
Fixed -Werror=conversion failure on Jenkins box
drreynolds Nov 29, 2023
856e8d6
Additional fixes for 'very strict' compiler settings on Jenkins box
drreynolds Nov 29, 2023
a4dd996
Additional fixes for 'very strict' compiler settings on Jenkins box
drreynolds Nov 30, 2023
b687003
Additional F2003 example file cleanup
drreynolds Nov 30, 2023
fac76cd
Updated answer files submodule revision number
drreynolds Dec 1, 2023
3784d10
Updated to remove obsolete F77 character array (as required for Jenki…
drreynolds Dec 1, 2023
f475fdd
Updated answers submodule
drreynolds Dec 1, 2023
94eb775
Fixed potential data race condition
drreynolds Dec 1, 2023
32f8e21
Updated answers submodule
drreynolds Dec 1, 2023
b6db71e
updated idaHeat2D_kry_omp_f2003 output files
drreynolds Dec 1, 2023
4f005f3
Removed unused variables
drreynolds Dec 1, 2023
79242af
removed unused variable
drreynolds Dec 4, 2023
90eca5c
Updated answers commit
drreynolds Dec 4, 2023
12ca7ff
Fixed compilation issue on older gfortran use of allocatable characte…
drreynolds Dec 5, 2023
0d17715
Changed test type
drreynolds Dec 5, 2023
c7c52db
Minor updates to OpenMP regions
drreynolds Dec 5, 2023
a313406
update output files
gardner48 Dec 5, 2023
a2e13c9
Excluding idaHeat2D_kry_omp_f2003 examples from regression tests
drreynolds Dec 6, 2023
47ef793
Merge branch 'feature/f2003-examples' of github.com:danmm16/sundials-…
drreynolds Dec 6, 2023
fe0ce3f
Fixed .f to .f90
drreynolds Dec 6, 2023
22a5b46
Fixed another .f to .f90
drreynolds Dec 6, 2023
17af9e9
Removed inaccurate README files from F2003 example folders, and updat…
drreynolds Dec 7, 2023
f4aabaa
Fixed .out file installation target
drreynolds Dec 7, 2023
2161eaf
Update for installed Makefile
drreynolds Dec 7, 2023
6454095
Feature: Error handling core (#373)
balos1 Dec 7, 2023
78770ef
Feature/error handling just the core formatted (#379)
balos1 Dec 8, 2023
f8a17f3
Merge ../develop into feature/f2003-examples
drreynolds Dec 12, 2023
110f3a5
Fixed merge issue due to changed SUNDIALSFileOpen signature
drreynolds Dec 12, 2023
6d6e086
Attempting to fix 'make install all' error due to file name issue
drreynolds Dec 12, 2023
0f47678
fix typo
gardner48 Dec 13, 2023
001bb88
update F2003 OpenMP CMake template
gardner48 Dec 13, 2023
82c6d32
Updated CHANGELOG and 'recent changes' sections of user guides to not…
drreynolds Dec 14, 2023
550732b
Merge branch 'feature/f2003-examples' of github.com:danmm16/sundials-…
drreynolds Dec 14, 2023
37ca9d8
Minor fixes
drreynolds Dec 14, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 1 addition & 2 deletions .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ PenaltyReturnTypeOnItsOwnLine : 10000 # (penalize more)
PointerAlignment : Left
QualifierAlignment : Leave
ReferenceAlignment : Pointer
ReflowComments : true
ReflowComments : false
SeparateDefinitionBlocks : Always
SortIncludes : true
SortUsingDeclarations : true
Expand All @@ -140,7 +140,6 @@ SpacesInConditionalStatement : false
SpacesInContainerLiterals : true
SpacesInParentheses : false
SpacesInSquareBrackets : false
SpaceBeforeSquareBrackets : false
Standard : c++14
TabWidth: 2
UseCRLF : false
Expand Down
3 changes: 2 additions & 1 deletion .clang-tidy
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
# This should be applied to all new code. See the developer documentation.
# ------------------------------------------------------------------------------
---
Checks: '-*,clang-diagnostic-*,clang-analyzer-*,cppcoreguidelines-*,-cppcoreguidelines-explicit-virtual-functions,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-avoid-magic-numbers,google-*,-google-explicit-constructor,modernize-*,-modernize-use-trailing-return-type,mpi-*,readability-*,-readability-magic-numbers,-readability-identifier-length'
#Checks: '-*,clang-diagnostic-*,clang-analyzer-*,cppcoreguidelines-*,-cppcoreguidelines-explicit-virtual-functions,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-avoid-magic-numbers,google-*,-google-explicit-constructor,modernize-*,-modernize-use-trailing-return-type,mpi-*,readability-*,-readability-magic-numbers,-readability-identifier-length'
Checks: '-*,readability-braces-around-statements'
WarningsAsErrors: ''
HeaderFilterRegex: ''
AnalyzeTemporaryDtors: false
Expand Down
31 changes: 31 additions & 0 deletions .github/actions/free-space-ubuntu/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Free space on Ubuntu VMs
description: Frees up disk space on GitHub Actions Ubuntu VMs

runs:
using: composite
steps:
- id: show-space
run: df -h
shell: bash
- id: free-up
run: |
sudo rm -rf /usr/local/lib/android || true
sudo rm -rf /usr/share/dotnet || true
sudo rm -rf /opt/ghc || true
sudo rm -rf /usr/local/.ghcup || true
sudo apt-get remove -y '^aspnetcore-.*' || echo "::warning::The command [sudo apt-get remove -y '^aspnetcore-.*'] failed to complete successfully. Proceeding..."
sudo apt-get remove -y '^dotnet-.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y '^dotnet-.*' --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y '^llvm-.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y '^llvm-.*' --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y 'php.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y 'php.*' --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y '^mongodb-.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y '^mongodb-.*' --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y '^mysql-.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y '^mysql-.*' --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y azure-cli google-chrome-stable firefox powershell mono-devel libgl1-mesa-dri --fix-missing || echo "::warning::The command [sudo apt-get remove -y azure-cli google-chrome-stable firefox powershell mono-devel libgl1-mesa-dri --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y google-cloud-sdk --fix-missing || echo "::debug::The command [sudo apt-get remove -y google-cloud-sdk --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get remove -y google-cloud-cli --fix-missing || echo "::debug::The command [sudo apt-get remove -y google-cloud-cli --fix-missing] failed to complete successfully. Proceeding..."
sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed to complete successfully. Proceeding..."
sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed to complete successfully. Proceeding..."
sudo docker image prune --all --force || true
shell: bash
- id: show-space-again
run: df -h
shell: bash
2 changes: 1 addition & 1 deletion .github/actions/test-driver/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,5 +26,5 @@ runs:
run: |
git config --global --add safe.directory $GITHUB_WORKSPACE
cd test
./test_driver.sh --testtype CUSTOM --env env/docker.sh --tpls --realtype ${{ inputs.precision }} --indexsize ${{ inputs.indexsize }}
./test_driver.sh --testtype CUSTOM --env env/docker.sh --tpls --sunrealtype ${{ inputs.precision }} --indexsize ${{ inputs.indexsize }}
shell: bash
38 changes: 38 additions & 0 deletions .github/workflows/build-llvm-container.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Containers - build llvm container for clang-format checker

on:
workflow_dispatch:

jobs:
build_llvm_container:
runs-on: ubuntu-22.04
steps:
- name: Check out repository code
uses: actions/checkout@v4

- name: Free up disk space
uses: ./.github/actions/free-space-ubuntu

- name: Checkout Spack
uses: actions/checkout@v4
with:
repository: spack/spack
ref: v0.21.0
path: spack

- name: Setup Spack
run: echo "$PWD/spack/bin" >> "$GITHUB_PATH"

- name: Setup Spack Binary Cache
run: |
spack mirror add v0.21.0 https://binaries.spack.io/v0.21.0
spack mirror add --oci-username ${{ github.actor }} --oci-password ${{ secrets.OCI_TOKEN }} sundials_spack_cache oci://ghcr.io/LLNL/sundials_spack_cache
spack buildcache keys --install --trust

- name: Install [email protected]
run: spack install --no-check-signature [email protected]

- name: Push to buildcache
if: ${{ !cancelled() }}
run: |
spack buildcache push --force --base-image ubuntu:22.04 sundials_spack_cache llvm
47 changes: 47 additions & 0 deletions .github/workflows/check-clang-format.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Checks - clang-format

on:
push:
pull_request:
workflow_dispatch:

jobs:
clang_format_check:
runs-on: ubuntu-latest
container:
image: ghcr.io/llnl/sundials_spack_cache:llvm-17.0.4-h4lflucc3v2vage45opbo2didtcuigsn.spack
steps:
- name: Install git
run: |
apt update
apt install -y git

- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: true

- name: Add safe directory
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"

- name: Print clang-format version
run: clang-format --version

- name: Run checker on code
run: |
./scripts/format.sh .

- name: Run git diff to see if anything changed
run: /usr/bin/git diff --name-only --exit-code

- name: Run git diff if we failed
if: failure()
run: /usr/bin/git diff > diff

- name: Archive diff if we failed
uses: actions/upload-artifact@v3
if: failure()
with:
name: diff
path: |
${{ github.workspace }}/diff
23 changes: 20 additions & 3 deletions .github/workflows/double-precision.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
#
name: double precision build and test with GCC+TPLs (no GPUs)
name: Build and Test - Ubuntu/gcc double precision (TPLs, no GPUs)

on:
push:
pull_request:
merge_group:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_and_test:
Expand All @@ -15,6 +21,7 @@ jobs:
matrix:
indexsize: [32, 64]
precision: ['double']
buildtype: ['Debug', 'Release']
steps:
- name: Checkout repository
uses: actions/checkout@v3
Expand All @@ -25,10 +32,20 @@ jobs:
with:
indexsize: ${{ matrix.indexsize }}
precision: ${{ matrix.precision }}
- name: Archive files from failed build
uses: actions/[email protected]
env:
CMAKE_BUILD_TYPE: ${{ matrix.buildtype }}
- name: Archive build files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: build_files
path: |
${{ github.workspace }}/test/build_*
!${{ github.workspace }}/test/build_*/Testing/output
- name: Archive output files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: output_files
path: |
${{ github.workspace }}/test/build_*/Testing/
21 changes: 18 additions & 3 deletions .github/workflows/extended-precision.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
#
name: extended precision build and test with GCC+TPLs (no GPUs)
name: Build and Test - Ubuntu/gcc extended precision (TPLs, no GPUs)

on:
pull_request:
merge_group:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_and_test:
Expand All @@ -24,10 +30,19 @@ jobs:
with:
indexsize: ${{ matrix.indexsize }}
precision: ${{ matrix.precision }}
- name: Archive files from failed build
uses: actions/upload-artifact@v2.2.4
- name: Archive build files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: build_files
path: |
${{ github.workspace }}/test/build_*
!${{ github.workspace }}/test/build_*/Testing/output
- name: Archive output files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: output_files
path: |
${{ github.workspace }}/test/build_*/Testing/

10 changes: 8 additions & 2 deletions .github/workflows/macos-latest.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
name: MacOS short test
name: Build and Test - MacOS (short)

on:
pull_request:
merge_group:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release

jobs:
build:
build_and_test:
# The CMake configure and build commands are platform agnostic and should work equally
# well on Windows or Mac. You can convert this to a matrix build if you need
# cross-platform coverage.
Expand Down
21 changes: 18 additions & 3 deletions .github/workflows/single-precision.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
#
name: single precision build and test with GCC+TPLs (no GPUs)
name: Build and Test - Ubuntu/gcc single precision (TPLs, no GPUs)

on:
pull_request:
merge_group:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_and_test:
Expand All @@ -24,10 +30,19 @@ jobs:
with:
indexsize: ${{ matrix.indexsize }}
precision: ${{ matrix.precision }}
- name: Archive files from failed build
uses: actions/upload-artifact@v2.2.4
- name: Archive build files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: build_files
path: |
${{ github.workspace }}/test/build_*
!${{ github.workspace }}/test/build_*/Testing/output
- name: Archive output files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: output_files
path: |
${{ github.workspace }}/test/build_*/Testing/

19 changes: 16 additions & 3 deletions .github/workflows/spack-develop.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,17 @@
#
name: spack@develop build and test with GCC+TPLs (no GPUs)
name: Build and Test - Ubuntu/gcc spack@develop (TPLs, no GPUs)

on:
pull_request:
merge_group:
workflow_dispatch:
schedule:
- cron: '00 22 * * *'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_and_test:
runs-on: ubuntu-latest
Expand All @@ -27,10 +32,18 @@ jobs:
with:
indexsize: ${{ matrix.indexsize }}
precision: ${{ matrix.precision }}
- name: Archive files from failed build
uses: actions/upload-artifact@v2.2.4
- name: Archive build files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: build_files
path: |
${{ github.workspace }}/test/build_*
!${{ github.workspace }}/test/build_*/Testing/output
- name: Archive output files from failed build
uses: actions/upload-artifact@v3
if: failure()
with:
name: output_files
path: |
${{ github.workspace }}/test/build_*/Testing/
Loading