Árvore genealógica da conversa de hoje
Reconstruída da transcrição (as tuas perguntas por ordem). A PROFUNDIDADE mostra a descendência: cada nó nasceu do nó acima/à esquerda — não da raiz. Repara no ramo 4: uma simples pergunta de arrumação («onde estão os dados?») desceu 6 níveis até ao dispatch C++. ← cartão de retoma
SESSÃO · objetivo inicial: Figuras do relatório anual — impacto do bug θv (p/ a Hui)
1 · FIGURA 1 — curtains in-and-out ✓ (verificação · código ORIGINAL via git worktree origbug · estética v2: θv, 0–0.25, EAM/EAMxx)
1a · física: a «linha» a ~840 m = a inversão inicial de θv, congelada pelo bug
email à Hui a explicar a figura («shopped»)
correção: o run CORRIGIDO também corta na inversão real (não é só o bug)
auditoria das oscilações (sawtooth) — agente adversarial → é sub-amortecimento, não numérico
1b · proveniência: que branch usei para o Fortran?
porquê criámos o readwriteE3SMShoc / porquê não foi merged
driver standalone vs esse branch → dão o mesmo?
outer vs inner loop → exp2
2 · FIGURA 2 — curtains SCM DYCOMS regular ✓
grelhas: L160 / L80 / (disseste 128 — era SCREAM) → config PADRÃO do SCM
branch do bug (maint-3.0-scm) + timesteps (host 300s, shoc 60s, nadv=5, 6h)
sinal fraco em L80/L160 → dz10m mac_simprad (o que mostra estrutura)
3 · CALL-FLOW MAP (Fortran↔C++, «estilo da página de auditoria»)
difícil de ler → tags [A]–[D]
agente de auditoria → 4 erros corrigidos
field manager (caixa D) → «porque a caixa D não é a caixa A?»
4 · «ONDE ESTÃO OS DADOS DA FIG 1?» — simples pergunta de arrumação ↓ daqui desceu a russian-doll
esquema de PROVENIÊNCIA dos ficheiros (script + 4 .txt vs run E3SM)
«como corri isto? foi o unit test?» → esquema DRIVER vs UNIT-TEST
«o que inclui o shoc_in_and_out.cpp? ≡ shoc_main quando l_turb_standalone?»
esquema DRIVER vs E3SM («what shoc_in_and_out does») + versão EN p/ colegas
4a · RAMO DOCS: os 2 modos exp1/exp2 → porquê exp1≡exp2 → MOTIVAÇÃO original do framework ✓
atualizar página exp1-vs-exp2 + README → nota «o framework EXPÔS o bug θv» ✓
4b · RAMO DEEP-DIVE ao código ← ESTÁS AQUI
«corre os 2 motores? como?» → o ficheiro é ⅔ parsing de ICs → o que é «parsing» → onde a chamada C++
use_fortran / flag -f → onde está o shoc_main_wrap.cpp → o que faz (JÁ EXISTIA) → _c=Fortran / _f=C++