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

refactor: Log level documentation on SolverBase and children #3230

Merged
merged 81 commits into from
Oct 15, 2024

Conversation

arng40
Copy link
Contributor

@arng40 arng40 commented Jul 18, 2024

This PR is the first iteration to document all logLevel in GEOS and to invite the contributors to set descriptions when they enable the logLevel wrapper:
In the first iteration, the work of this PR would be limited to Solverbase and its children.

Currently, we have this output in all Group documentation files:

========= ========= ======== ================
Name      Type      Default  Description                                                                             
========= ========= ======== ================
[...]
logLevel  integer   0        Log level     
========= ========= ======== ================

This PR allows to add more context to all logLevels of GEOS:

I.e. SolidMechanics_LagrangianFEM.rst :

========= ========= ======== ========================================================================================
Name      Type      Default  Description                                                                             
========= ========= ======== ========================================================================================
[...]
logLevel  integer   0        | Sets the level of information to write in the standard output (the console typically).
                             | A level of 0 outputs minimal information, higher levels require more.                 
                             | 1                                                                         
                             |  - Information on line search                                                         
                             |  - Information on global solution scaling factor                                      
                             |  - Information on the timestep                                                        
                             |  - Print residual norm                                                                                               
                             |  - Information about testing new configuration and print the time step                                             
                             |  - Information about line search failed                                                                                             
                             |  - Information on number of iterations and residual reduction                                                              
                             |  - Information on each newton Iteration                                                               
                             |  - Indicate allowed residual norm                                                     
                             | 2                                                                         
                             |  - Output to screen the assembled linear system and solutions (matrices and vectors)  
                             |  - Infos on residuals values                                                                                                        
                             |  - Warning about boundary conditions                                                  
                             | 3                                                                         
                             |  - Output to file the assembled linear system and solutions (matrices and vectors)    
========= ========= ======== ========================================================================================

In this PR, both of the mechanism will exists at the same times, the old one will be marked as deprecated. The upcoming PR will remove it and document all other groups.

/// [DEPRECATED] Enable verbosity input for object
void enableLogLevelInput();

@arng40 arng40 changed the title Log level refactoring POC refactor: Log level Jul 18, 2024
@arng40 arng40 changed the title refactor: Log level refactor: Log level documentation Jul 18, 2024
@arng40 arng40 marked this pull request as ready for review July 19, 2024 15:12
@arng40 arng40 requested a review from sframba as a code owner July 19, 2024 15:12
@arng40
Copy link
Contributor Author

arng40 commented Oct 3, 2024

@CusiniM I just updated my branch with pavel's pr, it should looks good now

Copy link
Contributor

@paveltomin paveltomin left a comment

Choose a reason for hiding this comment

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

please figure out what can be done with line break for residuals output, otherwise it should be good to go

@paveltomin paveltomin added the type: feature New feature or request label Oct 3, 2024
@paveltomin
Copy link
Contributor

and there are few places in wave solvers that I didn't really touch but they should be changed for consistency

@MelReyCG MelReyCG self-requested a review October 7, 2024 08:24
Copy link
Contributor

@MelReyCG MelReyCG left a comment

Choose a reason for hiding this comment

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

  • You may have forgotten SourceFluxStatistics & SolverStatistics (with logInfo::Statistics)

@paveltomin
Copy link
Contributor

this was around the top of the queue, no?
somehow felt back into "in review" but should be good to merge?

Copy link
Contributor

@MelReyCG MelReyCG left a comment

Choose a reason for hiding this comment

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

@victorapm 's requests seem to be adressed as well as mines, so I think this PR is right to be merged.
There will be a follow-up PR for the other messages.

@paveltomin paveltomin merged commit 5a97808 into develop Oct 15, 2024
23 of 24 checks passed
@paveltomin paveltomin deleted the feature/dudes/log-level-doc-poc branch October 15, 2024 14:17
@paveltomin paveltomin added flag: no rebaseline Does not require rebaseline and removed flag: ready for review labels Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci: run CUDA builds Allows to triggers (costly) CUDA jobs ci: run integrated tests Allows to run the integrated tests in GEOS CI flag: no rebaseline Does not require rebaseline type: feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants