Equação de Manning para escoamento em canais abertos no QUAL2K

O QUAL2K calcula a velocidade, a profundidade e a área da seção transversal de cada trecho usando a equação de Manning ou curvas-chave do tipo potência, como descrito na documentação técnica do QUAL2K da EPA. A equação de Manning é o método padrão e o mais usado em rios naturais com geometria conhecida. Os parâmetros hidráulicos calculados alimentam diretamente os cálculos do coeficiente de reaeração (em inglês) e da propagação de vazões (em inglês).

Equação de Manning

A equação de Manning relaciona a vazão QQ (m³/s) com a geometria do canal e a rugosidade:

Q=1n⋅A⋅R2/3⋅S1/2Q = \frac{1}{n} \cdot A \cdot R^{2/3} \cdot S^{1/2}

Em que:

  • nn: coeficiente de rugosidade de Manning (adimensional)
  • AA: área molhada da seção transversal (m²)
  • R=A/PR = A / P: raio hidráulico (m)
  • PP: perímetro molhado (m)
  • SS: declividade do fundo do canal (m/m)

Geometria da seção transversal trapezoidal

O QUAL2K representa o canal como uma seção transversal trapezoidal, com fundo plano de largura BB e dois taludes laterais (que podem ser diferentes) ss1ss_1 e ss2ss_2:

Para uma dada profundidade de escoamento yy:

A=B⋅y+ssˉ⋅y2A = B \cdot y + \bar{ss} \cdot y^2

em que ssˉ=(ss1+ss2)/2\bar{ss} = (ss_1 + ss_2) / 2 é a inclinação média dos taludes.

P=B+y(1+ss12+1+ss22)P = B + y \left( \sqrt{1 + ss_1^2} + \sqrt{1 + ss_2^2} \right)

Solucionador de profundidade por Newton-Raphson

Dada uma vazão conhecida QQ, a profundidade yy precisa ser encontrada de forma iterativa. O QUAL2K usa o método de Newton-Raphson para resolver:

f(y)=1n⋅A(y)⋅R(y)2/3⋅S1/2−Q=0f(y) = \frac{1}{n} \cdot A(y) \cdot R(y)^{2/3} \cdot S^{1/2} - Q = 0

A derivada é:

f′(y)=S1/2n[53T⋅R2/3−23R5/3⋅dPdy]f'(y) = \frac{S^{1/2}}{n} \left[ \frac{5}{3} T \cdot R^{2/3} - \frac{2}{3} R^{5/3} \cdot \frac{dP}{dy} \right]

em que T=B+(ss1+ss2)⋅yT = B + (ss_1 + ss_2) \cdot y é a largura superficial e dP/dy=1+ss12+1+ss22dP/dy = \sqrt{1 + ss_1^2} + \sqrt{1 + ss_2^2}.

A iteração começa em y0=0.5y_0 = 0.5 m e converge em 5 a 10 iterações em canais típicos. A regra de atualização é:

yk+1=yk−f(yk)f′(yk)y_{k+1} = y_k - \frac{f(y_k)}{f'(y_k)}

Grandezas derivadas

Conhecida a profundidade yy, os demais parâmetros hidráulicos decorrem diretamente:

U=QA(velocidade, m/s)U = \frac{Q}{A} \quad \text{(velocidade, m/s)}ttravel=A⋅LQ⋅86 400(tempo de percurso, dias)t_{travel} = \frac{A \cdot L}{Q \cdot 86\,400} \quad \text{(tempo de percurso, dias)}

em que LL é o comprimento do trecho em metros.

Alternativa com curva-chave

Quando os coeficientes da curva-chave são informados, o QUAL2K usa relações do tipo potência no lugar da equação de Manning:

U=α1⋅Qβ1U = \alpha_1 \cdot Q^{\beta_1}H=α2⋅Qβ2H = \alpha_2 \cdot Q^{\beta_2}

A área da seção transversal passa a ser A=Q/UA = Q / U e a largura, B=A/HB = A / H. Esse método é usado quando há curvas-chave medidas em campo.

Valores típicos do n de Manning

Coeficientes de rugosidade de Manning para cursos d'água naturais

Tipo de canaln (mínimo)n (típico)n (máximo)
Limpo, retilíneo, nível máximo0,0250,0300,033
Limpo, sinuoso, com alguns poços0,0330,0400,045
Lento, com vegetação e poços profundos0,0500,0700,080
Muita vegetação, arbustos densos0,0750,1000,150
Rios de montanha, seixos0,0300,0500,070
Rios de montanha, matacões0,0400,0700,100
Planície de inundação, pastagem0,0250,0350,050
Planície de inundação, mata densa0,1000,1200,160

Implementação em Python

pythonhydraulics.py: solucionador de profundidade por Newton-Raphson
def calculate_hydraulics(reach, geo_method):
    q_s = reach.get('q', 0)  # Vazão em m³/s
    n = reach.get('nm', 0.03)
    s = reach.get('s', 0.0001)
    bb = reach.get('BB', 1.0)
    ss1 = reach.get('SS1', 0.0)
    ss2 = reach.get('SS2', 0.0)
    ss_avg = (ss1 + ss2) / 2.0

    # Iteração de Newton-Raphson para a profundidade y
    y = 0.5  # estimativa inicial (metros)
    for _ in range(30):
        area = bb * y + ss_avg * (y ** 2)
        perim = bb + y * (sqrt(1 + ss1**2) + sqrt(1 + ss2**2))
        radius = area / perim
        f = (1/n) * area * radius**(2/3) * s**0.5 - q_s
        top_width = bb + (ss1 + ss2) * y
        df_dy = (1/n) * s**0.5 * (
            (5/3) * top_width * radius**(2/3) -
            (2/3) * radius**(5/3) * (sqrt(1+ss1**2) + sqrt(1+ss2**2))
        )
        dy = f / df_dy
        y = y - dy
        if abs(dy) < 1e-7:
            break

Modele o rio inteiro no motor de previsão

Importe sua planilha QUAL2Kw ou abra o projeto de exemplo. Os resultados reproduzem 15 modelos QUAL2Kw calibrados dentro de 5% ou de uma pequena faixa absoluta.

Ver o motor de previsão