Skip to content

[GSPH] migrate ghost_cache to solvergraph#1582

Open
Guo-astro wants to merge 2 commits intoShamrock-code:mainfrom
Guo-astro:gsph-solvergraph-ghost-cache
Open

[GSPH] migrate ghost_cache to solvergraph#1582
Guo-astro wants to merge 2 commits intoShamrock-code:mainfrom
Guo-astro:gsph-solvergraph-ghost-cache

Conversation

@Guo-astro
Copy link
Contributor

Summary

Add GhostCacheEdge for ghost interface cache management via solvergraph.

Part of GSPH solvergraph migration (1 object per PR per maintainer request).

Changes:

  • Add GhostCacheEdge.hpp for GSPH ghost cache edge
  • Add solver_graph and ghost_cache edge to SolverStorage
  • Register edge in init_solver_graph()
  • Update build_ghost_cache() to use solvergraph edge
  • Update clear_ghost_cache() to use free_alloc()
  • Update all ghost_cache usages to solvergraph pattern

Test plan

  • Build passes
  • GSPH Sod shock tube test passes

Add GhostCacheEdge for ghost interface cache management via solvergraph.

Changes:
- Add GhostCacheEdge.hpp for GSPH ghost cache edge
- Add solver_graph and ghost_cache edge to SolverStorage
- Register edge in init_solver_graph()
- Update build_ghost_cache() to use solvergraph edge
- Update clear_ghost_cache() to use free_alloc()
- Update all ghost_cache usages to solvergraph pattern

Part of GSPH solvergraph migration (1 object per PR).
@gemini-code-assist
Copy link

Summary of Changes

Hello @Guo-astro, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request is a step in the ongoing migration of the GSPH solver to use the solvergraph infrastructure for managing its internal data structures. Specifically, it focuses on transitioning the ghost interface cache from a direct Component management to a SolverGraph-managed GhostCacheEdge. This change centralizes the management of the ghost cache, enabling better dependency tracking and resource allocation through the solvergraph, which is crucial for the overall modularity and efficiency of the GSPH solver.

Highlights

  • New GhostCacheEdge Class: Introduced a new GhostCacheEdge class to encapsulate and manage the GSPH ghost interface cache within the solvergraph framework.
  • SolverGraph Integration: Integrated the solver_graph and the new GhostCacheEdge into SolverStorage, centralizing ghost cache management under the solvergraph infrastructure.
  • Migration of Ghost Cache Usage: Refactored existing functions like build_ghost_cache, clear_ghost_cache, merge_position_ghost, and communicate_merge_ghosts_fields to utilize the new GhostCacheEdge and solvergraph pattern for accessing and managing the ghost cache.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@github-actions
Copy link
Contributor

Thanks @Guo-astro for opening this PR!

You can do multiple things directly here:
1 - Comment pre-commit.ci run to run pre-commit checks.
2 - Comment pre-commit.ci autofix to apply fixes.
3 - Add label autofix.ci to fix authorship & pre-commit for every commit made.
4 - Add label light-ci to only trigger a reduced & faster version of the CI (need the full one before merge).
5 - Add label trigger-ci to create an empty commit to trigger the CI.

Once the workflow completes a message will appear displaying informations related to the run.

Also the PR gets automatically reviewed by gemini, you can:
1 - Comment /gemini review to trigger a review
2 - Comment /gemini summary for a summary
3 - Tag it using @gemini-code-assist either in the PR or in review comments on files

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a GhostCacheEdge for managing ghost interface caches using the solvergraph. The changes include adding the new edge type, integrating it into SolverStorage, updating the ghost cache building and clearing processes, and modifying existing usages to adopt the solvergraph pattern. The changes look good overall, and the suggestions provided aim to improve code clarity and maintainability.

Comment on lines +90 to +93
// Register ghost cache edge for dependency tracking
storage.ghost_cache = storage.solver_graph.register_edge(
"ghost_cache",
solvergraph::GhostCacheEdge<Tvec>("ghost_cache", "\\mathcal{C}_{\\rm ghost}"));

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This is good to register the ghost cache edge for dependency tracking. However, consider adding a comment explaining why dependency tracking is important in this context. This will help future developers understand the purpose of this registration.

Also, the name ghost_cache is repeated in the register_edge call. It would be beneficial to define this name as a constant to avoid potential typos and improve maintainability.

Suggested change
// Register ghost cache edge for dependency tracking
storage.ghost_cache = storage.solver_graph.register_edge(
"ghost_cache",
solvergraph::GhostCacheEdge<Tvec>("ghost_cache", "\\mathcal{C}_{\\rm ghost}"));
// Define a constant for the ghost cache edge name to avoid typos and improve maintainability
constexpr char const* ghost_cache_edge_name = "ghost_cache";
// Register ghost cache edge for dependency tracking
// Dependency tracking ensures that the ghost cache is valid before being used in computations
storage.ghost_cache = storage.solver_graph.register_edge(
ghost_cache_edge_name,
solvergraph::GhostCacheEdge<Tvec>(ghost_cache_edge_name, "\\mathcal{C}_{\\rm ghost}"));

Comment on lines +182 to +186
shambase::get_check_ref(storage.ghost_cache)
.set(gsph_utils.build_interf_cache(
storage.ghost_handler.get(),
storage.serial_patch_tree.get(),
solver_config.htol_up_coarse_cycle));

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using shambase::get_check_ref here is good for ensuring that the ghost_cache is properly initialized before use. However, consider adding a comment explaining why this check is necessary and what the consequences are if the cache is not properly set. This will help future developers understand the importance of this check.

shambase::get_check_ref(storage.ghost_cache)
    // get_check_ref ensures that the ghost_cache is properly initialized before use.
    // If the ghost_cache is not properly set, it throws an exception to prevent further computation with invalid cache.
    .set(gsph_utils.build_interf_cache(
        storage.ghost_handler.get(),
        storage.serial_patch_tree.get(),
        solver_config.htol_up_coarse_cycle));

void shammodels::gsph::Solver<Tvec, Kern>::clear_ghost_cache() {
StackEntry stack_loc{};
storage.ghost_patch_cache.reset();
shambase::get_check_ref(storage.ghost_cache).free_alloc();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Similar to the previous comment, it would be helpful to add a comment explaining why shambase::get_check_ref is used here and what the consequences are if the cache is not properly set before freeing the allocated cache.

shambase::get_check_ref(storage.ghost_cache)
    // get_check_ref ensures that the ghost_cache is properly initialized before use.
    // If the ghost_cache is not properly set, it throws an exception to prevent attempting to free an invalid cache.
    .free_alloc();

@github-actions
Copy link
Contributor

Workflow report

workflow report corresponding to commit 07e8d67
Commiter email is guo.yansong.ngy@gmail.com
GitHub page artifact URL GitHub page artifact link (can expire)

Pre-commit check report

Pre-commit check: ✅

trim trailing whitespace.................................................Passed
fix end of files.........................................................Passed
check for merge conflicts................................................Passed
check that executables have shebangs.....................................Passed
check that scripts with shebangs are executable..........................Passed
check for added large files..............................................Passed
check for case conflicts.................................................Passed
check for broken symlinks................................................Passed
check yaml...............................................................Passed
detect private key.......................................................Passed
No-tabs checker..........................................................Passed
Tabs remover.............................................................Passed
Validate GitHub Workflows................................................Passed
clang-format.............................................................Passed
ruff check...............................................................Passed
ruff format..............................................................Passed
Check doxygen headers....................................................Passed
Check license headers....................................................Passed
Check #pragma once.......................................................Passed
Check SYCL #include......................................................Passed
No ssh in git submodules remote..........................................Passed
No UTF-8 in files (except for authors)...................................Passed

Test pipeline can run.

Clang-tidy diff report

/__w/Shamrock/Shamrock/src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:30:10: error: 'shammodels/gsph/modules/GSPHGhostHandler.hpp' file not found [clang-diagnostic-error]
   30 | #include "shammodels/gsph/modules/GSPHGhostHandler.hpp"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

48 warnings and 1 error generated.
Error while processing /__w/Shamrock/Shamrock/src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp.
Suppressed 48 warnings (48 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
Found compiler errors, but -fix-errors was not specified.
Fixes have NOT been applied.

Found compiler error(s).

Doxygen diff with main

Removed warnings : 43
New warnings : 50
Warnings count : 7949 → 7956 (0.1%)

Detailed changes :
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:100: warning: Member rtree_rint_field (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:107: warning: Member ghost_layout (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:109: warning: Member merged_patchdata_ghost (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:116: warning: Member soundspeed (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:117: warning: Member rtree_rint_field (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\rho'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\rho'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\rho'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:120: warning: Found unknown command '\rho'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:121: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:121: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:121: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:121: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:122: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:122: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:122: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:122: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:123: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:123: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:123: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:123: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:124: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:124: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:124: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:124: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:124: warning: Member ghost_layout (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:126: warning: Member merged_patchdata_ghost (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:132: warning: Member old_duint (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:133: warning: Member soundspeed (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:136: warning: Member interface (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\rho'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\rho'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\rho'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Found unknown command '\rho'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:137: warning: Member neighbors (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:138: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:138: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:138: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:138: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:138: warning: Member io (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:139: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:139: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:139: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:139: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:140: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:140: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:140: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:140: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:141: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:141: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:141: warning: Found unknown command '\nabla'
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:141: warning: Found unknown command '\nabla'
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:141: warning: Member reset() (function) of struct shammodels::gsph::SolverStorage::Timings is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:142: warning: Member timings_details (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:149: warning: Member old_duint (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:153: warning: Member interface (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:154: warning: Member neighbors (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:155: warning: Member io (variable) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:158: warning: Member reset() (function) of struct shammodels::gsph::SolverStorage::Timings is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:159: warning: Member timings_details (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:48: warning: Member Component (typedef) of namespace shammodels::gsph is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:52: warning: Member Component (typedef) of namespace shammodels::gsph is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:64: warning: Member Tscal (typedef) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:65: warning: Member dim (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:68: warning: Member GhostHandle (typedef) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:68: warning: Member Tscal (typedef) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:69: warning: Member GhostHandleCache (typedef) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:69: warning: Member dim (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:71: warning: Member RTree (typedef) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:72: warning: Member GhostHandle (typedef) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:73: warning: Member GhostHandleCache (typedef) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:75: warning: Member RTree (typedef) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:75: warning: Member part_counts_with_ghost (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:79: warning: Member hpart_with_ghosts (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:90: warning: Member part_counts_with_ghost (variable) of struct shammodels::gsph::SolverStorage is not documented.
- src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:92: warning: Member ghost_patch_cache (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/modules/SolverStorage.hpp:94: warning: Member hpart_with_ghosts (variable) of struct shammodels::gsph::SolverStorage is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/solvergraph/GhostCacheEdge.hpp:38: warning: Member GhostHandle (typedef) of class shammodels::gsph::solvergraph::GhostCacheEdge is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/solvergraph/GhostCacheEdge.hpp:39: warning: Member CacheMap (typedef) of class shammodels::gsph::solvergraph::GhostCacheEdge is not documented.
+ src/shammodels/gsph/include/shammodels/gsph/solvergraph/GhostCacheEdge.hpp:41: warning: Member cache (variable) of class shammodels::gsph::solvergraph::GhostCacheEdge is not documented.
+ src/shamrock/include/shamrock/solvergraph/IEdge.hpp:30: warning: Member get_label() const (function) of class shamrock::solvergraph::IEdge is not documented.
+ src/shamrock/include/shamrock/solvergraph/IEdge.hpp:31: warning: Member get_tex_symbol() const (function) of class shamrock::solvergraph::IEdge is not documented.
+ src/shamrock/include/shamrock/solvergraph/IEdgeNamed.hpp:28: warning: Member IEdgeNamed(std::string name, std::string texsymbol) (function) of class shamrock::solvergraph::IEdgeNamed is not documented.
+ src/shamrock/include/shamrock/solvergraph/IEdgeNamed.hpp:30: warning: Member _impl_get_dot_label() const (function) of class shamrock::solvergraph::IEdgeNamed is not documented.
+ src/shamrock/include/shamrock/solvergraph/IEdgeNamed.hpp:31: warning: Member _impl_get_tex_symbol() const (function) of class shamrock::solvergraph::IEdgeNamed is not documented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants