• Nenhum resultado encontrado

Trabalho Computacional de Mecânica dos Fluidos Ambiental

N/A
N/A
Protected

Academic year: 2021

Share "Trabalho Computacional de Mecânica dos Fluidos Ambiental"

Copied!
17
0
0

Texto

(1)

Trabalho Computacional de Mecânica

dos Fluidos Ambiental

Objectivo geral do trabalho

Criar condições ao aluno para que perceba a melhor: 1. O conceito de equação de evolução;

2. O conceito de fluxo e os processos de advecção, difusão e decaimento; 3. O conceito de divergência do fluxo;

4. Aprofundar os conhecimentos de programação.

A realização deste trabalho contribuirá ainda para que o aluno perceba melhor a representação destes processos na forma diferencial. A equação de evolução é escrita normalmente como:

kc

x

c

x

x

c

u

t

c

j j j

Pondo em evidência a divergência dos fluxos advectivo e difusivo a equação escreve-se:

kc x c uc x t c j j                  

Objectivo

Resolver numericamente a equação de difusão numa geometria unidimensional (um rio) utilizando o conceito de balanço a um volume de dimensões finitas (volume finito) e os conceitos de fluxo difusivo e fluxo advectivo.

Ferramentas

Programa em VBA (Visual Basic for Applications) fornecido pelo corpo docente.

Enunciado do problema

A figura abaixo foi extraída do site http://jornalggn.com.br/noticia/dois-motivos-para-achar-boa-a-ideia-de-abastecer-sp-com-esgoto-tratado e descreve um dos problemas que se colocam na gestão da qualidade da água num rio: como garantir que a água a jusante de uma descarga pode ser reutilizada para abastecimento. Este trabalho de computação descreve as bases subjacentes a este estudo. Para ser realizável no contexto da disciplina vamos ter que simplificar.

(2)

O rio vai ser tratado como um canal rectangular (com comprimento à escolha, mas muito maior do que a largura para que seja válida a aproximação 1D) com secção transversal constante e caudal permanente no tempo. Ao longo da margem podem ser feitas descargas de caudal e concentração específicos de cada descarga.

Vamos considerar um contaminante genérico e os quatro cenários seguintes:

a) Emissão instantânea com difusão, sem advecção nem decaimento, b) Emissão instantânea com difusão, sem advecção e com decaimento, c) Emissão instantânea com difusão e advecção e sem decaimento, d) Emissão contínua num ponto com advecção, difusão e decaimento.

A emissão instantânea é definida nas condições iniciais do problema, especificando concentração não nula em algumas células.

Hipóteses

Considere o problema unidimensional (gradiente nulo na vertical e na transversal) e que a difusividade e a velocidade são uniformes.

A difusividade a utilizar no modelo deve ser especificada tendo em consideração a diferença entre a velocidade média na secção e a velocidade esperada em cada ponto da secção e ainda a largura do rio, i.e. tendo em conta os vórtices não resolvidos pelo modelo 1D.

(3)

Nas simulações pode testar diferentes valores de velocidade e de difusividade e comparar os resultados. No relatório deve incluir um exemplo para cada um dos 4 cenários descritos acima.

Resultados

Os resultados podem ser analisados no espaço utilizando gráficos de perfis longitudinais (no caso 2D seriam mapas) e no tempo num par de pontos, utilizando os gráficos de séries temporais.

O Cenário a) deve ser a base da apresentação dos resultados, por ser o mais simples. Devem apresentar um pequeno conjunto de perfis longitudinais mostrando a modificação da distribuição longitudinal ao longo do tempo e um par de séries temporais.

Os outros cenários devem ser sempre comparados com este cenário de referência, mostrando as diferenças devidas aos processos adicionados (advecção/decaimento/tipo de emissão). Desta forma o relatório fica mais curto e é mais fácil de perceber o papel de cada um desses processos.

Devem ainda ser calculada quantidade total no interior do sistema em cada um dos cenários e feito um gráfico da sua evolução temporal em cada um dos cenários.

Na ausência de transporte para fora do nosso sistema (velocidade nula e com fluxos difusivos nulos nas fronteiras abertas) a massa deve manter-se constante no caso de uma emissão instantânea de um constituinte conservativo e deve crescer no caso de haver uma descarga, até que a taxa de decaimento iguale a taxa de descarga.

Na presença de advecção, a massa total vai depender da taxa da descarga, do transporte e do decaimento. Quando todos estes valores se mantêm constantes, a solução deve evoluir para uma distribuição estacionária.

O programa fornecido faz as simulações e os gráficos de séries temporais e de perfis longitudinais.

Modelo de OD-BOD

Os esgotos domésticos são uma mistura de produtos que incluem matéria orgânica, microrganismos, detergentes, pesticidas (e.g. produtos para controlarem parasitas de animais de estimação). A matéria orgânica que chega ao meio receptor vai ser consumida por organismos heterotróficos (em grande parte bactérias) que a vão utilizar para crescerem, mas especialmente como fonte de energia, através da respiração do carbono. Esta respiração consome Oxigénio Dissolvido (OD) e é normalmente designada por BOD (Biological Oxygen Demand). Os produtos oxidáveis quimicamente dão são quantificados através do CBO (Chemical Oxygen Demand). Os efluentes domésticos produzem sobretudo BOD e os industriais produzem frequentemente CBO.

A descarga de BOD num corpo de água conduz ao consumo de OD, o qual é reposto através da fotossíntese e das trocas através da superfície livre da água, as quais dão um fluxo dirigido da atmosfera para a água no caso de a concentração de OD ser inferior à de saturação (pressão

(4)

parcial do OD na água inferior à pressão parcial na atmosfera) e da água para a atmosfera no caso contrário.

A fotossíntese requer luz e por isso é baixa em águas muito turvas perto de saídas de esgoto e por isso é frequentemente ignorada na análise do decaimento de BOD perto de descargas de esgotos. Nestas condições a concentração de OD depende só da taxa de respiração do BOD e das trocas através da superfície livre.

No relatório inclua as equações para um modelo 1D para a interação OD/BOD e dê uma ideia do algoritmo de resolução. Dê uma ideia das variáveis que pensa que controlam a difusão de OD através da superfície livre (Para pensar só depois de termos visto a turbulência nas aulas teóricas).

Relatório e prazo de entrega

O relatório terá duas partes: (1) descrição teórica e (2) resultados do programa e deve ser

entregue até ao dia 30 de Dezembro. Na segunda parte deve incluir o modelo conceptual para

o OD/BOD (máximo uma página).

A descrição teórica deve apresentar uma pequena introdução com a equação integral, a equação diferencial e ainda o passo intermédio entre as duas que é a equação algébrica que vai ser resolvida pelo modelo, deve apresentar uma justificação do valor da difusividade utilizada e uma descrição do problema a resolver e dos resultados esperados em cada um dos cenários, os quais serão verificados (ou não) na aplicação do modelo.

Equações resolvidas pelo modelo

O modelo resolve o princípio de conservação da massa:

“A taxa de acumulação de massa num ponto é igual à massa que entra menos a massa que sai por unidade de tempo, mais a taxa de produção menos a taxa de consumo (ou degradação)”. Este princípio é traduzido pela equação integral:

un

dA

n

dA

s s

dV dV t vc i o surface surface vc











. 

.  

No caso de uma propriedade conservativa as fontes e os poços são nulos. No caso de um volume elementar, as propriedades podem ser consideradas constantes em cada face e no interior do volume e esta equação pode ser escrita na forma algébrica e resolvida numericamente. Se as propriedades forem uniformes em cada face do volume e no seu interior a equação anterior pode ser escrita como:

(5)

3 3 3 3 2 1 3 3 2 1 1 2 2 2 2 3 1 2 2 2 3 1 1 1 1 1 3 2 1 1 1 3 2 2 1 3 3 x x x x x x x x x u x x x u x x x u x x x u x x x u x x x u x x dt V d t x x x                                                                                                    

Dividindo pelo volume (i.e. escrevendo por unidade de volume) vem:

3 3 3 3 3 3 3 2 1 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 3 x x u x u x x u x u x x u x u dt d t x x x x x x x x                                                                                     

Fazendo tender o volume para zero os cocientes passam a derivadas parciais e a equação fica na forma diferencial.                                         3 3 3 2 2 2 1 1 1 x u x x u x x u x dt d t









Reorganizando e incluindo as fontes e os sumidouros obtém-se:

 

o i

i i i i

s

s

x

x

u

x

t

dt

d





Que no caso 1D sem fontes e com um decaimento (sumidouro) de primeira ordem se resume a:

 

so si

x x u x t dt d                      

E que é a equação a resolver.

A formulação do modelo passa pela identificação de cada volume de controlo e pelo cálculo dos fluxos que lhe estão associados, i.e., pela definição da malha de cálculo. A descrição abaixo é feita para o caso bidimensional por uma questão de generalidade. No caso unidimensional as variáveis só precisam de um índice para serem identificadas (trabalha-se com vectores em vez de trabalhar com matrizes) e só se calculam fluxos ao longo de uma linha (e.g. do eixo dos xx)

(6)

Fluxo Difusivo

Através de cada uma das faces deste volume de controlo há um fluxo difusivo: Face da esquerda:

x

C

C

A

FD

E E ij i j

1 Face da Direita:

x

C

C

A

FD

D D i j ij

1 Inferior:

x

C

C

A

FD

I I ij i j

1 Superior:

x

C

C

A

FD

S S i j ij

1

Taxa de acumulação

A taxa de acumulação é dada por:

t C Vol C Vol ijt t ij t t ij t t ij      

A

Vol

x

x

A

Vol

A taxa de acumulação é igual aos fluxos de entrada - faces esquerda e inferior - menos os de saída – faces direita e superior. Vamos admitir que o volume não varia no tempo e que as áreas são uniformes (sistema com fundo e superfície planas e horizontais.

Cij Ci+1j Ci-1j Cij+1 Cij+1 Cij-1 Uij Vij Ui+1,j Vij+1

(7)

No caso de haver só difusão e decaimento e de o cálculo ser explícito, a equação seria: t i t i t i t i t i t t i

kC

x

C

C

C

t

C

C





  2 1 1

2

Esta é uma discretização explícita porque podemos calcular a concentração em t+Δt, explicitamente, conhecida a concentração em t.

Esta equação pode ser reescrita para obtermos:

t i t i t i t i t t i C k tC x t C x t C x t C                     1 2 2 1 2 1 2

Definindo o número de difusão como:

2 x t D   

A equação fica:

t i t i t i t t i

DC

D

k

t

C

DC

C



1

1

2

1

Para que o parênteses seja positivo (condição de estabilidade do método explícito) seria necessário queD0.5se não existir decaimento, ou seja que:

2

5

0

.

x

t

Ou seja o passo de tempo máximo decresce quando refinamos a malha ou quando aumentamos a difusividade. No caso de haver decaimento o passo no tempo tem ainda que ser menor para que o parêntese seja positivo (ou nulo).

Veremos mais adiante, em Transferência de Energia e Massa e em Modelação Ambiental que poderíamos calcular a concentração implicitamente. Opções deste tipo afectam a precisão dos resultados e a estabilidade do modelo.

No caso de haver advecção a estes fluxos é necessário adicionar os fluxos advectivos. Essa parte será vista na disciplina de Transferência de Energia e Massa pois envolve mais opções do que no caso da difusão.

Cálculo da Advecção

O termo advectivo é o mais complexo de resolver porque precisa de hipóteses adicionais. Com efeito a equação de evolução permite-nos calcular os valores de concentração no interior dos volumes de controlo. Estes valores são suficientes para calcularmos os fluxos difusivos, mas são insuficientes para calcularmos os fluxos advectivos, que dependem do valor da concentração sobre a superfície do volume de controlo (faces dos polígonos) as quais são partilhadas por dois volumes adjacentes. Temos por isso que fazer hipóteses adicionais para

(8)

calcularmos estes fluxos. Uma hipótese trivial seria dizer que aa concentração numa face é a média dos dois volumes adjacentes. Na disciplina de Transferência de Energia e Massa veremos que esta hipótese é normalmente má e veremos as formas mais comuns de calcular a concentração. Em MFA vamos considerar que a concentração numa face é a concentração do volume de onde vem o escoamento (volume da esquerda no caso 1D com velocidade positiva). Este método é conhecido como método upwind ou upstream.

Considerando um escoamento em que a velocidade é positiva (no caso de 1 rio é uma questão de alinhar o eixo com o escoamento) e utilizando o método upwind para a advecção e fazendo o cálculo explícito dos fluxos, i.e. considerando que os fluxos são função dos valores das concentrações no instante “t”, a nossa equação fica:

t i t i t i t t i C x t C t k x t x t u C x t x t u C  2 1 1 2 2 2 1                            

A advecção introduz mais restrições ao passo temporal, uma vez que no parêntese que multiplica por Ci aparece a subtrair. Se não existisse difusão nem decaimento, i.e. se existisse só advecção, a condição de estabilidade seria:

1 0 1               x t u C x t u R

CR é o chamado número de Courant. Este número compara a distância percorrida num intervalo de tempo com o passo espacial e especifica que essa distância tem que ser menor que o comprimento do volume. Esta condição é fácil de perceber. Efectivamente, quando utilizámos o método explícito e upwind, impusemos que o valor que passa na face do volume é o valor que estava no interior do volume. Se o Nº de Courant for maior que a unidade então, no final do passo do tempo, a concentração que está a passar pela face já é a de uma célula mais atrás e por isso a nossa afirmação é falsa. A consequência desta “mentira” é o aparecimento de concentrações negativas. A nova concentração numa célula no caso de advecção pura resulta da diferença entre o que entra e o que sai. Se não entrar nada e sair mais do que lá estava, então a concentração fica negativa. Se a concentração ficar negativa o que era um sumidouro passa a ser uma fonte e tudo fica errado. Nas células em que entra mais do que deveria as concentrações começam a crescer para além da concentração máxima inicia, o que é tão fisicamente impossível como termos concentrações negativas. Estes erros têm tendência para crescerem no tempo e o modelo torna-se instável originando valores que tendem para mais e menos infinito.

O modelo fica instável quando o parêntese se torna negativo. A instabilidade cresce com a taxa de decaimento e com a difusão. Olhando para o parentese percebe-se que nos modelos explícitos as instabilidades se revolvem reduzindo o passo de tempo, do qual resulta o aumento do volume de cálculo. A alternativa a esta redução do passo de tempo seria a construção de modelos implícitos. Em TEM veremos mais sobre este processo.

(9)

Estrutura do programa de cálculo

O programa de cálculo tem que ter uma parte de inicialização das variáveis e de leitura de parâmetros, uma parte de cálculo e uma parte de output.

Os parâmetros de controlo do modelo (difusividade, passo espacial, passo temporal e taxa de decaimento são também dados lidos da folha de EXCEL e os gráficos são feitos para uma folha “Graph”.

Manual do utilizador

O programa é muito simples e a utilização pode ser percebida executando o programa “passo a passo” através do menu “debug”.

O programa começa por ler os parâmetros de controlo na folha “Main”.

Em seguida Lê os parâmetros que caracterizam o escoamento na folha “Flow”: Velocidade e Difusividade e depois lê cada uma das variáveis na folha com o mesmo nome. Em MFA vamos

(10)

trabalhar com uma variável “Generic” e todos os dados são lidos nessa folha, em Células pré-definidas. O conteúdo de cada célula pode ser identificado na função “CreateProperty”. As condições nas fronteiras abertas, o valor por defeito e as taxas de decaimento e de crescimento são dadas no bloco:

Valores iniciais específicos em algumas células são especificados no bloco:

(11)

Num caso real as descargas são entidades físicas (tubos ou afluentes) e descarregam várias propriedades e por isso é prático definir as descargas uma única vez. É por isso que as células que definem uma descarga (número, nome, celula e caudal) são copiadas da folha “Discharges” e só as concentrações é que são especificadas na folha da propriedade. Se o utilizador quiser pode fazer toda a definição na página da propriedade. No caso de se trabalhar só com uma propriedade o trabalho é o mesmo, mas é um mau princípio, pois se passar a usar várias propriedades, a probabilidade de cometer erros na entrada dos dados aumenta.

(12)

Manual do Programador

O programa está feito em VBA e os dados estão organizados em tipos de complexidade crescente. O tipo mais complexo é o tipo “Property” que tem associados todos os dados necessários à simulação de uma propriedade. O tipo de dados mais simples é neste caso a geometria “grid” porque temos uma geometria unidimensional de secção constante.

O programa foi desenvolvido para resolver várias propriedades básicas de um modelo ecológico e será utilizado nas disciplinas de MFA, TEM e Modelação Ambiental. EM MFA vamos utilizar exclusivamente a parte que trabalha com a propriedade “Generic”.

As principais estruturas de dados são: Geometria, Escoamento, Condições de Fronteira (incluindo descargas), Coeficientes da Equação, variáveis de controlo e Propriedades.

Geometria

Este conjunto de dados é descrito pelo tipo “Grid” e tem todas as variáveis que descrevem a malha e cada uma das células:

Type grid 'Channel Length Length As Double 'Channel cross Section AreaVertical As Double 'number of cells

NC As Integer

'spatial step of the cells dx As Double

'distance of cell center to origin xc() As Double

End Type

Se quiséssemos definir uma geometria mais realista, a secção transversal e o passo espacial (dx) seriam vectores e teriam que ser especificados num ficheiro de dados.

Propriedades do Escoamento

As propriedades do escoamento são a velocidade e a difusividade em cada ponto e variáveis derivadas delas. Neste caso estamos a usar o número de difusão e o número de Courant (este vai ser visto em TEM), mas poderíamos estar a usar também o caudal em cada célula. Num caso real estas propriedades seriam variáveis no espaço e no tempo.

Type Flow_properties Velocity As Double Diffusivity As Double FourierNr As Double DiffusionNr As Double CourantNr As Double End Type

(13)

Parâmetros de Controlo da execução do modelo

Estas variáveis permitem controlar a execução do modelo: tempo de simulação, passo de tempo, intervalo entre “outputs”. Simulação com ou sem advecção. Discretização temporal (actualmente é sempre explícita).

Type Controls t As Double dt As Double tstart As Double tend As Double printtime As Double Printnumber As Double NumberOfOutputs As Integer DtPrint As Double PrintLine As Integer FirstPrintLine As Long FirstOutput As Boolean Advection As Boolean Diffusion As Boolean AdvType As String Explicit As Boolean End Type

Condições de Fronteira´

As condições de fronteira especificam como é que o nosso sistema interage com o exterior. No nosso caso a interacção pode ser por advecção ou através de descargas (vamos desprezar os fluxos difusivos em todas as fronteiras).

O nosso sistema pode ter fronteiras abertas à esquerda e à direita (topos do canal). Nessas fronteiras temos que especificar os valores das propriedades (os caudais foram especificados no “Flow”). Type BoundaryCondition LeftType As Integer LeftValue As Double RightType As Integer RightValue As Double PropDischarges As Discharges End Type

(14)

O tipo de fronteira (leftType/RightType) não estão a ser usados. Em modelos complexos podemos ter interesse em definir tipos (e.g. open/closed) para facilitar a programação.

As descargas são uma condição de fronteira mais complexa e por isso requerem mais dados que são mais fáceis de definir se criarmos novos tipos de dados. Uma descarga é feita num local específico (cell) pode ter um nome (e.g. ETAR), descarrega um caudal e cada propriedade descarregada tem uma concentração (SpecificValue). Uma propriedade pode ser descarregada em várias descargas e isso complica um pouco a especificação. No programa foi adoptada a estrutura abaixo: Type Discharge_properties Number As Integer Name As String Cell As Integer VolumeRate As Double SpecificValue As Double End Type Type Discharges NumberOfDischarges As Integer Discharge() As Discharge_properties End Type

As Desgargas (Discharges) estão associadas a cada propriedade através das “BoundaryConditions” da propriedade. Cada propriedade tem um “NumberOfDischarges” e cada uma destas descargas tem as propriedades “Discharge_properties”.

Propriedades

As propriedades simuladas pelo modelo são descritas pelo tipo “Property”. Este tipo inclui o valor em t+dt (NewValue) e o valor em “t”, um valor por defeito, um valor mínimo, uma taxa de decaimento , condições de fronteira e é lido numa folha de Excel cujo nome é guardado em “SheetName”. Outras variáveis poderiam ser criadas (e.g. Units, Volatile (yes/no), settling….). Type Property Old() As Double NewValue() As Double Default As Double Minimum As Double MinimumActive As Boolean DecayRate As Double GrowthRate As Double Boundary As BoundaryCondition SheetName As String InitCell As Integer End Type

(15)

As propriedades simuladas pelo modelo são agrupadas num tipo “Properties”. Em MFA vamos usar exclusivamente a propriedade “Generic”. Num modelo para estudar casos reais podemos ter dezenas de propriedades.

Type Properties ' Prey As Property ' Predator As Property ' Detritus As Property Generic As Property ' Nutrient As Property End Type

Outras variáveis

No modelo temos ainda outras variáveis que o utilizador não precisa de conhecer. No nosso caso temo os coeficientes da equação algébrica a resolver. No caso explícito que estamos a usar estes coeficientes não são essenciais, mas seriam se o modelo fosse implícito (veremos em TEM). Type Equation_Coef Left2Coef() As Double LeftCoef() As Double CenterCoef() As Double RigthCoef() As Double Rigth2Coef() As Double TiCoef() As Double End Type

Estrutura do Programa

O programa começa por definir as variáveis a utilizar, recorrendo aos tipos definidos acima: Dim I As Integer

Dim ctrl As Controls Dim printCount As Integer

Dim gr As grid

Dim flow As Flow_properties Dim Coef As Equation_Coef

Dim Pr As Properties

EM seguida inicializa as variáveis, lendo os dados de folhas EXCEL. Cada conjunto de variáveis é inicializado utilizando uma função que lê de uma folha excel:

'Reads grid parameters gr = CreateGrid() 'Reads flow parameters flow = CreateFlow(gr, ctrl)

(16)

'Allocates memory for transport coeficients Coef = CreateCoef(gr.NC)

'Initializes properties options and values

Pr.Generic = CreateProperty("Generic", gr, ctrl) 'Pr.Nutrient = CreateProperty("Nutrient", gr)

Em seguida o programa inicializa o Sistema de controlo da impressão: 'Prints Initial values

Call PrintValues(Pr.Generic, gr, ctrl) ' Call PrintValues(Pr.Prey, gr, Ctrl) ' Updates printing control

Call UpdatePrinting(ctrl)

E em seguida faz o ciclo de cálculo para simular a evolução entre “tsart” e “tend” utilizando o “dt” desejado. O ciclo de cálculo é controlado por um “Do While”:

Do While ctrl.t < ctrl.tend

'Sets new time and zeros coefficients ctrl.t = ctrl.t + ctrl.dt

Call ZerosCoeffs(Coef, gr)

' Performs transport

Call Transport(Pr.Generic, flow, gr.NC, ctrl, Coef)

' Performs discharges

Call ApplyDischarges(Pr.Generic, gr, ctrl.dt) 'Updates Generic concentrations due to decay Call ExpSinksGeneric(Pr.Generic, gr.NC, ctrl.dt) 'Prints if it is time If ctrl.t >= ctrl.printtime Then Call PrintValues(Pr.Generic, gr, ctrl) 'Call PrintValues(Pr.Nutrient, gr, Ctrl) Call UpdatePrinting(ctrl) End If Loop

Depois de executado o ciclo de cálculo são feitos os gráficos e a aplicação volta para a “Folha Principal:

'After reaching endtime, creates graphs Call CreateGraphs(ctrl, gr.NC)

Sheets("Main").Select

(17)

Application.ScreenUpdating = True Application.EnableEvents = True

Application.Calculation = xlCalculationAutomatic

MsgBox ("The Application Ended")

Ciclo de cálculo

O ciclo de cálculo inclui o cálculo do Transporte. Neste cálculo são calculados os coeficientes da equação para incluírem o processo de advecção e de difusão, se tiverem sido seleccionados nos dados. Os coeficientes são calculados de acordo co a equação algébrica a resolver (a Advecção será vista em TEM). O novo valor da concentração é calculado em “Exptransport” utilizando os coeficientes calculados.

Referências

Documentos relacionados

dois gestores, pelo fato deles serem os mais indicados para avaliarem administrativamente a articulação entre o ensino médio e a educação profissional, bem como a estruturação

Our contributions are: a set of guidelines that provide meaning to the different modelling elements of SysML used during the design of systems; the individual formal semantics for

São considerados custos e despesas ambientais, o valor dos insumos, mão- de-obra, amortização de equipamentos e instalações necessários ao processo de preservação, proteção

hospitalizados, ou de lactantes que queiram solicitar tratamento especial deverão enviar a solicitação pelo Fale Conosco, no site da FACINE , até 72 horas antes da realização

A teoria das filas de espera agrega o c,onjunto de modelos nntc;máti- cos estocásticos construídos para o estudo dos fenómenos de espera que surgem correntemente na

O presente estudo objetivou demarcar a idade de segregação, por meio da variação radial da massa espe- cífica básica, caracterizar o comportamento de propriedades físicas no

(1983) estudaram o efeito da adição de monensina (l00mg) em dietas de novilhas da raça holandesa, recebendo 33% de concentrado e 67% de volumoso, verificaram que houve aumento de

No código abaixo, foi atribuída a string “power” à variável do tipo string my_probe, que será usada como sonda para busca na string atribuída à variável my_string.. O