🚀 Auto-deploy: BrainWind atualizado em 27/07/2026 18:39:28
This commit is contained in:
@@ -0,0 +1,159 @@
|
||||
# 🌍 PLANO ARQUITETURAL DE EXPANSÃO: NORMAS INTERNACIONAIS DE VENTO & BENCHMARKING MULTI-NORMA
|
||||
|
||||
> **Documento de Visão Técnica, Segurança Arquitetural e Roadmap Futuro**
|
||||
> **Projeto:** VentoApp / BrainWind — Engenharia de Vento Avançada
|
||||
> **Estado Atual (Julho/2026):** Domínio completo da NBR 6123:2023 (100% coberta, 36 tabelas, testes unitários travados, visualizador 3D interativo, cálculo puro determinístico).
|
||||
|
||||
---
|
||||
|
||||
## 1. A Visão e O Sonho Técnico
|
||||
|
||||
Transformar o **BrainWind / VentoApp** em mais do que o melhor software brasileiro de cálculo de ações do vento: elevá-lo ao status de **Plataforma de Auditoria e Benchmarking Internacional de Engenharia de Vento**.
|
||||
|
||||
O objetivo é permitir que engenheiros estruturais, peritos e pesquisadores possam:
|
||||
1. Projetar estruturas segundo normas internacionais (**Eurocode 1 — EN 1991-1-4**, **ASCE 7-22 — EUA**, **AS/NZS 1170.2 — Austrália/Nova Zelândia**).
|
||||
2. Confrontar em **tempo real e lado a lado** os esforços gerados pela **NBR 6123:2023** contra 2, 3 ou 4 normas mundiais simultaneamente para a mesma geometria.
|
||||
3. Entender com clareza aerodinâmica e visual onde cada norma é mais conservadora ou mais econômica.
|
||||
|
||||
---
|
||||
|
||||
## 2. A Premissa Sagrada: Proteção do "Coração Intocável" (NBR 6123:2023)
|
||||
|
||||
O maior risco de softwares estruturais em expansão é a **regressão funcional** — quebrar o que já está estável, testado e confiável para acomodar novos requisitos. Para que esse risco seja **ZERO**, estabelecemos o seguinte pacto arquitetural:
|
||||
|
||||
### 2.1. Princípio Aberto-Fechado (SOLID — *Open-Closed Principle*)
|
||||
* O código atual de cálculo da NBR 6123 (`src/lib/nbr-tables/`, `src/lib/modules/`, `src/lib/wind-kernel.ts`) permanece **estritamente fechado para modificações**.
|
||||
* Nenhuma rotina, tabela ou constante existente da NBR 6123 precisará ou deverá ser editada para acomodar uma norma estrangeira.
|
||||
* Toda nova norma será implementada como um **pacote independente e isolado** em diretórios dedicados (`src/lib/eurocode-tables/`, `src/lib/asce-tables/`, `src/lib/standards-drivers/`).
|
||||
|
||||
### 2.2. NBR 6123 como Padrão Intocável (*Default Root*)
|
||||
* Ao iniciar o aplicativo ou carregar um projeto brasileiro, o motor rodará exclusivamente no fluxo nativo da NBR 6123, preservando a experiência de uso de 100% dos engenheiros brasileiros sem latência ou burocracia adicional de parâmetros internacionais.
|
||||
|
||||
---
|
||||
|
||||
## 3. Arquitetura de "Drivers Normativos" (`StandardStrategy`)
|
||||
|
||||
Para desacoplar a geometria do modelo físico de cálculo, elevamos a arquitetura para o padrão **Strategy Driver**:
|
||||
|
||||
```
|
||||
┌──────────────────────────────────────────────┐
|
||||
│ MODELO GEOMÉTRICO CANÔNICO (CORE) │
|
||||
│ (b, d, h, θ, Permeabilidades, Topografia) │
|
||||
└──────────────────────┬───────────────────────┘
|
||||
│
|
||||
┌───────────────────────┴───────────────────────┐
|
||||
▼ ▼ ▼
|
||||
┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐
|
||||
│ Driver NBR 6123 │ │ Driver Eurocode 1 │ │ Driver ASCE 7-22 │
|
||||
│ (NBR6123Driver) │ │ (EN1991_1_4Driver) │ │ (ASCE7_22Driver) │
|
||||
└──────────┬──────────┘ └──────────┬──────────┘ └──────────┬──────────┘
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
Tabelas NBR (36) Tabelas EN 1991-1-4 Tabelas ASCE 7-22
|
||||
(Rajada de 3 seg) (Média de 10 min) (Rajada + Fator Kz)
|
||||
```
|
||||
|
||||
### 3.1. Conciliação Físico-Atmosférica (Fator de Durst & Tempos de Base)
|
||||
As normas mundiais diferem no tempo de média da velocidade do vento de referência:
|
||||
* **NBR 6123 e ASCE 7-22:** Baseiam-se na velocidade de **rajada de 3 segundos**.
|
||||
* **Eurocode 1 (EN 1991-1-4):** Baseia-se na velocidade **média de 10 minutos**.
|
||||
* **Solução:** O motor canônico integrará conversores espectrais normatizados (ex.: **Fator de Durst / Curvas de Cook**) que permitem transacionar velocidades de 10 minutos para rajadas de 3 segundos com precisão matemática, colocando todas as normas na **mesma base física real de energia cinética do fluxo**.
|
||||
|
||||
---
|
||||
|
||||
## 4. O Segredo de UX: Mapeamento Inteligente e "Tradução Normativa"
|
||||
|
||||
Para que o usuário **não precise preencher 4 cadastros inteiros** só para ver um comparativo, o sistema dividirá os parâmetros de entrada em duas camadas:
|
||||
|
||||
### 4.1. Camada 1: Parâmetros Universais (Canônicos)
|
||||
Comuns a 100% das estruturas no planeta:
|
||||
* **Geometria:** Largura ($b$), Vão/Comprimento ($d$), Altura dos pilares ($h$), Inclinação da cobertura ($\theta$).
|
||||
* **Física:** Percentual de fechamento de paredes ($0\%$ a $100\%$), velocidade base de projeto ($m/s$).
|
||||
|
||||
### 4.2. Camada 2: Tradutor Automático de Padrões (*Default Mapping Adaptor*)
|
||||
Quando o engenheiro projeta um galpão com dados brasileiros, o **Tradutor Normativo** infere automaticamente as propriedades correspondentes nas outras normas em segundo plano:
|
||||
* *Categoria de Terreno IV (Brasil) $\longrightarrow$ Terrain Category III (Eurocode 1) $\longrightarrow$ Exposure Category C (ASCE 7).*
|
||||
* *Classe de Edificação B (Brasil) $\longrightarrow$ Fator de Pico / Altura equivalente.*
|
||||
|
||||
### 4.3. Gaveta de Ajustes Normativos Específicos (*Overrides*)
|
||||
Para engenheiros peritos que desejam refinar parâmetros exclusivos de uma norma estrangeira sem alterar a geometria global, a interface disponibilizará um painel retrátil **"Ajustes Normativos Específicos"**:
|
||||
* **Exemplo ASCE 7:** Permite alterar manualmente a *Enclosure Classification* (`Enclosed`, `Partially Enclosed`, `Partially Open`, `Open`) e o fator de altitude acima do nível do mar ($K_e$).
|
||||
* **Exemplo Eurocode 1:** Permite ajustar a densidade do ar em função de temperatura e altitude em locais específicos da Europa.
|
||||
|
||||
---
|
||||
|
||||
## 5. Isolamento e Blindagem de Arquivos Salvos (`Project Schema`)
|
||||
|
||||
Para evitar mistura de referências ou corrupção de dados:
|
||||
1. **Atributo `standard` Obrigatório no Schema JSON:**
|
||||
Todo arquivo salvo conterá explicitamente a norma de origem:
|
||||
```json
|
||||
{
|
||||
"id": "galpao-logistico-01",
|
||||
"standard": "NBR6123_2023",
|
||||
"version": "2.0.0",
|
||||
"geometry": { "width": 20, "depth": 40, "height": 8, "theta": 15 },
|
||||
"parameters": { "v0": 45, "s1": 1.0, "s2Category": 4, "s2Class": "B", "s3": 1.0 }
|
||||
}
|
||||
```
|
||||
2. **Guarda de Carregamento (*Schema Guard*):**
|
||||
Ao abrir um arquivo, o app identifica a chave `"standard"`. Se um arquivo do Eurocode for aberto por engano, a interface avisará o usuário, trocando o contexto visual para as tabelas e símbolos correspondentes sem sobrescrever o projeto brasileiro.
|
||||
|
||||
---
|
||||
|
||||
## 6. O Módulo de "Benchmarking Lado a Lado" (Comparativo em Tempo Real)
|
||||
|
||||
Como cada cálculo estrutural de vento executado em TypeScript puro roda em **menos de 2 milissegundos**, o aplicativo é capaz de executar **4 motores em paralelo em tempo real** sempre que o usuário mover um slider.
|
||||
|
||||
### 6.1. Tabela de Confronto Direto (`kN/m²` e `kN`)
|
||||
Uma tela dedicada que coloca frente a frente:
|
||||
* **Pressão Efetiva Crítica e Força Total:** Por zona do telhado, paredes frontais/traseiras e esforços na base do pilar.
|
||||
* **Mapa de Conservadorismo (Cores Críticas):** Destacando automaticamente em **Vermelho** a norma que exige a maior carga de projeto (mais conservadora) e em **Verde** a mais branda para cada elemento estrutural.
|
||||
|
||||
### 6.2. Gráficos de Delta Percentual ($\Delta\%$)
|
||||
Gráficos de barra em SVG/Recharts mostrando os deltas em tempo real:
|
||||
* *Exemplo de insight automático:* "Para esta inclinação de $15^\circ$, a **ASCE 7-22** prescreve forças de sucção nos cantos do telhado **+14,2% maiores** que a **NBR 6123**, enquanto o **Eurocode 1** fica **-5,8% menor**."
|
||||
|
||||
### 6.3. Modelo 3D Interativo Multi-Norma (*Split-Screen / Toggle*)
|
||||
* Opção de **Abas Instantâneas no topo do 3D:** (`[ NBR 6123 ] [ Eurocode 1 ] [ ASCE 7-22 ]`). Clicar na aba altera na hora o mapa de cores de pressão na geometria 3D.
|
||||
* **Modo Tela Dividida (*Split-Screen*):** Corta o modelo 3D ao meio, mostrando do lado esquerdo o gradiente de pressões da NBR 6123 e do lado direito o gradiente da norma comparada.
|
||||
|
||||
---
|
||||
|
||||
## 7. O "Selo de Garantia": Bateria de Testes contra a Literatura Estrangeira
|
||||
|
||||
Para que qualquer norma estrangeira receba o selo de confiança técnica do **BrainWind**, ela deverá ser aprovada em uma suíte de testes unitários (`Vitest` em `src/lib/__tests__/standards/`) travada contra exercícios de referência consagrados:
|
||||
|
||||
| Norma | Fonte Literária Oficial para Travamento de Testes Unitários |
|
||||
| :--- | :--- |
|
||||
| **ASCE 7-22 (EUA)** | • *Guide to the Wind Load Provisions of ASCE 7-22* (ASCE / SEAOC)<br>• *SEAOC Structural/Seismic Design Manual — Wind Examples* |
|
||||
| **Eurocode 1 (EN 1991-1-4)** | • *ECCS — Designers' Guide to EN 1991-1-4 (Eurocode 1)*<br>• *JRC Technical Reports (European Commission) — Steel & Wind Design* |
|
||||
| **AS/NZS 1170.2 (Aus/NZ)** | • *Australian Guide to the Wind Loading Standard AS/NZS 1170.2* (Engineers Australia) |
|
||||
|
||||
### 7.1. Testes de Invariância Aerodinâmica
|
||||
Além do teste dos exemplos numéricos, a suíte rodará **testes de invariância relacional**:
|
||||
* Em qualquer das 4 normas, a face de barlavento **sempre** deve resultar em sobrepressão positiva.
|
||||
* O topo da cumeeira de telhados em duas águas **sempre** deve registrar pico de sucção na separação de escoamento.
|
||||
* O alívio aerodinâmico em abrigos com abertura superior **sempre** deve reduzir o arrancamento vertical.
|
||||
|
||||
---
|
||||
|
||||
## 8. Roadmap de Execução Recomendado
|
||||
|
||||
```
|
||||
[ FASE ATUAL ] ──► CONSOLIDAÇÃO TOTAL NBR 6123:2023 (100% Norma, 100% Testes, UI/3D Impecável)
|
||||
│
|
||||
▼
|
||||
[ FASE FUTURA 1 ] ──► Criação da Camada "StandardStrategy" (Isolada, sem mexer no Core NBR)
|
||||
│
|
||||
▼
|
||||
[ FASE FUTURA 2 ] ──► Driver Eurocode 1 (EN 1991-1-4) + Testes de Bancada ECCS / JRC
|
||||
│
|
||||
▼
|
||||
[ FASE FUTURA 3 ] ──► Driver ASCE 7-22 (EUA) + Testes de Bancada ASCE Guide / SEAOC
|
||||
│
|
||||
▼
|
||||
[ FASE FUTURA 4 ] ──► Lançamento da Tela "Benchmarking Lado a Lado & Auditoria Multi-Norma"
|
||||
```
|
||||
|
||||
> **Conclusão:** Seguindo este plano, mantemos nossa estabilidade 100% blindada e criamos uma das mais avançadas e respeitadas ferramentas de engenharia de vento da América Latina e do mundo.
|
||||
Reference in New Issue
Block a user