Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1932 commits
Select commit Hold shift + click to select a range
e9746b2
Move seealso.
icui Dec 19, 2025
757dc3a
Add sections.
icui Dec 19, 2025
c68cc52
1450 Part III - Add more descriptions on point kernels and properties.
icui Dec 19, 2025
b315040
Updated the pi definition.
lsawade Dec 19, 2025
53649c1
Fix macros import.
icui Dec 19, 2025
7ce544e
Merge branch 'devel' into issue-1218
lsawade Dec 19, 2025
342152e
Fix class brief.
icui Dec 19, 2025
2e2b42c
Merge branch 'issue-1389' into issue-1392
icui Dec 19, 2025
c8b9115
Merge remote-tracking branch 'origin/devel' into transfer-poly-refactor
int-ptr-ptr Dec 19, 2025
b652591
Migrate transfer test to use specfem env
Rohit-Kakodkar Dec 19, 2025
44e3c5c
Updated the transfer_tests
lsawade Dec 19, 2025
8ee1e9e
Merge branch 'transfer-test-fix' into issue-1218
lsawade Dec 19, 2025
c17875b
Merge branch 'issue-1218' into issue-1218-b
lsawade Dec 19, 2025
867ddc7
updated edgefield -> edgefunction, specfem_environment
int-ptr-ptr Dec 19, 2025
615378e
Merge pull request #1490 from PrincetonUniversity/issue-1462
lsawade Dec 19, 2025
9a71c05
Marmousi benchmark.
lsawade Dec 19, 2025
7d12080
Merge remote-tracking branch 'origin/transfer-test-fix' into devel
lsawade Dec 19, 2025
bcd6812
Updated the logging output to go fully to terminal or fully to file
lsawade Dec 19, 2025
d92b6d0
changes from meeting
int-ptr-ptr Dec 19, 2025
36a7849
removed extraneous imports
int-ptr-ptr Dec 19, 2025
d6ae12d
minor doc
int-ptr-ptr Dec 19, 2025
d5ed6da
Removed final remaining prints
lsawade Dec 19, 2025
48195fe
Fixing all output quirks that came up during the testing of the 2D be…
lsawade Dec 20, 2025
a1becf3
Fixed 3D as well.
lsawade Dec 20, 2025
aefec4a
Merge pull request #1502 from PrincetonUniversity/transfer-test-fix
lsawade Dec 20, 2025
8cb58ea
Merge pull request #1491 from PrincetonUniversity/issue-1389
Rohit-Kakodkar Dec 22, 2025
b5c8d9e
Merge pull request #1492 from PrincetonUniversity/issue-1382
Rohit-Kakodkar Dec 22, 2025
5132a6b
Merge branch 'devel' into issue-1474
Rohit-Kakodkar Dec 22, 2025
a3b933c
Merge pull request #1473 from PrincetonUniversity/issue-1472
Rohit-Kakodkar Dec 22, 2025
2cb6e9d
Configure.cmake -> variables.cmake
Rohit-Kakodkar Dec 22, 2025
7160b55
Apply suggestions from code review
Rohit-Kakodkar Dec 22, 2025
53f1c9b
Updated the CI docs and added repo-file directive to the conf.py
lsawade Dec 22, 2025
e66d323
Merge branch 'devel' into issue-1376
lsawade Dec 22, 2025
59a1ebf
Documentation update - Data access
Rohit-Kakodkar Dec 22, 2025
31d884c
Merge pull request #1488 from PrincetonUniversity/1450-2
icui Dec 22, 2025
659ab11
Updated cmake file
Rohit-Kakodkar Dec 22, 2025
e4bfc3a
Merge pull request #1475 from PrincetonUniversity/issue-1474
Rohit-Kakodkar Dec 22, 2025
a243505
review changes
int-ptr-ptr Dec 22, 2025
2e0b39c
Merge pull request #1499 from PrincetonUniversity/issue-1218-b
lsawade Dec 22, 2025
6ef02bc
removed unused accessor pack
int-ptr-ptr Dec 22, 2025
d606d4e
Update tests/unit-tests/algorithms/dim2/transfer.cpp
Rohit-Kakodkar Dec 22, 2025
2566566
Documentation Update - Parameter parser
Rohit-Kakodkar Dec 22, 2025
90ac2c4
added flux_scheme_tag enum
int-ptr-ptr Dec 22, 2025
db139f4
Merge pull request #1501 from PrincetonUniversity/1450-3
icui Dec 23, 2025
10fa157
Move tag iterators to utilities
icui Dec 23, 2025
7381430
Merge pull request #1498 from PrincetonUniversity/issue-1218
lsawade Dec 23, 2025
be43895
Addressed copilot commens
lsawade Dec 23, 2025
901e92a
Merge branch 'issue-1503' into issue-1503-follow-up
lsawade Dec 23, 2025
f9b78d7
Addressed copilot suggestions
lsawade Dec 23, 2025
365c31e
Apply suggestions from code review
Rohit-Kakodkar Dec 23, 2025
33cc67b
Fixed gcc error
lsawade Dec 23, 2025
fd1720e
Merge branch 'issue-1503' into issue-1503-follow-up
lsawade Dec 23, 2025
b0182b0
Apply suggestions from code review
Rohit-Kakodkar Dec 23, 2025
b12c1e7
Lucas review comment
Rohit-Kakodkar Dec 23, 2025
5d69e56
data access namespace documentation
Rohit-Kakodkar Dec 23, 2025
86d7a59
Review comments
Rohit-Kakodkar Dec 23, 2025
098f8c3
data access namespace documentation
Rohit-Kakodkar Dec 23, 2025
4680c40
Merge branch 'issue-1394-rebase-branch' into issue-1394
Rohit-Kakodkar Dec 23, 2025
0c763fe
Merge pull request #1481 from int-ptr-ptr/transfer-poly-refactor
Rohit-Kakodkar Dec 23, 2025
d38fa22
Merge pull request #1497 from PrincetonUniversity/issue-824-take-2
Rohit-Kakodkar Dec 23, 2025
d3483f4
Updated the plotting resolution
lsawade Dec 23, 2025
a325bc6
Documentation update - SPECFEM++ mesh
Rohit-Kakodkar Dec 23, 2025
b88cb14
Updated the Snakefile.in and specfem_config.yaml
lsawade Dec 23, 2025
debe0f7
Updated the Cmakefiles
lsawade Dec 23, 2025
3a5f5bb
Nightly Benchmarks - Adds fluid-solid interface
Rohit-Kakodkar Dec 23, 2025
0255c89
Forgot to update source factor
lsawade Dec 23, 2025
f5fd705
Created the initial cookbook and added download folder extension.
lsawade Dec 23, 2025
922198c
Updated some of the cookbookfiles. Will add traces and movie once the…
lsawade Dec 23, 2025
204b7d6
Fixed minor bugs
Rohit-Kakodkar Dec 23, 2025
0dcd55f
Merge pull request #1504 from PrincetonUniversity/issue-1503
lsawade Dec 23, 2025
7373e05
Documentation Update - Chunk Element/Edge
Rohit-Kakodkar Dec 23, 2025
fa7321f
Merge branch 'devel' into issue-1388
icui Dec 23, 2025
3b78d4f
Fixed stf titles and reference to external
lsawade Dec 23, 2025
683c553
Apply suggestions from code review
Rohit-Kakodkar Dec 23, 2025
d550fff
cookbook cmakefile fix
lsawade Dec 23, 2025
da85e9a
Added traces and video to cookbook
lsawade Dec 23, 2025
daa5d1f
Missed flickering frame du to frame 1,000,000 and filenaming only usi…
lsawade Dec 23, 2025
2e2a1f7
Updated the IO sphinx docs
lsawade Dec 23, 2025
05a1cb9
Forgot to add the new files...
lsawade Dec 23, 2025
958ab2b
Documentation Update - SPECFEM++ Datatypes
Rohit-Kakodkar Dec 23, 2025
b5e6270
Update documentation on FOR_EACH_IN_PRODUCT
icui Dec 23, 2025
9433fed
Update description
icui Dec 23, 2025
39308e3
Merge branch 'devel' into issue-1399
icui Dec 24, 2025
f5adea3
Merge pull request #1516 from PrincetonUniversity/issue-824-take-2
Rohit-Kakodkar Dec 24, 2025
2ad3556
Divergence and gradient
icui Dec 24, 2025
a0cde2e
Documentation update - Algorithm
icui Dec 24, 2025
b50b03c
Merge branch 'devel' into issue-1400
Rohit-Kakodkar Dec 24, 2025
1caaa40
Merge branch 'devel' into issue-1394
Rohit-Kakodkar Dec 24, 2025
ebd2df2
Review comments
Rohit-Kakodkar Dec 24, 2025
16d201a
Merge branch 'devel' into issue-1512
Rohit-Kakodkar Dec 24, 2025
d7d9086
Update namespace documentation
icui Dec 24, 2025
07d5dee
Merge pull request #1505 from PrincetonUniversity/issue-1503-follow-up
lsawade Dec 24, 2025
fdf3015
Merge pull request #1515 from PrincetonUniversity/issue-1376
lsawade Dec 24, 2025
0b1da4b
RDT failed because I didnt update the docs/requirements.
lsawade Dec 24, 2025
1c33832
Merge branch 'issue-1376-cookbook' of github.com:PrincetonUniversity/…
lsawade Dec 24, 2025
ff3d8e6
Merge pull request #1506 from PrincetonUniversity/issue-1388
Rohit-Kakodkar Dec 24, 2025
582f0fb
Merge pull request #1510 from int-ptr-ptr/flux-template
Rohit-Kakodkar Dec 24, 2025
b9aaba6
Merge pull request #1519 from PrincetonUniversity/issue-1517
Rohit-Kakodkar Dec 24, 2025
e2317d1
Merge pull request #1520 from PrincetonUniversity/stf-fix
Rohit-Kakodkar Dec 24, 2025
966bd66
Enabled/Disabled -> On, Off
lsawade Dec 24, 2025
25361e1
Apply suggestions from code review
Rohit-Kakodkar Dec 24, 2025
6ba7370
Merge branch 'devel' into issue-1513
lsawade Dec 24, 2025
454c34a
Move namespace.
icui Dec 24, 2025
1bb0731
Merge branch 'devel' into 1392-mv
icui Dec 24, 2025
229c98c
Merge pull request #1508 from PrincetonUniversity/issue-1394
Rohit-Kakodkar Dec 24, 2025
fb983f6
Merge pull request #1509 from PrincetonUniversity/issue-1400
Rohit-Kakodkar Dec 24, 2025
273ba55
Update documentation
icui Dec 24, 2025
b3434d1
Partially fix mesh_entity
icui Dec 24, 2025
8fd9209
Merge pull request #1507 from PrincetonUniversity/issue-1385
lsawade Dec 24, 2025
83da5c4
Merge pull request #1514 from PrincetonUniversity/issue-1512
Rohit-Kakodkar Dec 24, 2025
81118ac
Merge branch 'devel' into issue-1399
icui Dec 24, 2025
af7b69a
Update formatting.
icui Dec 24, 2025
346cec8
updated the cookbook to inlcude the download links instead
lsawade Dec 24, 2025
7491e25
Remove unused docstring.
icui Dec 24, 2025
4d6f031
Merge branch 'devel' into 1392-mv
icui Dec 24, 2025
b2625c8
Updated the way the downloadable folders show up for simple downloadi…
lsawade Dec 24, 2025
871ebe8
Updated the URL getter for the download folder extension
lsawade Dec 24, 2025
a1c8174
Merge pull request #1518 from PrincetonUniversity/issue-1376-cookbook
lsawade Dec 25, 2025
49cb39b
Merge pull request #1522 from PrincetonUniversity/issue-1513
lsawade Dec 25, 2025
26c4a85
Merge pull request #1523 from PrincetonUniversity/issue-1521
lsawade Dec 25, 2025
0f23f8f
Merge pull request #1524 from PrincetonUniversity/issue-1399
lsawade Dec 25, 2025
6a2eb72
accessor pack draft
int-ptr-ptr Jan 4, 2026
b3dd0b1
Adds library link
lsawade Jan 5, 2026
f4d17d4
Removed specfem_mpi.
lsawade Jan 5, 2026
cc49fc8
Renamed specfem::MPI_new -> specfem::MPI
lsawade Jan 5, 2026
5d9b4a5
Updated the documentation and made rank and size private members, whi…
lsawade Jan 5, 2026
a9bf5ec
Clean up macro docs.
icui Jan 5, 2026
cfd5d47
Merge pull request #1530 from PrincetonUniversity/issue-1526
lsawade Jan 5, 2026
a3fcbc7
Move macros to specfem/macros folder.
icui Jan 5, 2026
3bbc667
fixed static assert statements on accessor_patch
int-ptr-ptr Jan 5, 2026
935650e
SDeparate material tags.
icui Jan 5, 2026
18a796f
Merge branch 'devel' into 1392-mv
icui Jan 5, 2026
76b587b
Added Program documentation, nested API documentation
lsawade Jan 5, 2026
d6d5321
Added specfem/mpi/index.rst
lsawade Jan 5, 2026
4698b66
Add macro section description.
icui Jan 5, 2026
62acdd2
Add pragma once.
icui Jan 5, 2026
12259ea
Missed a comma + fixed disabled VTK message.
lsawade Jan 5, 2026
c3c215f
Merge branch 'issue-1480' into issue-1529
lsawade Jan 5, 2026
52f63ca
Forgot to update program rst file
lsawade Jan 6, 2026
a9988e9
Updated the execute docstring which I felt was short after seeing it …
lsawade Jan 6, 2026
5d14297
Added CPP20 todo for abort. Forgot about that!
lsawade Jan 6, 2026
cebee1a
Update core/specfem/mpi/mpi.hpp
Rohit-Kakodkar Jan 6, 2026
03bf495
Fixed last remaining specfem::mpi::mpi references
lsawade Jan 6, 2026
8d4538d
Documentation Update - Medium Materials
Rohit-Kakodkar Jan 6, 2026
403dec1
Updated the timescheme documentation
lsawade Jan 6, 2026
c325d31
Moved solver documentation
lsawade Jan 6, 2026
cd63d63
Update core/specfem/macros/macros_impl/seq_cat_with_or.hpp
icui Jan 6, 2026
1477d16
Update include/enumerations/interface_tags.hpp
icui Jan 6, 2026
5589b35
Update include/enumerations/medium_tags.hpp
icui Jan 6, 2026
ac95894
Update include/enumerations/interface_tags.hpp
icui Jan 6, 2026
674e41d
Moved solver to core
lsawade Jan 6, 2026
9286158
Fixed timescheme imports
lsawade Jan 6, 2026
6ea15e3
Updated the timescheme imports that were mangled by alphabetical sort…
lsawade Jan 6, 2026
e53cd72
Merge branch 'issue-1391' into issue-1536
lsawade Jan 6, 2026
6ef8815
Updated the solver and time_marching documentation
lsawade Jan 6, 2026
8d25f91
Documentation Update - Properties/Kernels containers
Rohit-Kakodkar Jan 6, 2026
f6cdc1f
Documentaiton Update - Medium compute stress
Rohit-Kakodkar Jan 6, 2026
52ecf1b
Update macro reference.
icui Jan 6, 2026
6554b66
Documentation Update - Mass matrix & wavefield
Rohit-Kakodkar Jan 6, 2026
efa3fe2
Update docs/sections/api/specfem/timescheme/newmark.rst
lsawade Jan 6, 2026
22a5bb4
split description -> description + name
int-ptr-ptr Jan 6, 2026
b08aa58
Documentation Update - source, damping, cosserat
Rohit-Kakodkar Jan 6, 2026
be1037b
Addressed Copilot
lsawade Jan 6, 2026
192447f
Merge pull request #1511 from PrincetonUniversity/1392-mv
lsawade Jan 6, 2026
c271519
Merge branch 'devel' into issue-1480
lsawade Jan 6, 2026
26dcfcb
Merge branch 'devel' into issue-1438
lsawade Jan 6, 2026
4f4ac09
Clean up.
icui Jan 6, 2026
a48221d
Add jacobian eqn.
icui Jan 6, 2026
6948ef4
Shape function documentation
icui Jan 6, 2026
0bddc07
Move shape_function folder.
icui Jan 6, 2026
bed9ea5
Move
icui Jan 6, 2026
a668ed7
Move files shape_functions to shape_function.
icui Jan 6, 2026
f9d3d55
Merge pull request #1531 from PrincetonUniversity/issue-1480
Rohit-Kakodkar Jan 7, 2026
c98e41f
Merge pull request #1534 from PrincetonUniversity/issue-1398-material
Rohit-Kakodkar Jan 7, 2026
17bcb5e
Update docs/sections/api/index.rst
Rohit-Kakodkar Jan 7, 2026
60a503f
Copilot review comments
Rohit-Kakodkar Jan 7, 2026
56ee6ab
Merge branch 'devel' into issue-1529
lsawade Jan 7, 2026
51fc011
Copilot review comments
Rohit-Kakodkar Jan 7, 2026
8022849
Review comments
Rohit-Kakodkar Jan 7, 2026
0a15d46
Fixed parameter naming
lsawade Jan 7, 2026
61ab144
Addresseing copilot comments and merge conflicts
lsawade Jan 7, 2026
013c110
Merge branch 'devel' into issue-1438
lsawade Jan 7, 2026
85e0bc4
Udpate the solver includes and documentation to address comments.
lsawade Jan 7, 2026
6a06e6d
review changes
int-ptr-ptr Jan 7, 2026
a7834ed
Added Moment Tensor displacement tests in 2D with Heaviside function.
lsawade Jan 8, 2026
379997b
Merge pull request #1533 from PrincetonUniversity/issue-1529
lsawade Jan 8, 2026
a4f3abd
Updated the directory.
lsawade Jan 8, 2026
219f3aa
Merge pull request #1540 from PrincetonUniversity/issue-1398-compute-…
lsawade Jan 8, 2026
f0937dc
Removed supported media comments
Rohit-Kakodkar Jan 8, 2026
30e626c
Documentation Fix | Removes simd index
Rohit-Kakodkar Jan 8, 2026
a963cfb
Merge branch 'devel' into issue-1395
icui Jan 8, 2026
c40369b
Fix merge conflict in API docs index.rst
icui Jan 8, 2026
fc86fa6
Added Compute Source Array Documentation.
lsawade Jan 9, 2026
0429af1
Merge branch 'devel' into issue-1391
lsawade Jan 9, 2026
6170c44
Updated the docs
lsawade Jan 9, 2026
9b9128b
Merge branch 'issue-1391' into issue-1536
lsawade Jan 9, 2026
aafcf18
Merge pull request #1544 from PrincetonUniversity/issue-1395
icui Jan 9, 2026
bd56a1f
Update docs/sections/cookbooks/dim2/anisotropic-crystal/index.rst
Rohit-Kakodkar Jan 9, 2026
86923a1
Merge pull request #1551 from PrincetonUniversity/issue-1408-1454
Rohit-Kakodkar Jan 9, 2026
76c443f
Merge pull request #1549 from PrincetonUniversity/issue-1398-remove-s…
Rohit-Kakodkar Jan 9, 2026
74fe083
Merge pull request #1543 from PrincetonUniversity/issue-1398-sources
Rohit-Kakodkar Jan 9, 2026
0a1075d
Merge pull request #1541 from PrincetonUniversity/issue-1398-mass-wav…
Rohit-Kakodkar Jan 9, 2026
1cb2993
Updated repo-file and conf.py to allow for branch detection
lsawade Jan 9, 2026
0bd0ed7
Merge branch 'devel' into issue-1393
icui Jan 9, 2026
0818547
Update rst
icui Jan 9, 2026
1f1129c
Remnant snippet
lsawade Jan 9, 2026
260b615
Merge branch 'issue-1391' into issue-1536
lsawade Jan 9, 2026
1eded05
Fix ngnod naming.
icui Jan 9, 2026
ef66712
Trying to fix it
lsawade Jan 9, 2026
188ee06
Merge pull request #1542 from int-ptr-ptr/test-fixture-description
lsawade Jan 9, 2026
359e4e9
Merge pull request #1539 from PrincetonUniversity/issue-1398-data-con…
Rohit-Kakodkar Jan 9, 2026
4a9b2ef
Updated to RDT git identifier
lsawade Jan 9, 2026
9a37d33
Merge pull request #1535 from PrincetonUniversity/issue-1391
lsawade Jan 9, 2026
015ca17
Merge pull request #1547 from PrincetonUniversity/issue-1500
lsawade Jan 9, 2026
439d7dd
Merge branch 'devel' into issue-1393
icui Jan 9, 2026
5a88f23
Documentation update - Frechet derivatives
Rohit-Kakodkar Jan 9, 2026
a54bfdf
Added new materials to the 3D mesher description
lsawade Jan 9, 2026
9d41268
Updated the Source array docs.
lsawade Jan 9, 2026
444016a
Updated the repo file again to account for tag and RTD PR build which…
lsawade Jan 9, 2026
8b10b02
Merge pull request #1538 from PrincetonUniversity/issue-1536
icui Jan 9, 2026
79a8a7a
Merge branch 'devel' into issue-1393
icui Jan 9, 2026
1d94998
Documentation update - boundary_conditions
icui Jan 9, 2026
f849677
Update heading.
icui Jan 9, 2026
4cdbd28
Merge remote-tracking branch 'origin/devel' into accessor-pack-fixture
int-ptr-ptr Jan 12, 2026
03f3f20
name + description split
int-ptr-ptr Jan 12, 2026
816b621
Merge pull request #1553 from PrincetonUniversity/repo-file-fix
Rohit-Kakodkar Jan 12, 2026
f9cbea6
Apply suggestions from code review
icui Jan 12, 2026
1df85c4
Merge pull request #1545 from PrincetonUniversity/issue-1393
icui Jan 12, 2026
d54ff4a
Merge pull request #1561 from PrincetonUniversity/issue-1384
Rohit-Kakodkar Jan 13, 2026
2bacb68
Merge branch 'devel' into issue-1438
lsawade Jan 13, 2026
cd9c2a2
Removed final docstring
lsawade Jan 13, 2026
88d3a9c
Update description.
icui Jan 13, 2026
1c4fa5e
Incorporated review comments
Rohit-Kakodkar Jan 13, 2026
82ab341
review comments
Rohit-Kakodkar Jan 13, 2026
2fbc32c
review comments
Rohit-Kakodkar Jan 13, 2026
306f7d7
Document stacey details
icui Jan 13, 2026
6e16448
Merge pull request #1546 from PrincetonUniversity/issue-1438
lsawade Jan 14, 2026
6974792
Merge pull request #1552 from PrincetonUniversity/issue-1390
lsawade Jan 14, 2026
06d69a0
Merge pull request #1559 from PrincetonUniversity/issue-1398-frechet-…
lsawade Jan 14, 2026
8663260
Merge pull request #1565 from PrincetonUniversity/issue-1564
lsawade Jan 14, 2026
0c1a841
Merge pull request #1528 from int-ptr-ptr/accessor-pack-fixture
lsawade Jan 14, 2026
fe2f61c
Fixed the regex formulation in description for nci tests
lsawade Jan 14, 2026
a065f5d
Add Docker publish badge to README
lsawade Jan 14, 2026
588f202
Add Docker badge to README and fix formatting
lsawade Jan 14, 2026
4e008fb
Merge pull request #1582 from PrincetonUniversity/regex-fix
lsawade Jan 14, 2026
de95e30
Bug fix for transfer function tests
Rohit-Kakodkar Jan 14, 2026
2d783b7
Merge pull request #1583 from PrincetonUniversity/transfer-function-t…
lsawade Jan 15, 2026
d8c00a5
Merge branch 'main' into devel
lsawade Jan 15, 2026
4961a8f
Updated the docker badges
lsawade Jan 15, 2026
3cbd37d
Merge pull request #1586 from PrincetonUniversity/docker-shields.io-fix
lsawade Jan 15, 2026
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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
99 changes: 99 additions & 0 deletions .github/chatmodes/DocumenTor.chatmode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
---
description: "Generate inline Doxygen block comments for C++ classes and functions using code context, references, and git history."
tools: ['edit', 'search', 'runCommands', 'usages', 'changes', 'githubRepo']
model: Claude Sonnet 4
---

# C++ Inline Documentation Agent

You are a **C++ documentation assistant**.
Your role is to produce **inline Doxygen block comments** for classes, functions, and members in this codebase.

## Goals
- Read and parse C++ class definitions
- Identify and categorize members (constructors, methods, operators, fields)
- Search for code references where the class is instantiated or methods are called
- Access recent git commit history for context
- Generate Doxygen-style doc comments for:
- The **class itself**
- Each **constructor/destructor**
- Public and protected member functions
- Template parameters
- Suggest relationships to other classes, namespaces, or design patterns
- Provide usage examples in `@code ... @endcode` blocks
- Ensure comments are clear, concise, and informative

## Best Practices
- Always use **Doxygen block comments** in the form `/** ... */`.
- Collect surrounding code context and member declarations.
- Scan the repository for instantiations and method calls.
- Fetch relevant git commits introducing or modifying the class/members.
- Generate Doxygen comments for:
- **Class-level docstring** with `@brief`, description, template parameters, inheritance notes, related classes.
- **Constructor/destructor docs** describing object lifecycle.
- **Method docs** using `@param`, `@return`, `@throws` (if applicable).
- **Examples** (`@code` blocks) showing usage of the class and key methods.
- **Mathematical notation** Use `\f$ ... \f$` for inline math.
- Avoid speculation — rely only on available code, usage, and git history.

## Output Format
- Place block comments **immediately above** the class or function.
- Use consistent, structured phrasing.
- Keep explanations informative but not verbose.
- Include recent commit information if available.

---

### Example

```cpp
/**
* @brief A utility class for processing datasets.
*
* The DataProcessor class provides functionality to clean, normalize,
* and validate datasets. It is commonly used in preprocessing pipelines
* before machine learning tasks.
*
* @tparam T The record type stored in the dataset.
*
*
* @code
* std::vector<Record> raw = loadData("input.csv");
* DataProcessor<Record> dp;
* auto clean = dp.process(raw);
* @endcode
*/
template <typename T>
class DataProcessor {
public:
/**
* @brief Default constructor.
*
* Initializes internal state for dataset processing.
*/
DataProcessor();

/**
* @brief Process a dataset by cleaning and normalizing values.
*
* Removes invalid entries and applies optional z-score normalization.
*
* @param input The input dataset as a vector of records.
* @param normalize If true, applies normalization (default: true).
* @return A new dataset with cleaned and optionally normalized values.
*
* @code
* DataProcessor<Record> dp;
* auto clean = dp.process(raw, false);
* @endcode
*/
std::vector<T> process(const std::vector<T>& input, bool normalize = true);

/**
* @brief Destructor.
*
* Cleans up resources associated with the processor.
*/
~DataProcessor();
};
```
4 changes: 2 additions & 2 deletions .github/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ changelog:
- title: 🎉 New Feature
labels:
- feature
- title: 👨‍🔬 New physics
- title: 👨‍🔬 New physics
labels:
- new physics
- title: 🚀 Performance enhancement
Expand All @@ -30,7 +30,7 @@ changelog:
- title: Fortran Meshfem2D/3D updates
labels:
- fortran
- title: Refactor
- title: Refactor
labels:
- refactor
- title: 🐛 Bug Fixes
Expand Down
18 changes: 15 additions & 3 deletions .github/workflows/compilation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,26 @@ on:
- '*' # All branches

jobs:
build-serial:
build-debug:
runs-on: ubuntu-latest
steps:
- name: Check GNU and Cmake versions
run: gcc --version && cmake --version
- name: Checkout repository
uses: actions/checkout@v1
- name: Configure Serial build
run: cmake -S . -B build
run: cmake --preset debug
- name: Build
run: cmake --build build
run: cmake --build --preset debug -j 2

build-release:
runs-on: ubuntu-latest
steps:
- name: Check GNU and Cmake versions
run: gcc --version && cmake --version
- name: Checkout repository
uses: actions/checkout@v1
- name: Configure Serial build
run: cmake --preset release
- name: Build
run: cmake --build --preset release -j 2
188 changes: 188 additions & 0 deletions .github/workflows/project-date-automation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
name: Automate Project Dates

on:
issues:
types: [opened, edited, closed, reopened]
# Note: project_card is for legacy projects. For Projects V2, we need to use other triggers
# The workflow will run when issues/PRs change, then check if project status changed

jobs:
update-project-dates:
runs-on: ubuntu-latest
steps:
- name: Get Project Item
id: get_item
uses: actions/github-script@v7
with:
script: |
// Get the project item details
const query = `
query($owner: String!, $repo: String!, $issueNumber: Int!) {
repository(owner: $owner, name: $repo) {
issue(number: $issueNumber) {
projectItems(first: 10) {
nodes {
id
project {
id
number
}
fieldValues(first: 20) {
nodes {
... on ProjectV2ItemFieldSingleSelectValue {
name
field {
... on ProjectV2SingleSelectField {
name
}
}
}
... on ProjectV2ItemFieldDateValue {
date
field {
... on ProjectV2Field {
name
}
}
}
}
}
}
}
}
}
}
`;

const variables = {
owner: context.repo.owner,
repo: context.repo.repo,
issueNumber: context.issue?.number || context.payload.pull_request?.number
};

if (!variables.issueNumber) {
console.log('No issue or PR number found');
return;
}

const result = await github.graphql(query, variables);
const projectItems = result.repository.issue.projectItems.nodes;

for (const item of projectItems) {
console.log(`Processing project item: ${item.id}`);

// Find status field value
let currentStatus = null;
let startDate = null;
let endDate = null;
let statusFieldId = null;
let startDateFieldId = null;
let endDateFieldId = null;

// First, get field IDs from the project
const projectQuery = `
query($projectId: ID!) {
node(id: $projectId) {
... on ProjectV2 {
fields(first: 20) {
nodes {
... on ProjectV2Field {
id
name
}
... on ProjectV2SingleSelectField {
id
name
}
}
}
}
}
}
`;

const projectResult = await github.graphql(projectQuery, {
projectId: item.project.id
});

const fields = projectResult.node.fields.nodes;

// Map field names to IDs (using exact field names)
for (const field of fields) {
if (field.name.toLowerCase() === 'status') {
statusFieldId = field.id;
} else if (field.name === 'Start Date') {
startDateFieldId = field.id;
} else if (field.name === 'End Date') {
endDateFieldId = field.id;
}
}

// Get current field values
for (const fieldValue of item.fieldValues.nodes) {
if (fieldValue.field?.name?.toLowerCase() === 'status') {
currentStatus = fieldValue.name;
} else if (fieldValue.field?.name === 'Start Date') {
startDate = fieldValue.date;
} else if (fieldValue.field?.name === 'End Date') {
endDate = fieldValue.date;
}
}

console.log(`Current status: ${currentStatus}`);
console.log(`Start date: ${startDate}`);
console.log(`End date: ${endDate}`);

const today = new Date().toISOString().split('T')[0];

// Only update dates if they don't already exist (this prevents overwriting existing dates)
// Update start date if status is "In progress 🧑‍💻" and no start date exists
if (currentStatus === 'In progress 🧑‍💻' && !startDate && startDateFieldId) {
console.log('Setting start date to today');
await github.graphql(`
mutation($projectId: ID!, $itemId: ID!, $fieldId: ID!, $value: Date!) {
updateProjectV2ItemFieldValue(input: {
projectId: $projectId
itemId: $itemId
fieldId: $fieldId
value: { date: $value }
}) {
projectV2Item {
id
}
}
}
`, {
projectId: item.project.id,
itemId: item.id,
fieldId: startDateFieldId,
value: today
});
}

// Update end date if status is "Done ✅" and no end date exists
if (currentStatus === 'Done ✅' && !endDate && endDateFieldId) {
console.log('Setting end date to today');
await github.graphql(`
mutation($projectId: ID!, $itemId: ID!, $fieldId: ID!, $value: Date!) {
updateProjectV2ItemFieldValue(input: {
projectId: $projectId
itemId: $itemId
fieldId: $fieldId
value: { date: $value }
}) {
projectV2Item {
id
}
}
}
`, {
projectId: item.project.id,
itemId: item.id,
fieldId: endDateFieldId,
value: today
});
}
}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21 changes: 18 additions & 3 deletions .github/workflows/unittests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,24 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v1
- name: Configure
run: cmake -S . -B build -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTS=ON
run: cmake --preset release
- name: Build
run: cmake --build build
run: cmake --build --preset release -j 2
- name: Run all tests
run: cd build/tests/unit-tests
run: cd build/release/tests/unit-tests
&& ctest --verbose
# This job is for building and testing with IO dependencies like HDF5 and ADIOS2
build-and-test-with-io-dependencies:
runs-on: ubuntu-latest
steps:
- name: Check GNU and Cmake versions
run: gcc --version && cmake --version
- name: Checkout repository
uses: actions/checkout@v1
- name: Configure
run: cmake --preset release-io
- name: Build
run: cmake --build --preset release-io -j 2
- name: Run all tests
run: cd build/release-io/tests/unit-tests
&& ctest --verbose
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ CMakeUserPresets.json
.vscode/
.DS_Store
build*/*
build
_build/
_templates/
public/
Expand Down Expand Up @@ -35,3 +36,7 @@ test*.hpp
include/specfem_setup.hpp
install
bin


**/__pycache__
.github/prompts/ConciseDocument.prompt.md
Loading