monanadmin / monan

Repositório organizacional das atividades dos macro-grupos do MONAN - Model for Ocean-laNd-Atmosphere PredictioN
14 stars 10 forks source link

[GCC] GRC: Ferramenta Understand - 3 [Spike] #471

Closed joaomas closed 2 months ago

joaomas commented 3 months ago

:people_holding_hands: User Story

COMO Saulo, QUEREMOS Testar e investigar o funcionamento da ferramenta Understand PARA Adiantar o conhecimento de seu funcionamento em futura aquisição.

:clipboard: Critérios de aceite de conclusão da Issue

:pencil: Detalhamento adicional da atividade

:comet: Impactos

-.

:link: Dependências

469

470

:hammer_and_wrench: Solução

Solução 1 (Teste Hello World)

(...)

Solução 2 (Teste com Fork do Saulo solicitando PR)

Pull Request do Saulo: https://github.com/monanadmin/MONAN-Model/pull/5 Fork do Saulo: https://github.com/saulorfreitas/MONAN_Phys_SRF

Download Trial Version: Download Understand 6.5.1181

Linux Installation Guide: https://support.scitools.com/support/solutions/articles/70000583175-installing-on-linux

tar -xvzf Understand-6.4.1140-Linux-64bit.tgz
cd scitools/bin/linux64
./understand

Image

Trial Versoin

Inserido a Trial License recebido por e-mail em Help -> Licensing.

Trial Version: You have full access to all GUI features using your own code or any of our sample projects. When using your own code you will get the most accurate results when you have a fully analyzed project with no errors. We will be in touch, but feel free to contact Scitools at support@scitools.com.

//

Sumário primeira execução:

Image

Exemplo de "erro" em physics_monan:

Image

CodeCheck:

É possível selecionar vários itens de verificação, nota-se que temos pelo menos 1 regra da DTN01.

Image

Também é possível testar padrões da linguagem Fortran:

Image

Resultado do CodeCheck para a pasta "physics_monan:"

File selection set to Selected files (11) Begin Automatic Ignores Phase End Automatic Ignores Phase Begin Global Check Phase Global: Duplicate Code - RECOMMENDED_20: Violations found End Global Check Phase Begin File Check Phase File: src/core_atmosphere/physics/physics_monan/utils_monan/modHenrysLawCts.F90: Violations found File: src/core_atmosphere/physics/physics_monan/utils_monan/modConstants.F90: Violations found File: src/core_atmosphere/physics/physics_monan/utils_monan/modVector.F90: Violations found File: src/core_atmosphere/physics/physics_monan/modGate.F: Violations found File: src/core_atmosphere/physics/physics_monan/lib_module_cu_gf.monan.F: Violations found File: src/core_atmosphere/physics/physics_monan/modHenrysLawCts.F: Violations found File: src/core_atmosphere/physics/physics_monan/orig/modConvParGF.F90: Violations found File: src/core_atmosphere/physics/physics_monan/module_cu_gf.monan.F: Violations found File: src/core_atmosphere/physics/physics_monan/utils_monan/modGate.F90: Violations found File: src/core_atmosphere/physics/physics_monan/modConstants.F: Violations found File: src/core_atmosphere/physics/physics_monan/modVector.F: Violations found End File Check Phase End Duration: 5:12

Check run times: 1 RECOMMENDED_20 05:10.837 2 RECOMMENDED_12 00.778 3 RECOMMENDED_19 00.272 4 RECOMMENDED_18 00.132 5 RECOMMENDED_13 00.014 CheckTimes Count = 5 Checks Started = 5 Checks Ended = 5 Check Times Lost = 0 Checks Not Started = RECOMMENDED_07 Checks Not Ended = RECOMMENDED_07 Checks Not Started = RECOMMENDED_15 Checks Not Ended = RECOMMENDED_15 Checks Not Started = RECOMMENDED_09 Checks Not Ended = RECOMMENDED_09 Checks Not Started = RECOMMENDED_05 Checks Not Ended = RECOMMENDED_05 Checks Not Started = RECOMMENDED_06 Checks Not Ended = RECOMMENDED_06 Checks Not Started = RECOMMENDED_01 Checks Not Ended = RECOMMENDED_01 Checks Not Started = RECOMMENDED_02 Checks Not Ended = RECOMMENDED_02 Checks Not Started = RECOMMENDED_08 Checks Not Ended = RECOMMENDED_08 Checks Not Started = RECOMMENDED_03 Checks Not Ended = RECOMMENDED_03 Checks Not Started = RECOMMENDED_10 Checks Not Ended = RECOMMENDED_10 Checks Not Started = RECOMMENDED_14 Checks Not Ended = RECOMMENDED_14 Checks Not Started = RECOMMENDED_17 Checks Not Ended = RECOMMENDED_17 Checks Not Started = RECOMMENDED_11 Checks Not Ended = RECOMMENDED_11 Checks Not Started = RECOMMENDED_00 Checks Not Ended = RECOMMENDED_00 Checks Not Started = RECOMMENDED_04 Checks Not Ended = RECOMMENDED_04 Checks Not Started = RECOMMENDED_16 Checks Not Ended = RECOMMENDED_16 Total Check Times: 05:12.033

Inspection Summary: Files: 11 Checks: 21 Violations Found: 10621 Violations Ignored: 0 Violations Remaining: 10621

Exemplos de violações:

Image

Image

Image

Image

Outras funções

Gráfico - Call & Called:

Image

Dependency

Image

Métricas

Image

...

:rotating_light: Problemas encontrados

-.

:white_check_mark: Conclusão

:spiral_calendar: Trabalhos Futuros

-.

joaomas commented 3 months ago

@klclaudio já adicionei o processo de instalação no Linux e ativação da licença, deve ser igual no seu caso.