From d634e869d47ea3ecbf041292542e00c38de518ab Mon Sep 17 00:00:00 2001 From: Marcos Date: Mon, 13 Jul 2026 19:40:54 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Auto-deploy:=20BrainWind=20atual?= =?UTF-8?q?izado=20em=2013/07/2026=2019:40:54?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/components/EducationalManual.tsx | 22 ++++++++ app/src/data/manuals/index.ts | 2 + app/src/data/manuals/piperack.tsx | 67 ++++++++++++++++++++++++ app/src/pages/PiperackModule.tsx | 4 ++ 4 files changed, 95 insertions(+) create mode 100644 app/src/data/manuals/piperack.tsx diff --git a/app/src/components/EducationalManual.tsx b/app/src/components/EducationalManual.tsx index d1635de..6bce991 100644 --- a/app/src/components/EducationalManual.tsx +++ b/app/src/components/EducationalManual.tsx @@ -146,6 +146,28 @@ export function EducationalManual({ type, params }: EducationalManualProps) { ); } } + + // --- Pipe-racks (piperack) --- + if (type === 'piperack') { + const numFrames = Number(params.numFrames || 1); + const phiTotal = Number(params.phiTotal || 0.5); + + explanations.push( +
+ Bloqueio Frontal (φ = {phiTotal.toFixed(2)}) +

Seu pórtico bloqueia {Math.round(phiTotal * 100)}% da área que o vento tenta atravessar. Quanto maior o bloqueio, maior a força de arrasto no primeiro pórtico, mas maior será a proteção (sombra aerodinâmica) para os pórticos seguintes.

+
+ ); + + if (numFrames > 1) { + explanations.push( +
+ Pórticos Múltiplos (n = {numFrames}) +

O primeiro pórtico recebe carga total (F. Frontal). Os {numFrames - 1} pórticos traseiros recebem carga atenuada devido à esteira turbulenta (Fator de Proteção η). Juntos, formam a Força Global de arrasto na esteira.

+
+ ); + } + } if (explanations.length === 0) return null; diff --git a/app/src/data/manuals/index.ts b/app/src/data/manuals/index.ts index 6930a92..4f9fc4a 100644 --- a/app/src/data/manuals/index.ts +++ b/app/src/data/manuals/index.ts @@ -8,6 +8,7 @@ import { domeManual } from './dome'; import { barManual } from './bar'; import { dynamicsManual } from './dynamics'; import { isolatedRoofManual } from './isolated-roof'; +import { piperackManual } from './piperack'; export const manuals: Record = { bridge: bridgeManual, @@ -20,4 +21,5 @@ export const manuals: Record = { bar: barManual, dynamics: dynamicsManual, 'isolated-roof': isolatedRoofManual, + piperack: piperackManual, }; diff --git a/app/src/data/manuals/piperack.tsx b/app/src/data/manuals/piperack.tsx new file mode 100644 index 0000000..a63fd67 --- /dev/null +++ b/app/src/data/manuals/piperack.tsx @@ -0,0 +1,67 @@ +export const piperackManual = { + title: 'Pipe-Racks e Reticulados Múltiplos', + intro: 'Ação do vento em pórticos paralelos sucessivos (Pipe-racks, correias transportadoras e galerias), cobrindo o coeficiente de arrasto frontal e os fatores de proteção mútua para os pórticos traseiros (Sec. 7 - NBR 6123).', + sections: [ + { + title: 'Geometria de Referência e Índice de Solidez', + content: ( + <> +

+ O vento age primariamente na face perpendicular aos pórticos paralelos. A área efetiva de bloqueio do pórtico frontal determina a quantidade de vento que "atravessa" a estrutura e atinge os pórticos seguintes. +

+
    +
  • Índice de Solidez (φ): É a razão entre a área sólida frontal (vigas, colunas e tubulações transversais) e a área total delimitada pelo contorno do pórtico.
  • +
  • Para Pipe-racks, tubulações transversais que cruzam a face de barlavento aumentam drasticamente a solidez e o bloqueio aerodinâmico.
  • +
+ + ) + }, + { + title: 'Força no Pórtico Frontal', + content: ( + <> +

+ O primeiro pórtico que recebe o vento é chamado de Pórtico Frontal. Por não ter nenhuma proteção à frente, ele recebe o vento integral e é dimensionado com o Coeficiente de Arrasto Frontal (Ca). +

+

F = q × Ca × (Área Efetiva)

+

+ De acordo com a Figura 4 (baixa turbulência) da NBR 6123, o valor de Ca depende da esbeltez do pórtico e do seu índice de solidez φ. +

+ + ) + }, + { + title: 'Fator de Proteção (η) nos Pórticos Traseiros', + content: ( + <> +

+ Os pórticos que ficam "escondidos" atrás do pórtico frontal recebem um vento atenuado, pois parte da energia do fluxo foi bloqueada e turbilhada pelas barras do primeiro pórtico. +

+

+ Essa redução é quantificada pelo Fator de Proteção (η). O valor de η depende diretamente de duas coisas: +

+
    +
  • Índice de Solidez (φ): Quanto mais sólido for o primeiro pórtico, menos vento vaza para trás, e portanto menor será o fator η (mais proteção).
  • +
  • Espaçamento Relativo (e/h): Quanto mais próximos estiverem os pórticos, maior será a área de esteira turbulenta que os envolve, gerando maior proteção.
  • +
+

+ Força nos Traseiros = F_Frontal × η +

+ + ) + }, + { + title: 'Consideração de Ação de Conjunto (Tombamento)', + content: ( + <> +

+ Quando o número de pórticos (n) é grande e a estrutura é rigidamente travada no sentido longitudinal, o vento transversal atua como uma força de tombamento na estrutura 3D. +

+

+ A carga aerodinâmica que tenta empurrar e tombar o Pipe-Rack será combatida pelas fundações, gerando um esforço trativo considerável nas colunas de barlavento e um aumento de compressão nas colunas de sotavento, dependendo da alavanca total L = (n-1) × espaçamento. +

+ + ) + } + ] +}; diff --git a/app/src/pages/PiperackModule.tsx b/app/src/pages/PiperackModule.tsx index 4e54638..0e7d41a 100644 --- a/app/src/pages/PiperackModule.tsx +++ b/app/src/pages/PiperackModule.tsx @@ -12,6 +12,7 @@ import { exportGenericToPDF, type GenericPDFSection } from '../lib/export-generi import { Plus, Trash2, Layers, Info } from 'lucide-react'; import { Tooltip, TooltipContent, TooltipTrigger, TooltipProvider } from '@/components/ui/tooltip'; import { Input } from '@/components/ui/input'; +import { EducationalManual } from '@/components/EducationalManual'; const PiperackModule: React.FC = () => { const { q } = useWindStore(); @@ -206,6 +207,9 @@ const PiperackModule: React.FC = () => { {/* Coluna Central: 3D */}
+
+ +