UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM TECNOLOGIAS AMBIENTAIS ALINE CRISTINA DE SOUZA ANDRADE DETERMINAÇÃO DE HIDROGRAMA UNITÁRIO INSTANTÂNEO GEOMORFOLÓGICO - BACIA DO RIBEIRÃO SALOBRA CAMPO GRANDE 2007
135
Embed
DETERMINAÇÃO DE HIDROGRAMA UNITÁRIO INSTANTÂNEO ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA
PROGRAMA DE PÓS-GRADUAÇÃO EM TECNOLOGIAS AMBIENTAIS
ALINE CRISTINA DE SOUZA ANDRADE
DETERMINAÇÃO DE HIDROGRAMA UNITÁRIO INSTANTÂNEO GEOMORFOLÓGICO - BACIA DO RIBEIRÃO
SALOBRA
CAMPO GRANDE 2007
UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA
PROGRAMA DE PÓS-GRADUAÇÃO EM TECNOLOGIAS AMBIENTAIS
ALINE CRISTINA DE SOUZA ANDRADE
DETERMINAÇÃO DE HIDROGRAMAS UNITÁRIOS INSTANTÂNEO GEOMORFOLÓGICO - BACIA DO RIBEIRÃO
SALOBRA Dissertação apresentada para obtenção do grau de Mestre no Programa de Pós-Graduação em Tecnologias Ambientais da Universidade Federal de Mato Grosso do Sul, na área de concentração em Saneamento Ambiental e Recursos Hídricos.
ORIENTADOR: Prof. Dr. Jorge Luiz Steffen
Aprovada em: 26/04/2007
Banca Examinadora:
Prof. Dr. Jorge Luiz Steffen Orientador – Universidade Federal de Mato Grosso do Sul
Prof. Dr.Silvio Bueno Pereira Universida Federal da Grande Dourados Prof. Dr. Teodorico Alves Sobrinho Universidade Federal de Mato Grosso do Sul
Campo Grande, MS 2007
Ficha catalográfica preparada pela COORDENADORIA DA BIBLIOTECA CENTRAL/UFMS
i
AGRADECIMENTOS
A Deus, por estar presente em todos os momentos da minha vida, meus pais pelo
incentivo e meu marido pelo carinho e atenção durante esse período.
Ao Prof. Dr. Jorge Luiz Steffen pela orientação fornecida durante a elaboração do
trabalho.
Aos professores e funcionários do Departamento de Hidráulica e Transporte pela
atenção, amizade e aprendizado.
ii
SUMÁRIO
LISTA DE FIGURAS ............................................................................................................................................I LISTA DE TABELAS.......................................................................................................................................... II RESUMO .............................................................................................................................................................VI ABSTRACT ....................................................................................................................................................... VII 1 INTRODUÇÃO............................................................................................................................................ 1 2 OBJETIVOS................................................................................................................................................. 3 3 JUSTIFICATIVA DO DESENVOLVIMENTO DO TRABALHO......................................................... 4 4 REVISÃO BIBLIOGRÁFICA.................................................................................................................... 5
4.1 GEOMORFOLOGIA QUANTITATIVA ........................................................................................................ 5 4.2 MÉTODO DO HIDROGRAMA UNITÁRIO .................................................................................................. 8 4.3 MÉTODO HIDROGRAMA UNITÁRIO INSTANTÂNEO (HUI).................................................................... 10 4.4 TRANSFORMAÇÃO DO HUI EM HU ..................................................................................................... 11 4.5 MÉTODO HIDROGRAMA UNITÁRIO INSTANTÂNEO GEOMORFOLÓGICO (HUIG).................................. 14 4.6 ESTIMATIVAS PARA O CRITÉRIO DA VELOCIDADE (V) DO HUIG.......................................................... 35
5 METODOLOGIA...................................................................................................................................... 39 5.1 ESCOLHA DA BACIA E LEVANTAMENTO DE DADOS ............................................................................ 39 5.2 ESCOLHA DO MODELO HIDROLÓGICO................................................................................................. 42 5.3 METODOLOGIA UTILIZADA NA BACIA DO RIBEIRÃO SALOBRA ........................................................... 43 5.4 DESENVOLVIMENTO DO MODELO COMPUTACIONAL .......................................................................... 47
6 RESULTADOS E DISCUSSÕES............................................................................................................. 49 6.1 BACIA DE 4ª ORDEM............................................................................................................................ 49 6.2 BACIA DE 3ª ORDEM “D”..................................................................................................................... 55 6.3 BACIA DE 3ª ORDEM “E” ..................................................................................................................... 60 6.4 RESULTADOS DAS SIMULAÇÕES.......................................................................................................... 65
FIGURA 4.1 MODELO DA BACIA HIDROGRÁFICA. (DEPARTMENT OF EARTH AND ENVIRONMENTAL SCIENCE NEW MEXICO INSTITUTE OF MINING AND TECHNOLOGY, 2005). ............................................................................ 6
FIGURA 4.2 APLICAÇÃO DO MÉTODO DE STRAHLER PARA ORDENAÇÃO DA REDE DE DRENAGEM............................. 6 FIGURA 4.3 ESQUEMA DO HIDROGRAMA UNITÁRIO................................................................................................. 9 FIGURA 4.4 REPRESENTAÇÃO DE UMA BACIA DE 4A ORDEM. .................................................................................. 31 FIGURA 4.5 ESQUEMA DE UM RESERVATÓRIO GEOMORFOLÓGICO.......................................................................... 33 FIGURA 5.1 LOCALIZAÇÃO DA BACIA DO RIBEIRÃO SALOBRA (FONTE POLIZER, 2002) ........................................ 39 FIGURA 5.2 LOCALIZAÇÃO DA BACIA HIDROGRÁFICA DO MIRANDA INSERIDA NA BACIA DO ALTO PARAGUAI. ... 40 FIGURA 5.3 IMAGEM DA BACIA DO RIBEIRÃO SALOBRA (GOOGLE EARTH, 2007). ................................................. 40 FIGURA 5.4 VISÃO DA BACIA MOSTRANDO DIVERSAS OCUPAÇÕES (CAMPO, CERRADO E MATA). (FONTE: POLIZER,
2002) ............................................................................................................................................................ 41 FIGURA 5.5 MAPA DE PORCENTAGEM DA COBERTURA DO SOLO EM 2001. (FONTE POLIZER, 2002)....................... 42 FIGURA 5.6 EXUTÓRIA DO RIBEIRÃO SALOBRA, NA CONFLUÊNCIA COM O RIO AQUIDAUANA. (FONTE: POLIZER,
2002) ............................................................................................................................................................ 44 FIGURA 5.7 - LIMITAÇÕES BACIAS 3A ORDEM D E 3A ORDEM E. ............................................................................ 44 FIGURA 6.1 PERFIL LONGITUDINAL DO TALVEGUE PRINCIPAL - BACIA 4A ORDEM................................................ 50 FIGURA 6.2 CARTA DE DECLIVIDADE DA BACIA DO RIBEIRÃO SALOBRA. (FONTE POLIZER, 2002). ...................... 50 FIGURA 6.3 FOTO DA PAISAGEM, MOSTRANDO A LONGA EXTENSÃO DAS VERTENTES COM BAIXA DECLIVIDADE.
(FONTE POLIZER, 2002). ............................................................................................................................... 51 FIGURA 6.4 MODELO DIGITAL DE ELEVAÇÃO DA BACIA DO RIBEIRÃO SALOBRA. FONTE: POLIZER (2002)........... 51 FIGURA 6.5 DIAGRAMA DE HORTON PARA A BACIA DE 4ª. ORDEM ........................................................................ 52 FIGURA 6.6 PERFIL LONGITUDINAL – (3A ORDEM “D”).......................................................................................... 56 FIGURA 6.7 DIAGRAMA DE HORTON 3ª ORDEM “D”. .............................................................................................. 57 FIGURA 6.8 PERFIL LONGITUDINAL - 3A ORDEM “E”. ............................................................................................ 61 FIGURA 6.9 DIAGRAMA DE HORTON 3A ORDEM “E”. ............................................................................................. 61 FIGURA 6.10 HIDROGRAMA BACIA 4ª. ORDEM: SEM AMORTECIMENTO (A), COM AMORTECIMENTO (B)................. 66 FIGURA 6.11 HIDROGRAMA BACIA 4ª. ORDEM COM AMORTECIMENTO. ................................................................. 66 FIGURA 6.12 HIDROGRAMA BACIA 3A ORDEM “D” (A) E 3A ORDEM “E” (B)........................................................ 68 FIGURA 6.13 COMPARAÇÃO ENTRE OS HIDROGRAMAS DE 3A. ORDEM. .................................................................. 69 FIGURA 6.14 HIDROGRAMA DA BACIA DE 3A. ORDEM “D” - V = 1,04 M/S. ............................................................ 70 FIGURA 6.15 HIDROGRAMA DA BACIA DE 3A. ORDEM “E” - V = 0,95 M/S. ............................................................. 71
ii
LISTA DE TABELAS
TABELA 4.1 TRAJETÓRIAS PERCORRIDAS PELA ÁGUA. ........................................................................................... 24 TABELA 4.2 TRAJETÓRIAS PERCORRIDAS PELA ÁGUA. ........................................................................................... 26 TABELA 6.1 PARÂMETROS FÍSICOS DA BACIA DO RIBEIRÃO SALOBRA (BACIA DE 4. ORDEM)................................ 49 TABELA 6.2 RAZÕES GEOMORFOLÓGICAS DE HORTON 4A. ORDEM – DIAGRAMA DE HORTON............................... 53 TABELA 6.3 RAZÕES GEOMORFOLÓGICAS DE HORTON 4A. ORDEM. ....................................................................... 53 TABELA 6.4 PROBABILIDADE DE TRANSIÇÃO DOS CANAIS (PI, J) 4ªORDEM............................................................. 54 TABELA 6.5 PROBABILIDADE DE INÍCIO DE PROCESSO ΘI (4ª ORDEM). ................................................................... 55 TABELA 6.6 PARÂMETROS FÍSICOS DA BACIA DO RIBEIRÃO SALOBRA (BACIA DE 3. ORDEM “D”). ....................... 55 TABELA 6.7 RAZÕES GEOMORFOLÓGICAS DE HORTON 3A. ORDEM “D” – DIAGRAMA DE HORTON........................ 58 TABELA 6.8 RAZÕES GEOMORFOLÓGICAS DE HORTON (3ª ORDEM “D”)................................................................. 58 TABELA 6.9 PROBABILIDADE DE TRANSIÇÃO DOS CANAIS (PI, J) (3ª ORDEM “D”). ................................................. 59 TABELA 6.10 PROBABILIDADE DE INÍCIO DE PROCESSO ΘI (3ª ORDEM “D”). .......................................................... 60 TABELA 6.11 PARÂMETROS FÍSICOS DA BACIA DO RIBEIRÃO SALOBRA (BACIA DE 3ª ORDEM “E”) ....................... 60 TABELA 6.12 RAZÕES GEOMORFOLÓGICAS DE HORTON 3A. ORDEM E – DIAGRAMA DE HORTON.......................... 62 TABELA 6.13 RAZÕES GEOMORFOLÓGICAS DE HORTON (3ª ORDEM “E”). .............................................................. 63 TABELA 6.14 PROBABILIDADE DE TRANSIÇÃO DOS CANAIS (PI,J) (3ª ORDEM E)..................................................... 63 TABELA 6.15 PROBABILIDADE DE INÍCIO DE PROCESSO ΘI (3ª ORDEM “E”)............................................................ 64 TABELA 6.16 VELOCIDADES DA BACIA. ................................................................................................................. 64 TABELA 6.17 COMPARAÇÃO ENTRE A FORMULAÇÃO E O VALOR DO HIDROGRAMA................................................ 67 TABELA 6.18 COMPARAÇÃO ENTRE A FORMULAÇÃO E O VALOR DO HIDROGRAMA 3A ORDEM “D”. ...................... 68 TABELA 6.19 COMPARAÇÃO ENTRE A FORMULAÇÃO E O VALOR DO HIDROGRAMA 3A ORDEM “E”........................ 69 TABELA 6.20 COMPARAÇÃO ENTRE OS VALORES DE PICO 3A. ORDEM “D” E 4ª ORDEM.......................................... 69 TABELA 6.21 COMPARAÇÃO ENTRE A FORMULAÇÃO E O VALOR DO HIDROGRAMA (3A ORDEM “D”). ................... 71 TABELA 6.22 COMPARAÇÃO ENTRE A FORMULAÇÃO E O VALOR DO HIDROGRAMA (3A ORDEM “E”). .................... 72
VILLELA, M.C.C. Análise do Hidrograma Unitário Geomorfológico e regionalização do
parâmetro de velocidade. Campinas, 2001,78p. (Tese de Doutorado – Universidade de
Campinas – Unicamp).
VILLELA, S. M.; MATTOS, A. Hidrologia Aplicada. São Paulo: McGraw-Hill, 1980.
78
Anexo A
Programa HUIG 4ª Ordem sem amortecimento
Procedures > restart; Procedure trajeto trajeto:= proc(lambda_1, lambda_2); 1/(lambda_1-lambda_2); end proc: dens_prob:=proc(C, lambda); C*exp(-lambda*t); end proc:
Entrada de dados Entrada das probabilidades de transição for i from 1 to 3 do for j from 2 by 1 to 4 do if (i<>j) then printf("\n Para P[%d,%d] \n",i,j); P[i,j]:= readstat("Digite a probabilidade de transição:"): else P[i,j]:=0: end if; end do; end do; V:=readstat("Entre com o valor da velocidade (em m/s):"): Entrada com os valores de lambda for k from 1 to 4 do printf("\n Para L[%d] \n",k);
L[k]:= readstat("Digite o comprimento médio dos rios de cada ordem:"): lambda[k]:=V/L[k]; printf("\n Para Teta[%d] \n",k); theta[k]:=readstat("Digite a probabilidade de início do processo:"): end do; for l from 1 to 4 do for l from 1 to 4 do T[l,l]:1; end do; end do;
79
Para P[1,2] Digite a probabilidade de transição:0.6897; Para P[1,3] Digite a probabilidade de transição:.2089; Para P[1,4] Digite a probabilidade de transição:.1034; Para P[2,3] Digite a probabilidade de transição:0.8571; Para P[2,4] Digite a probabilidade de transição:0.1429; Para P[3,2] Digite a probabilidade de transição:0; Para P[3,4] Digite a probabilidade de transição:1; Entre com o valor da velocidade (em m/s):1.32; Para L[1] Digite o comprimento médio dos rios de cada ordem:6382.76;
:= L1 6382.76 := λ1 .0002068070866
Para Teta[1] Digite a probabilidade de início do processo:0.718919;
:= θ1 .718919 Para L[2] Digite o comprimento médio dos rios de cada ordem:3435.71;
:= L2 3435.71 := λ2 .0003842000635
Para Teta[2] Digite a probabilidade de início do processo:0.105513;
:= θ2 .105513 Para L[3] Digite o comprimento médio dos rios de cada ordem:11250;
:= L3 11250 := λ3 .0001173333333
Para Teta[3] Digite a probabilidade de início do processo:0.112548;
:= θ3 .112548 Para L[4] Digite o comprimento médio dos rios de cada ordem:11100;
80
:= L4 11100 := λ4 .0001189189189
Para Teta[4] Digite a probabilidade de início do processo:0.06302;
:= θ4 .06302 Calcula os valores dos índices Ci,j
Trajetos c1->c2->c3->c4
> unassingn('k'): k:=1: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4); prod_lambda:=evalf( product(lambda[l_a], l_a=1..4)); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f1:=prod_lambda*(f[1,1]+f[2,1]+f[3,1]+f[4,1]); p_s(1):= theta[1]*P[1,2]*P[2,3]*f1;
81
:= Prod_lambda ∏ = l_a 1
4
λ l_a
:= prod_lambda .110865191110-14 := C ,1 4 .71686522271012
:= C .71686522271012 := f ,1 1 .71686522271012 e
( )−.0002068070866t
:= Prod_lambda ∏ = l_a 2
4
λ l_a
:= prod_lambda .110865191110-14 := C ,2 4 -.79627441371011
:= C -.79627441371011 := f ,2 1 −.79627441371011 e
( )−.0003842000635t
:= Prod_lambda ∏ = l_a 3
4
λ l_a
:= prod_lambda .110865191110-14 := C ,3 4 .26413151161014
:= C .26413151161014 := f ,3 1 .26413151161014 e
( )−.0001173333333t
:= Prod_lambda ∏ = l_a 4
4
λ l_a
:= prod_lambda .110865191110-14 := C ,4 4 -.27050388931014
:= C -.27050388931014 := f ,4 1 −.27050388931014 e
( )−.0001189189189t
f1 .0007947539991e( )−.0002068070866t
.00008827911504e( )−.0003842000635t
− :=
.02928299051e( )−.0001173333333t
.02998946538e( )−.0001189189189t
+ −
( )p_s 1 .0003377570358e( )−.0002068070866t
.00003751713392e( )−.0003842000635t
− :=
.01244477673e( )−.0001173333333t
.01274501662e( )−.0001189189189t
+ −
Trajeto c2->c3->c4 > k:=2: for r from 2 to 4 do for b from 2 to 4 do T[r,b]:=1; end do; end do; for l from 2 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=2..4); prod_lambda:=evalf( product(lambda[l_a], l_a=2..4)); if (l<>2) then
82
T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=2..4); C:=C[l,4]: f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f2:=prod_lambda*(f[2,2]+f[3,2]+f[4,2]); p_s(2):= theta[2]*P[2,3]*f2;
:= Prod_lambda ∏ = l_a 2
4
λ l_a
:= prod_lambda .536080232510-11 := C ,2 4 .1412534887108
:= C .1412534887108 := f ,2 2 .1412534887108 e
( )−.0003842000635t
:= Prod_lambda ∏ = l_a 2
4
λ l_a
:= prod_lambda .536080232510-11 := C ,3 4 .23632837711010
:= C .23632837711010 := f ,3 2 .23632837711010 e
( )−.0001173333333t
:= Prod_lambda ∏ = l_a 2
4
λ l_a
:= prod_lambda .536080232510-11 := C ,4 4 -.23774091191010
:= C -.23774091191010 := f ,4 2 −.23774091191010 e
( )−.0001189189189t
f2 .00007572320306e( )−.0003842000635t
.01266909713e( )−.0001173333333t
+ :=
.01274482033e( )−.0001189189189t
−
83
( )p_s 2 .684804243010-5 e( )−.0003842000635t
.001145732235e( )−.0001173333333t
+ :=
.001152580277e( )−.0001189189189t
−
Trajeto c3->c4 > k:=3: for r from 3 to 4 do for b from 3 to 4 do T[r,b]:=1; end do; end do; for l from 3 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=3..4); prod_lambda:=evalf( product(lambda[l_a], l_a=3..4)); if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=3..4); C:=C[l,4]: f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f3:=prod_lambda*(f[3,3]+f[4,3]); p_s(3):= theta[3]*f3;
:= Prod_lambda ∏ = l_a 3
4
λ l_a
:= prod_lambda .139531531510-7 := C ,3 4 630681.8124
:= C 630681.8124 := f ,3 3 630681.8124e
( )−.0001173333333t
:= Prod_lambda ∏ = l_a 3
4
λ l_a
:= prod_lambda .139531531510-7 := C ,4 4 -630681.8124
:= C -630681.8124 := f ,4 3 −630681.8124e
( )−.0001189189189t
:= f3 − .008799999917e( )−.0001173333333t
.008799999917e( )−.0001189189189t
84
:= ( )p_s 3 − .0009904223907e( )−.0001173333333t
.0009904223907e( )−.0001189189189t
Trajeto c1->c3->c4
> k:=4: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 2 to 2 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)/lambda[2]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..4))/lambda[2]; if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[2,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: f[2,4]:=0: f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f4:=prod_lambda*(f[1,4]+f[3,4]+f[4,4]); p_s(4):= theta[1]*P[1,3]*f4;
85
:= Prod_lambda 2602.810606⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .288561095210-11 := C ,2 4 0 := C ,1 4 .1271668559109
:= C .1271668559109 := f ,2 4 0
:= f ,1 4 .1271668559109 e( )−.0002068070866t
:= Prod_lambda 2602.810606⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .288561095210-11 := C ,2 4 0 := C ,2 4 -.79627441371011
:= C -.79627441371011 := f ,2 4 0
:= f ,2 4 −.79627441371011 e( )−.0003842000635t
:= Prod_lambda 2602.810606⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .288561095210-11 := C ,2 4 0 := C ,3 4 .70487912851010
:= C .70487912851010 := f ,2 4 0
:= f ,3 4 .70487912851010 e( )−.0001173333333t
:= Prod_lambda 2602.810606⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .288561095210-11 := C ,2 4 0 := C ,4 4 -.71759581381010
:= C -.71759581381010 := f ,2 4 0
:= f ,4 4 −.71759581381010 e( )−.0001189189189t
f4 .0003669540721e( )−.0002068070866t
.02034006933e( )−.0001173333333t
+ :=
.02070702339e( )−.0001189189189t
−
( )p_s 4 .00005510996218e( )−.0002068070866t
.003054715935e( )−.0001173333333t
+ :=
.003109825895e( )−.0001189189189t
−
Trajeto c1-> c2 -> c4
86
> k:=5: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 3 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)/lambda[3]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..4))/lambda[3]; if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: f[3,5]:=0; f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f5:=prod_lambda*(f[1,5]+f[2,5]+f[4,5]); p_s(5):= theta[1]*P[1,2]*P[2,4]*f5;
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .944873788110-11 := C ,3 4 0
87
:= C ,1 4 -.6414062207108 := C -.6414062207108
:= f ,3 5 0 := f ,1 5 −.6414062207108 e
( )−.0002068070866t
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .944873788110-11 := C ,3 4 0 := C ,2 4 .2124991491108
:= C .2124991491108 := f ,3 5 0
:= f ,2 5 .2124991491108 e( )−.0003842000635t
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .944873788110-11 := C ,3 4 0 := C ,3 4 .26413151161014
:= C .26413151161014 := f ,3 5 0
:= f ,3 5 .26413151161014 e( )−.0001173333333t
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .944873788110-11 := C ,3 4 0 := C ,4 4 .4289070716108
:= C .4289070716108 := f ,3 5 0
:= f ,4 5 .4289070716108 e( )−.0001189189189t
f5 .0006060479255e( )−.0002068070866t
.0002007848760e( )−.0003842000635t
− + :=
.0004052630495e( )−.0001189189189t
+
( )p_s 5 .00004294171501e( )−.0002068070866t
.00001422667509e( )−.0003842000635t
− + :=
.00002871503992e( )−.0001189189189t
+
Trajeto c1 -> c4 > k:=6: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do;
88
for d from 2 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)/(lambda[3]*lambda[2]); prod_lambda:=evalf( product(lambda[l_a], l_a=1..4))/(lambda[3]*lambda[2]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[2,4]:=0: C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: f[2,6]:=0: f[3,6]:=0; f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f6:=prod_lambda*(f[1,6]+f[4,6]); p_s(6):= theta[1]*P[1,4]*f6;
:= Prod_lambda .2218304494108 ⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .245932751710-7 := C ,2 4 0 := C ,3 4 0 := C ,1 4 -11378.09589
:= C -11378.09589 := f ,2 6 0 := f ,3 6 0
:= f ,1 6 −11378.09589e( )−.0002068070866t
:= Prod_lambda .2218304494108 ⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
89
:= prod_lambda .245932751710-7 := C ,2 4 0 := C ,3 4 0 := C ,2 4 .2124991491108
:= C .2124991491108 := f ,2 6 0 := f ,3 6 0
:= f ,2 6 .2124991491108 e( )−.0003842000635t
:= Prod_lambda .2218304494108 ⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .245932751710-7 := C ,2 4 0 := C ,3 4 0 := C ,3 4 .70487912851010
:= C .70487912851010 := f ,2 6 0 := f ,3 6 0
:= f ,3 6 .70487912851010 e( )−.0001173333333t
:= Prod_lambda .2218304494108 ⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .245932751710-7 := C ,2 4 0 := C ,3 4 0 := C ,4 4 11378.09589
:= C 11378.09589 := f ,2 6 0 := f ,3 6 0 := f ,4 6 11378.09589e
( )−.0001189189189t
:= f6 − + .0002798246431e( )−.0002068070866t
.0002798246431e( )−.0001189189189t
:= ( )p_s 6 − + .00002080110752e
( )−.0002068070866t.00002080110752e
( )−.0001189189189t
Trajeto c2 -> c4 > k:=7: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do;
90
for d from 1 to 1 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for d from 3 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 2 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=2..4)/(lambda[3]) prod_lambda:=evalf( product(lambda[l_a], l_a=2..4))/(lambda[3]); if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: f[3,7]:=0; f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f7:=prod_lambda*(f[2,7]+f[4,7]); p_s(7):= theta[2]*P[2,4]*f7;
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .456886561910-7 := C ,3 4 0 := C ,2 4 -3769.585665
:= C -3769.585665 := f ,3 7 0
:= f ,2 7 −3769.585665e( )−.0003842000635t
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
91
:= prod_lambda .456886561910-7 := C ,3 4 0 := C ,3 4 .23632837711010
:= C .23632837711010 := f ,3 7 0
:= f ,3 7 .23632837711010 e( )−.0001173333333t
:= Prod_lambda 8522.727275⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .456886561910-7 := C ,3 4 0 := C ,4 4 3769.585665
:= C 3769.585665 := f ,3 7 0
:= f ,4 7 3769.585665e( )−.0001189189189t
:= f7 − + .0001722273034e( )−.0003842000635t
.0001722273034e( )−.0001189189189t
:= ( )p_s 7 − + .259681016110-5 e
( )−.0003842000635t.259681016110-5 e
( )−.0001189189189t
Trajeto c4
> k:=8: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 1 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=4..4); prod_lambda:=evalf( product(lambda[l_a], l_a=4..4)); if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=4..4); C:=C[l,4]:
92
f[l,k]:=(dens_prob(C, lambda[l])); end do; unassingn('C, l', 'k'): f8:=prod_lambda*(f[4,8]); p_s(8):= theta[4]*f8;
:= Prod_lambda ∏ = l_a 4
4
λl_a
:= prod_lambda .0001189189189 := C ,1 4 -11378.09589
:= C -11378.09589 := f ,1 8 −11378.09589e
( )−.0002068070866t
:= Prod_lambda ∏ = l_a 4
4
λl_a
:= prod_lambda .0001189189189 := C ,2 4 -3769.585665
:= C -3769.585665 := f ,2 8 −3769.585665e
( )−.0003842000635t
:= Prod_lambda ∏ = l_a 4
4
λl_a
:= prod_lambda .0001189189189 := C ,3 4 630681.8124
> func:=t->HUIG; fd:= fopen(ordem4,WRITE,TEXT); for t from 0 by 10 to 90000 do y:=func(t): fprintf(fd, "%d %g\n", t, y): end do: fclose(fd); restart;
:= func → t HUIG := fd 1
94
Anexo B
Programa HUIG 4ª Ordem com amortecimento
Procedures > restart; Procedure trajeto trajeto:= proc(lambda_1, lambda_2); 1/(lambda_1-lambda_2); end proc: dens_prob_1:=proc( lambda_1, lambda_4); (exp(-lambda_1*t)-exp(-lambda_4*t)); end proc: dens_prob_2:=proc( lambda_2,lambda_4); (exp(-lambda_2*t)-exp(-lambda_4*t)); end proc: dens_prob_3:=proc( lambda_3,lambda_4); (exp(-lambda_3*t)-exp(-lambda_4*t)); end proc: dens_prob_4:=proc(lambda_4); (t*exp(-lambda_4*t)); end proc:
Entrada de dados Entrada das probabilidades de transição for i from 1 to 3 do for j from 2 by 1 to 4 do if (i<>j) then printf("\n Para P[%d,%d] \n",i,j); P[i,j]:= readstat("Digite a probabilidade de transição:"): else P[i,j]:=0: end if; end do; end do; V:=readstat("Entre com o valor da velocidade (em m/s):"): Entrada com os valores de lambda for k from 1 to 4 do printf("\n Para L[%d] \n",k); L[k]:= readstat("Digite o comprimento médio dos rios de cada ordem:"): lambda[k]:=V/L[k]; printf("\n Para Teta[%d] \n",k);
95
theta[k]:=readstat("Digite a probabilidade de início do processo:"): end do; lambda[4]:=2*lambda[4]: lambda[4]; Para P[1,2] Digite a probabilidade de transição:0.6897; Para P[1,3] Digite a probabilidade de transição:0.2089; Para P[1,4] Digite a probabilidade de transição:0.1034; Para P[2,3] Digite a probabilidade de transição:0.8571; Para P[2,4] Digite a probabilidade de transição:0.1429; Para P[3,2] Digite a probabilidade de transição:0; Para P[3,4] Digite a probabilidade de transição:1; Entre com o valor da velocidade (em m/s):1.32; Para L[1] Digite o comprimento médio dos rios de cada ordem:6382.76;
:= L1 6382.76
:= λ1 .0002068070866
Para Teta[1] Digite a probabilidade de início do processo:0.718919;
:= θ1 .718919
Para L[2] Digite o comprimento médio dos rios de cada ordem:3435.71;
:= L2 3435.71
:= λ2 .0003842000635
Para Teta[2] Digite a probabilidade de início do processo:0.105513;
:= θ2 .105513
96
Para L[3] Digite o comprimento médio dos rios de cada ordem:11250;
:= L3 11250
:= λ3 .0001173333333
Para Teta[3] Digite a probabilidade de início do processo:0.112548;
:= θ3 .112548
Para L[4] Digite o comprimento médio dos rios de cada ordem:11100;
:= L4 11100
:= λ4 .0001189189189
Para Teta[4] Digite a probabilidade de início do processo:0.0632;
:= θ4 .0632
.0002378378378
> Calcula os valores dos índices Ci,j
Trajetos c1->c2->c3->c4 > unassingn('k'): k:=1: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)*lambda[4]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..4)*lambda[4]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if;
97
if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]; end do; N_1:=(T[2,1]*T[3,1]*(T[4,1]*T[4,1])): N_2:=(T[1,2]*T[3,2]*(T[4,2]*T[4,2])): N_3:=(T[1,3]*T[2,3]*(T[4,3]*T[4,3])): N_4:=(T[1,4]*T[2,4]*T[3,4]): unassingn('N_1','N_2','N_3','N_4','C','l', 'k'): f[1,k]:=(dens_prob_1(lambda[1],lambda[4])); f[2,k]:=(dens_prob_2(lambda[2],lambda[4])); f[3,k]:=(dens_prob_3(lambda[3],lambda[4])); f[4,k]:=(dens_prob_4(lambda[4])); f1:= prod_lambda*(f[1,1]*(N_1)+f[2,1]*(N_2)+f[3,1]*(N_3)+f[4,1]*(N_4)); p_s(1):= theta[1]*P[1,2]*P[2,3]*f1; >
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .527358746510-18
:= C ,1 4 -.20303720821013
:= C -.20303720821013
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .527358746510-18
:= C ,2 4 -.14432452561012
:= C -.14432452561012
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .527358746510-18
98
:= C ,3 4 .34754146591012
:= C .34754146591012
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .527358746510-18
:= C ,4 4 .18271551421013
:= C .18271551421013
:= f ,1 1 − e( )−.0002068070866t
e( )−.0002378378378t
:= f ,2 1 − e( )−.0003842000635t
e( )−.0002378378378t
:= f ,3 1 − e( )−.0001173333333t
e( )−.0002378378378t
:= f ,4 1 t e( )−.0002378378378t
f1 .03450559317e( )−.0002068070866t
.03246464551e( )−.0002378378378t
− + :=
.0005200166951e( )−.0003842000635t
.001520930960e( )−.0001173333333t
+ +
.963566245310-6 t e( )−.0002378378378t
+
( )p_s 1 .01466429471e( )−.0002068070866t
.01379692640e( )−.0002378378378t
− + :=
.0002209983186e( )−.0003842000635t
.0006463699877e( )−.0001173333333t
+ +
.409499391210-6 t e( )−.0002378378378t
+
Trajeto c2->c3->c4
> k:=2: for r from 2 to 4 do for b from 2 to 4 do T[r,b]:=1; end do; end do; for l from 2 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=2..4)*lambda[4]; prod_lambda:=evalf( product(lambda[l_a], l_a=2..4)*lambda[4]); if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if;
99
if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: end do; N_2:=(T[3,2]*(T[4,2]*T[4,2])): N_3:=(T[2,3]*(T[4,3]*T[4,3])): N_4:=(T[2,4]*T[3,4]): unassingn('N_2','N_3','N_4','C', 'l', 'k'): f[2,k]:=(dens_prob_1(lambda[2],lambda[4])); f[3,k]:=(dens_prob_3(lambda[3],lambda[4])); f[4,k]:=(dens_prob_4(lambda[4])); f2:=prod_lambda*(f[2,2]*(N_2)+f[3,2]*(N_3)+f[4,2]*(N_4)); p_s(2):= theta[2]*P[2,3]*f2;
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .255000326810-14
:= C ,2 4 -.14432452561012
:= C -.14432452561012
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .255000326810-14
:= C ,3 4 .34754146591012
:= C .34754146591012
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .255000326810-14
:= C ,4 4 .18271551421013
:= C .18271551421013
100
:= f ,2 2 − e( )−.0003842000635t
e( )−.0002378378378t
:= f ,3 2 − e( )−.0001173333333t
e( )−.0002378378378t
:= f ,4 2 t e( )−.0002378378378t
f2 .0004460548773e( )−.0003842000635t
.0002119661016e( )−.0002378378378t
− − :=
.0006580209789e( )−.0001173333333t
.144580076610-6 t e( )−.0002378378378t
+ −
( )p_s 2 .00004033905860e( )−.0003842000635t
.00001916919516e( )−.0002378378378t
− − :=
.00005950825376e( )−.0001173333333t
.130751270310-7 t e( )−.0002378378378t
+ −
Trajeto c3->c4
> k:=3: for r from 3 to 4 do for b from 3 to 4 do T[r,b]:=1; end do; end do; for l from 3 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=3..4)*lambda[4]; prod_lambda:=evalf( product(lambda[l_a], l_a=3..4)*lambda[4]); if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=3..4): C:=C[l,4]: end do; N_3:=(T[4,3]*T[4,3]): N_4:=(T[3,4]): unassingn('N_3','N_4','C', 'l', 'k'): f[3,k]:=(dens_prob_3(lambda[3],lambda[4])); f[4,k]:=(dens_prob_4(lambda[4]));
> k:=4: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 2 to 2 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do
102
Prod_lambda:=Product(lambda[l_a], l_a=l..4)*lambda[4]/lambda[2]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..4)*lambda[4]/lambda[2]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[2,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: N_1:=(T[3,1]*(T[4,1])*T[4,1]): N_3:=(T[1,3]*(T[4,3]*T[4,3])): N_4:=(T[1,4]*T[3,4]): end do; unassingn('N_1','N_3','N_4','C, l', 'k'): f[2,4]:=0: f[1,k]:=(dens_prob_1(lambda[1],lambda[4])); f[3,k]:=(dens_prob_3(lambda[3],lambda[4])); f[4,k]:=(dens_prob_4(lambda[4])); f4:=prod_lambda*(f[1,4]*(N_1)+f[3,4]*(N_3)+f[4,4]*(N_4)); p_s(4):= theta[1]*P[1,3]*f4;
:= Prod_lambda .6190468467⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .137261493810-14 := C ,2 4 0
:= C ,1 4 -.3601737479109
:= C -.3601737479109
:= N_1 -.11606994161014 := N_3 1
103
:= N_4 1
:= Prod_lambda .6190468467⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .137261493810-14 := C ,2 4 0
:= C ,2 4 -.14432452561012
:= C -.14432452561012
:= N_1 -.11606994161014 := N_3 1 := N_4 1
:= Prod_lambda .6190468467⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .137261493810-14 := C ,2 4 0
:= C ,3 4 .9274725460108
:= C .9274725460108
:= N_1 -.11606994161014
:= N_3 .76965798901012 := N_4 1
:= Prod_lambda .6190468467⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .137261493810-14 := C ,2 4 0
:= C ,4 4 .2674264932109
:= C .2674264932109
:= N_1 -.11606994161014
:= N_3 .76965798901012
:= N_4 .2674264932109
:= f ,1 4 − e( )−.0002068070866t
e( )−.0002378378378t
:= f ,3 4 − e( )−.0001173333333t
e( )−.0002378378378t
104
:= f ,4 4 t e( )−.0002378378378t
f4 .01593193357e( )−.0002068070866t
.01487548952e( )−.0002378378378t
− + :=
.001056444053e( )−.0001173333333t
.367073599410-6 t e( )−.0002378378378t
+ +
( )p_s 4 .002392692501e( )−.0002068070866t
.002234033431e( )−.0002378378378t
− + :=
.0001586590700e( )−.0001173333333t
.551279130510-7 t e( )−.0002378378378t
+ +
Trajeto c1-> c2 -> c4
> k:=5: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 3 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)*lambda[4]/lambda[3]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..4)*lambda[4]/lambda[3]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: N_1:=(T[2,1]*((T[4,1])*T[4,1])): N_2:=(T[1,2]*(T[4,2]*T[4,2])):
Trajeto c1 -> c4 > k:=6: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 2 to 3 do
107
for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=l..4)*lambda[4]/(lambda[3]*lambda[2]); prod_lambda:=evalf( product(lambda[l_a], l_a=1..4)*lambda[4]/(lambda[3]*lambda[2])); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[2,4]:=0: C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]: N_1:=(T[4,1]*(T[4,1])): N_4:=(T[1,4]): end do; unassingn('N_1','N_4','C, l', 'k'): f[2,6]:=0: f[3,6]:=0; f[1,k]:=(dens_prob_1(lambda[1],lambda[4])); f[4,k]:=(dens_prob_4(lambda[4])); f6:=prod_lambda*(f[1,6]*(N_1)+f[4,6]*(N_4)); p_s(6):= theta[1]*P[1,4]*f6; >
:= Prod_lambda 5275.967444⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
4
λ l_a
:= prod_lambda .116984227710-10
:= C ,2 4 0
:= C ,3 4 0
:= C ,1 4 32226.09706
108
:= C 32226.09706
:= N_1 .10385213321010
:= N_4 1
:= Prod_lambda 5275.967444⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
4
λ l_a
:= prod_lambda .116984227710-10
:= C ,2 4 0
:= C ,3 4 0
:= C ,2 4 .3851541423108
:= C .3851541423108
:= N_1 .10385213321010
:= N_4 1
:= Prod_lambda 5275.967444⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
4
λ l_a
:= prod_lambda .116984227710-10
:= C ,2 4 0
:= C ,3 4 0
:= C ,3 4 .9274725460108
:= C .9274725460108
:= N_1 .10385213321010
:= N_4 1
:= Prod_lambda 5275.967444⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .116984227710-10
:= C ,2 4 0
:= C ,3 4 0
:= C ,4 4 -32226.09706
:= C -32226.09706
:= N_1 .10385213321010
:= N_4 -32226.09706
:= f ,3 6 0
109
:= f ,1 6 − e( )−.0002068070866t
e( )−.0002378378378t
:= f ,4 6 t e( )−.0002378378378t
f6 .01214906160e( )−.0002068070866t
.01214906160e( )−.0002378378378t
− :=
.376994507610-6 t e( )−.0002378378378t
−
( )p_s 6 .0009031153718e( )−.0002068070866t
.0009031153718e( )−.0002378378378t
− :=
.280243483910-7 t e( )−.0002378378378t
−
Trajeto c2 -> c4
> k:=7: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 1 to 1 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for d from 3 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 2 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=2..4)*lambda[4]/(lambda[3]); prod_lambda:=evalf( product(lambda[l_a], l_a=2..4)*lambda[4]/(lambda[3])); if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[3,4]:=0: C[l,4]:=product(T[l_1,l], l_1=1..4); C:=C[l,4]:
> k:=8: for r from 1 to 4 do for b from 1 to 4 do T[r,b]:=1; end do; end do; for d from 1 to 3 do for h from 1 to 4 do T[d,h]:=1; end do; end do; for l from 1 to 4 do Prod_lambda:=Product(lambda[l_a], l_a=4..4)*lambda[4]; prod_lambda:=evalf( product(lambda[l_a], l_a=4..4)*lambda[4]); if (l<>4) then T[4,l]:=trajeto(lambda[4], lambda[l]); end if; C[l,4]:=product(T[l_1,l], l_1=4..4); C:=C[l,4]: end do; unassingn('C, l', 'k'): f[4,k]:=(dens_prob_4(lambda[4])); f8:=(prod_lambda*(f[4,8]));
112
p_s(8):= theta[4]*f8;
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .565668370910-7 := C ,1 4 32226.09706
:= C 32226.09706
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .565668370910-7 := C ,2 4 -6832.363987
:= C -6832.363987
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .565668370910-7 := C ,3 4 8298.444976
:= C 8298.444976
:= Prod_lambda .0002378378378⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 4
4
λ l_a
:= prod_lambda .565668370910-7 := C ,4 4 1
:= C 1
:= f ,4 8 t e( )−.0002378378378t
:= f8 .565668370910-7 t e( )−.0002378378378t
:= ( )p_s 8 .357502410410-8 t e( )−.0002378378378t
> func:=t->HUIG; fd:= fopen(amort4,WRITE,TEXT); for t from 0 by 10 to 90000 do y:=func(t): fprintf(fd, "%d %g\n", t, y): end do: fclose(fd);
:= func → t HUIG
:= fd 1
> restart;
114
Anexo C
Programa HUIG 3ª Ordem com amortecimento
Procedures > restart; Procedure trajeto trajeto:= proc(lambda_1, lambda_2); 1/(lambda_1-lambda_2); end proc: dens_prob_1:=proc( lambda_1, lambda_3); (exp(-lambda_1*t)-exp(-lambda_3*t)); end proc: dens_prob_2:=proc(lambda_3); (t*exp(-lambda_3*t)); end proc:
Entrada de dados Entrada das probabilidades de transição for i from 1 to 3 do for j from 2 by 1 to 3 do if (i<>j) then printf("\n Para P[%d,%d] \n",i,j); P[i,j]:= readstat("Digite a probabilidade de transição:"): else P[i,j]:=0: end if; end do; end do; V:=readstat("Entre com o valor da velocidade (em m/s):"): Entrada com os valores de lambda for k from 1 to 3 do printf("\n Para L[%d] \n",k); L[k]:= readstat("Digite o comprimento médio dos rios de cada ordem:"): lambda[k]:=V/L[k]; printf("\n Para Teta[%d] \n",k); theta[k]:=readstat("Digite a probabilidade de início do processo:"): end do; lambda[3]:=2*lambda[3]: lambda[3];
115
Para P[1,2] Digite a probabilidade de transição:0.6667; Para P[1,3] Digite a probabilidade de transição:0.3333; Para P[2,3] Digite a probabilidade de transição:1; Para P[3,2] Digite a probabilidade de transição:0; Entre com o valor da velocidade (em m/s):1.32; Para L[1] Digite o comprimento médio dos rios de cada ordem:6510.53;
:= L1 6510.53
:= λ1 .0002027484706
Para Teta[1] Digite a probabilidade de início do processo:0.7333;
:= θ1 .7333
Para L[2] Digite o comprimento médio dos rios de cada ordem:2742.86;
:= L2 2742.86
:= λ2 .0004812494987
Para Teta[2] Digite a probabilidade de início do processo:0.1394;
:= θ2 .1394
Para L[3] Digite o comprimento médio dos rios de cada ordem:16900;
:= L3 16900
:= λ3 .00007810650888
Para Teta[3] Digite a probabilidade de início do processo:0.1273;
:= θ3 .1273
.0001562130178
116
Calcula os valores dos índices Ci,j
Trajetos c1->c2->c3
> unassingn('k'): k:=1: for r from 1 to 3 do for b from 1 to 3 do T[r,b]:=1; end do; end do; for l from 1 to 3 do Prod_lambda:=Product(lambda[l_a], l_a=l..3)*lambda[3]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..3)*lambda[3]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; C[l,3]:=product(T[l_1,l], l_1=1..3); C:=C[l,3]; end do; N_1:=(T[2,1]*(T[3,1]*T[3,1])): N_2:=(T[1,2]*(T[3,2]*T[3,2])): N_3:=(T[1,3]*T[2,3]): unassingn('N_1','N_2','N_3','C','l', 'k'): f[1,k]:=(dens_prob_1(lambda[1],lambda[3])); f[2,k]:=(dens_prob_1(lambda[2],lambda[3])); f[3,k]:=(dens_prob_2(lambda[3])); f1:= prod_lambda*(f[1,1]*(N_1)+f[2,1]*(N_2)+f[3,1]*(N_3)); p_s(1):= theta[1]*P[1,2]*P[2,3]*f1;
117
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
3
λ l_a
:= prod_lambda .238101604410-14
:= C ,1 3 -.7715947308108
:= C -.7715947308108
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
3
λ l_a
:= prod_lambda .238101604410-14
:= C ,2 3 .1104691697108
:= C .1104691697108
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
3
λ l_a
:= prod_lambda .238101604410-14
:= C ,3 3 .6611255610108
:= C .6611255610108
:= f ,1 1 − e( )−.0002027484706t
e( )−.0001562130178t
:= f ,2 1 − e( )−.0004812494987t
e( )−.0001562130178t
:= f ,3 1 t e( )−.0001562130178t
f1 .003947913523e( )−.0002027484706t
.003866990647e( )−.0001562130178t
− :=
.00008092287510e( )−.0004812494987t
.157415056810-6 t e( )−.0001562130178t
− +
( )p_s 1 .001930099824e( )−.0002027484706t
.001890537350e( )−.0001562130178t
− :=
.00003956247423e( )−.0004812494987t
.769588218510-7 t e( )−.0001562130178t
− +
Trajeto c2->c3 > k:=2: for r from 2 to 2 do for b from 2 to 4 do T[r,b]:=1; end do; end do; for l from 2 to 3 do Prod_lambda:=Product(lambda[l_a], l_a=2..3)*lambda[3]; prod_lambda:=evalf( product(lambda[l_a], l_a=2..3)*lambda[3]);
118
if (l<>2) then T[2,l]:=trajeto(lambda[2], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; C[l,3]:=product(T[l_1,l], l_1=1..3); C:=C[l,3]: end do; N_2:=(T[3,2]*T[3,2]): N_3:=(T[2,3]): unassingn('N_2','N_3','C', 'l', 'k'): f[2,k]:=(dens_prob_1(lambda[2],lambda[3])); f[3,k]:=(dens_prob_2(lambda[3])); f2:=prod_lambda*(f[2,2]*(N_2)+f[3,2]*(N_3)); p_s(2):= theta[2]*P[2,3]*f2;
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
3
λ l_a
:= prod_lambda .117436942310-10
:= C ,2 3 .1104691697108
:= C .1104691697108
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
3
λ l_a
:= prod_lambda .117436942310-10
:= C ,3 3 .6611255610108
:= C .6611255610108
:= f ,2 2 − e( )−.0004812494987t
e( )−.0001562130178t
:= f ,3 2 t e( )−.0001562130178t
f2 .0001111579478e( )−.0004812494987t
.0001111579478e( )−.0001562130178t
− :=
.361303881810-7 t e( )−.0001562130178t
+
119
( )p_s 2 .00001549541792e( )−.0004812494987t
.00001549541792e( )−.0001562130178t
− :=
.503657611210-8 t e( )−.0001562130178t
+
Trajeto c1->c3 > k:=3: for r from 1 to 3 do for b from 1 to 3 do T[r,b]:=1; end do; end do; for d from 2 to 2 do for h from 1 to 3 do T[d,h]:=1; end do; end do; for l from 1 to 3 do Prod_lambda:=Product(lambda[l_a], l_a=l..3)*lambda[3]/lambda[2]; prod_lambda:=evalf( product(lambda[l_a], l_a=1..3)*lambda[3]/lambda[2]); if (l<>1) then T[1,l]:=trajeto(lambda[1], lambda[l]); end if; if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; C[2,3]:=0: C[l,3]:=product(T[l_1,l], l_1=1..3); C:=C[l,3]: N_1:=(T[3,1]*T[3,1]): N_3:=(T[1,3]): end do; unassingn('N_1','N_3','C, l', 'k'): f[2,3]:=0: f[1,k]:=(dens_prob_1(lambda[1],lambda[3])); f[3,k]:=(dens_prob_2(lambda[3])); f3:=prod_lambda*(f[1,3]*(N_1)+f[3,3]*(N_3)); p_s(3):= theta[1]*P[1,3]*f3;
120
:= Prod_lambda .3245988167⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 1
3
λ l_a
:= prod_lambda .494757095910-11 := C ,2 3 0
:= C ,1 3 -21488.99258
:= C -21488.99258
:= N_1 .4617768021109 := N_3 1
:= Prod_lambda .3245988167⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 2
3
λ l_a
:= prod_lambda .494757095910-11 := C ,2 3 0
:= C ,2 3 .1104691697108
:= C .1104691697108
:= N_1 .4617768021109 := N_3 1
:= Prod_lambda .3245988167⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
3
λ l_a
:= prod_lambda .494757095910-11 := C ,2 3 0
:= C ,3 3 21488.99258
:= C 21488.99258
:= N_1 .4617768021109 := N_3 21488.99258
:= f ,1 3 − e( )−.0002027484706t
e( )−.0001562130178t
:= f ,3 3 t e( )−.0001562130178t
f3 .002284673496e( )−.0002027484706t
.002284673496e( )−.0001562130178t
− :=
.106318315610-6 t e( )−.0001562130178t
+
( )p_s 3 .0005583945132e( )−.0002027484706t
.0005583945132e( )−.0001562130178t
− :=
.259851415010-7 t e( )−.0001562130178t
+
121
Trajeto c4 > k:=4: for r from 1 to 3 do for b from 1 to 3 do T[r,b]:=1; end do; end do; for d from 1 to 3 do for h from 1 to 3 do T[d,h]:=1; end do; end do; for l from 1 to 3 do Prod_lambda:=Product(lambda[l_a], l_a=3..3)*lambda[3]; prod_lambda:=evalf( product(lambda[l_a], l_a=3..3)*lambda[3]); if (l<>3) then T[3,l]:=trajeto(lambda[3], lambda[l]); end if; C[l,3]:=product(T[l_1,l], l_1=3..3); C:=C[l,3]: end do; unassingn('C, l', 'k'): f[3,k]:=(dens_prob_2(lambda[3])); f4:=(prod_lambda*(f[3,4])); p_s(4):= theta[3]*f4;
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
3
λ l_a
:= prod_lambda .244025069310-7 := C ,1 3 -21488.99258
:= C -21488.99258
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
3
λ l_a
:= prod_lambda .244025069310-7
122
:= C ,2 3 -3076.577734
:= C -3076.577734
:= Prod_lambda .0001562130178⎛
⎝⎜⎜⎜
⎞
⎠⎟⎟⎟∏
= l_a 3
3
λ l_a
:= prod_lambda .244025069310-7 := C ,3 3 1
:= C 1
:= f ,3 4 t e( )−.0001562130178t
:= f4 .244025069310-7 t e( )−.0001562130178t
:= ( )p_s 4 .310643913210-8 t e( )−.0001562130178t