-
Notifications
You must be signed in to change notification settings - Fork 7
Cpp doc #52
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
Open
chemiskyy
wants to merge
13
commits into
master
Choose a base branch
from
cpp_doc
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Added Doxygen and Breathe support for C++ API documentation. Updated the GitHub Actions workflow, Makefile, and Sphinx configuration to automate Doxygen XML generation and integrate it with Sphinx via Breathe. Improved Makefile usability with new targets and enhanced documentation build process.
Introduces comprehensive Doxygen-based C++ API documentation integrated with Sphinx, including module and function references for continuum mechanics, simulation, homogenization, and UMATs. Adds detailed guides and examples for developing external user material plugins in native, Abaqus, and Ansys formats. Updates external.rst with plugin interface documentation and build instructions.
Deleted the entire doxdocs directory, including Doxyfile, Makefile, Sphinx configuration, and related documentation sources. This removes Doxygen and Sphinx-based documentation generation from the project.
Changed the documentation deployment workflow to deploy to simcoon-docs/main only for the main branch and to simcoon-docs/PRXX for each pull request. Updated branch checks and deployment settings accordingly.
Updated function and constructor signatures across multiple headers to use explicit parameter names, improving code readability and maintainability. Added a new 'umat_plugin_ans_api' interface for ANSYS UMAT plugins. Also standardized friend stream operator signatures and removed redundant nested class definitions.
Introduces a comprehensive overview document for the Continuum Mechanics C++ API, detailing module organization, mathematical foundations, usage patterns, design philosophy, and references. This serves as a guide for users and developers to understand the structure and capabilities of the continuum mechanics components.
Introduces a comprehensive overview of the Simulation module, detailing its architecture, key components, workflows, and advanced features. This documentation serves as a reference for users and developers to understand simulation execution, phase management, parameter identification, mathematical utilities, and geometric primitives.
Enhanced the header documentation for the compressible Neo-Hookean hyperelastic constitutive model, providing detailed mathematical formulation, parameter descriptions, usage example, and references. The function signature was updated for clarity, but no functional code changes were made.
Expanded and standardized Doxygen-style documentation for damage, elasticity, and plasticity UMAT header files. The updates provide comprehensive descriptions of model equations, parameters, state variables, usage examples, and references, improving clarity and usability for developers and users.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request significantly enhances the documentation build system by integrating C++ API documentation generation with Doxygen and Breathe, updating the Sphinx configuration, and improving the Makefile and CI workflow for a more robust and user-friendly experience. It also introduces new and expanded documentation pages for various modules and functions.
Documentation Build System Integration and Improvements:
Doxygen and Breathe Integration:
Doxyfilefor C++ API documentation generation and configures Sphinx to use Breathe for rendering Doxygen XML output. This enables seamless integration of C++ API docs into the Sphinx-generated documentation. [1] [2]doxygen,html,html-only,clean-doxy,rebuild,serve,open), and improve developer experience with detailed help output. [1] [2]conf.py) to run Doxygen automatically if needed, set up Breathe, and suppress specific warnings for smoother builds. [1] [2] [3]CI Workflow Enhancements:
_builddirectory structure, ensuring consistency across local and CI builds. [1] [2] [3]Expanded and New Documentation:
C++ API Documentation:
docs/cpp_api/continuum_mechanics/functions/for key C++ headers (constitutive.hpp,contimech.hpp,criteria.hpp,damage.hpp) with overviews and links to Doxygen-generated API references. [1] [2] [3] [4]Python API Documentation:
Other Improvements:
Most important changes:
Documentation build system & CI integration:
Doxyfileand integrated Doxygen with Sphinx via Breathe for automated C++ API documentation, including configuration in both the Makefile andconf.py. [1] [2] [3] [4]_buildoutputs, ensuring consistent and efficient documentation builds and deployments. [1] [2] [3] [4]Expanded documentation content:
constitutive.hpp,contimech.hpp,criteria.hpp, anddamage.hpp. [1] [2] [3] [4]Developer experience improvements: