====== Paula Yuri Nishimura ====== {{:bie5782:01_curso2009:alunos:trabalho_final:dsc00067.jpg?300|}} Doutoranda em Ecologia de Ecossistemas Aquáticos, [[http://www.ib.usp.br/limnologia/|Laboratório de Limnologia]], IB-USP ===== Proposta ===== ==== Principal ==== O cálculo do biovolume dos organismos fitoplanctônicos é feito através de modelos geométricos similares (esfera, cilindro, elipse, cilindro+2cones...), multiplicando a densidade de cada espécie pelo volume médio das células em consideração, através da dimensão média de pelo menos 30 indivíduos de cada espécie observados na amostra (Sun & Liu, 2003; Hillebrand, 1999). [Obs: Para o cálculo do biovolume no meu mestrado, tive que fazer uma mega planilha do Excel com as medidas e as fórmulas para cada espécie (assim como a maioria dos fitoplanctólogos que conheço fazem...)]. Portanto, minha proposta é criar funções das fórmulas para o cálculo do biovolume dos organismos fitoplanctônicos. Inicialmente, faria um “banco de dados” dos principais gêneros, sua forma geométrica e as medidas necessárias, cuja função retornasse estes dados para o gênero “pesquisado”. Assim, não será preciso ficar consultando uma lista durante a tomada de medidas no microscópio. Em seguida, faria as funções com as fórmulas dos modelos geométricos. === Referências Bibliográficas === Sun, J. & Liu, D. Geometric models for calculating cell biovolume and surface area for phytoplankton. Journal of Plankton Research. 25(11):1331-1346. 2003. Hillebrand, H., Dürselen, C., Kirschtel, D., Pollingher, U. & Zohary, T. Biovolume calculation for pelagic and benthic microalgae. Journal of Phycology. 35:403–424. 1999. == Comentários == == Paulo == MUITO legal! Algumas sugestões (aproveite o que achar útil): - Sua função terá um argumento para especificar os gêneros ou a forma geométrica básica (pode ter os dois inclusive, para comportar gêneros que vc não previu). Será uma função com muitos argumentos possíveis, o que vai te obrigar a fazer uma sequência de ''if'''s, finalizada com uma última condição que retorna uma mensagem de erro se o usuário não especificou nenhum dos argumentos previstos. - Se todas as fórmulas são combinações de volumes de sólidos geométricos, vc pode incluir uma opção que é deixar para o usuário combiná-las, ao invés de escolher uma pré-definida. - Se em algum caso há desacordo quanto à fórmula, a função pode dar a possibilidade de retornar o valor de mais de uma fórmula, e já fazer alguma comparação entre os resultados. - De todo jeito, é importante deixar claro na saída o modelo usado. ==== Plano B ==== Uma função que dê uma saída gráfica para melhor visualização dos dados de densidade. Gráfico 1: densidade por classe + riqueza; Gráfico 2: densidade relativa por classe + Índice de Shannon; Gráfico 3: densidade das espécies mais abundantes (> 25% da amostra). ===== Página de Ajuda ===== biovol package:nenhum R Documentation Cálculo do biovolume dos organismos fitoplanctônicos. Description: Calcula o biovolume dos organismos fitoplanctônicos através dos valores médio da(s)medida(s) necessária(s) para cada modelo geométrico aproximado. Usage: biovol(diameter, length, width, height, cells=1, genus, shape) Arguments: diameter: Vetor numérico. Valores do diâmetro da celula, cenóbio, colônia ou filamento, quando necessário. length: Vetor numérico. Valores do comprimento da célula, cenóbio, colônia ou filamento, quando necessário. width: Vetor numérico. Valores da largura célula, cenóbio, colônia ou filamento, quando necessário. height: Vetor numérico. Valores da altura célula, cenóbio, colônia ou filamento, quando necessário. cells: Vetor numérico. Valores do número de células de cada cenóbio, colônia ou filamento cujos indivíduos foram medidos, quando necessário. Padrão é "1". genus: O gênero ao qual a espécie cujo biovolume será calculado. Alguns gêneros comuns corpos d'água brasileiros estão especificados. shape: A forma geométrica a ser utilizada para o cálculo do biovolume. As formas contempladas nesta função são "sphere" "prolate spheroid" "ellipsoid" "elliptic prism" "cylinder" "rectangular box" "cone" "double cone" "half sphere" "cone + half sphere" "sickle-shaped cylinder" "sickle-shaped prism" "cylinder + 2 half spheres" "cylinder + 2 half cones" "prism on parallelogram-base" Details: Os valores das medidas necessárias para o cálculo do volume são aplicados à fórmula matemática conforme a forma geométrica ou gênero especificado. É possível calcular o biovolume especificando a forma geométrica ou o gênero. Para cada forma ou gênero são necessárias medidas específicas, indicadas na saída da função. Value: Uma lista é gerada. Se o argumento utilizado for a forma geométrica, a lista gerada indicará (1) alguns gêneros fitoplanctônicos que apresentam esta forma, (2) as medidas necessárias para o cálculo do volume e (3) o biovolume, caso os vetores numéricos necessários tenham sido indicados. Se o argumento utilizado for o gênero, a lista gerada indicará a (1) classe deste gênero, a forma de vida e a forma geométrica, (2) as medidas necessárias para o cálculo do volume e (3) o biovolume, caso os vetores numéricos necessários tenham sido indicados. Warning: A função calcula o biovolume médio para um indivíduo de uma determinada espécie da amostra. Para o cálculo do biovolume total da amostra, é necessário multiplicar o biovolume obtido nesta função pela densidade dos organismos encontrada na amostra. Author: Paula Yuri Nishimura nishimurapy@usp.br References: Sun, J. & Liu, D. Geometric models for calculating cell biovolume and surface area for phytoplankton. Journal of Plankton Research. 25(11):1331-1346. 2003. Hillebrand, H., Dürselen, C., Kirschtel, D., Pollingher, U. & Zohary, T. Biovolume calculation for pelagic and benthic microalgae. Journal of Phycology. 35:403–424. 1999. See Also: 'mean' do pacote base, para o cálculo das médias. Examples: # Gerando dados: d <- round(rnorm(30,10,2)) h <- round(rnorm(30,5,2)) c <- round(rnorm(30,35,10)) l <- round(rnorm(30,26,3)) w <- round(rnorm(30,14,2)) #Cálculo do biovolume do gênero Synura: biovol(diameter=d,height=h,cells=c,genus="Synura") #Cálculo do biovolume para cylindro em forma de estrela: biovol(diameter=d, height=h,cells=c,shape="sickle-shaped cylinder") #Caso só o argumento de gênero ou forma geométrica seja fornecido, informações sobre este gênero ou forma são fornecidos: biovol(genus="Cylindrospermopsis") biovol(shape="cone + half sphere") #Forma geométrica ou gênero inexistente. Mensagem de erro e dicas para o usuário. biovol(diameter=d,cells=c,shape="ball") biovol(length=l, width=w, height=h,cells=c,genus="Planktothix") ===== Código da Função ===== ##Paula Yuri Nishimura ##Trabalho final da disciplina BIE5782 biovol <- function(diameter="", length="", width="", height="", cells=1, genus="", shape="") #Função para o cálculo do biovolume de organismos fitoplanctônicos #Feito por Paula Yuri Nishimura em 01/04/2009 como trabalho final da disciplina BIE5782 (IB-USP) { #Genus ##Prolate Spheroid ###Actinastrum ###Desmodesmus ###Scenedesmus ###Nephroclamys ###Cryptomonas ###Aphanothece ###Mallomonas ###Dinobryon ###Synura if(genus=="Synura"|genus=="synura") { general <- c("Bacillariophyceae","Unicellular","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Dinobryon"|genus=="dinobryon") { general <- c("Chrysophyceae","Colonial","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height","number of cells/colony") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Mallomonas"|genus=="mallomonas") { general <- c("Chrysophyceae","Flagellate unicellular","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Aphanothece"|genus=="aphanothece") { general <- c("Cyanophyceae","Colonial","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height","number of cells/colony") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Actinastrum"|genus=="actinastrum"|genus=="Nephroclamys"|genus=="nephroclamys") { general <- c("Chlorophyceae","Colonial","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height","number of cells/colony") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Desmodesmus"|genus=="desmosdemus"|genus=="Scenedesmus"|genus=="scenedesmus") { general <- c("Chlorophyceae","Cenobium","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height","number of cells/cenobium") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(genus=="Cryptomonas"|genus=="cryptomonas") { general <- c("Cryptophyceae","Flagellate unicellular","Prolate Spheroid") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } ##Sphere ###Coelastrum ###Dictiosphaerium ###Micratinium ###Golenkinia ###Anabaena ###Aphanocapsa ###Synechocystis ###Chroococcus ###Microcystis ###Synechococcus ###Carteria ###Chlamydomonas if(genus=="Carteria"|genus=="carteria"|genus=="Chlamydomonas"|genus=="chlamydomonas") { general <- c("Chlorophyceae","Unicellular","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Coelastrum"|genus=="coelastrum") { general <- c("Chlorophyceae","Cenobium","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cenobium diameter") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Dictiosphaerium"|genus=="dictiosphaerium"|genus=="Micratinium"|genus=="micratinium") { general <- c("Chlorophyceae","Colonial","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter","numer of cells/colony") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Golenkinia"|genus=="golenkinia") { general <- c("Chlorophyceae","Unicellular or Colonial","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter","numer of cells/colony") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Anabaena"|genus=="anabaena") { general <- c("Cyanophyceae","Filamentous","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter","numer of cells/filament") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Aphanocapsa"|genus=="aphanocapsa"|genus=="Chroococcus"|genus=="chroococcus"|genus=="Microcystis"|genus=="microcystis") { general <- c("Cyanophyceae","Colonial","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter","numer of cells/colony") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(genus=="Synechocystis"|genus=="synechocystis"|genus=="Synechococcus"|genus=="synechococcus") { general <- c("Cyanophyceae","Unicellular","Sphere") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } ##Rectangular box ###Crucigenia ###Tetraedron ###Merismopedia ###Asterionella ###Synedra ###Tabularia if(genus=="Asterionella"|genus=="asterionella"|genus=="Synedra"|genus=="synedra"|genus=="Tabularia"|genus=="tabularia") { general <- c("Bacillariophyceae","Unicellular ou colonial","Rectangular box") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height","number of cells/cenobium") volume <- (mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Crucigenia"|genus=="crucigenia") { general <- c("Chlorophyceae","Cenobium","Rectangular box") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height","number of cells/cenobium") volume <- (mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Tetraedron"|genus=="tetraedron") { general <- c("Chlorophyceae","Unicellular","Rectangular box") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height") volume <- (mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Merismopedia"|genus=="merismopedia") { general <- c("Cyanophyceae","Colonial","Rectangular box") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height","number of cells/colony") volume <- (mean(length)*mean(width)*mean(height))*mean(cells) } ##Cylinder ###Aulacoseira ###Cyclotella ###Mougeotia ###Cylindrospermopsis ###Pseudoanabaena ###Planktolyngbya ###Spirulina if(genus=="Aulacoseira"|genus=="aulacoseira") { general <- c("Bacillariophyceae","Filamentous","Cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and length","number of cells/filament") volume <- (pi/4*mean(diameter)^2*mean(length))*mean(cells) } if(genus=="Cyclotella"|genus=="cyclotella") { general <- c("Bacillariophyceae","Unicellular","Cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and length") volume <- (pi/4*mean(diameter)^2*mean(length))*mean(cells) } if(genus=="Mougeotia"|genus=="mougeotia") { general <- c("Zygnemaphyceae","Filamentous","Cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and length","number of cells/filament") volume <- (pi/4*mean(diameter)^2*mean(length))*mean(cells) } if(genus=="Cylindrospermopsis"|genus=="cylindrospermopsis"|genus=="Pseudoanabaena"|genus=="pseudoanabaena"|genus=="Planktolyngbya"|genus=="planktolyngbya"|genus=="Spirulina"|genus=="spirulina") { general <- c("Cyanophyceae","Filamentous","Cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and length","number of cells/filament") volume <- (pi/4*mean(diameter)^2*mean(length))*mean(cells) } ##Sickle-shaped cylinder ###Monorraphidium ###Closteriopsis ###Kirchineriella ###Ankistrodesmus if(genus=="Closteriopsis"|genus=="closteriopsis"|genus=="Monoraphidium"|genus=="monoraphidium") { general <- c("Chlorophyceae","Unicellular","Sickle-shaped cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height") volume <- (pi/6*mean(height)*mean(diameter)^2)*mean(cells) } if(genus=="Kirchineriella"|genus=="kirchineriella"|genus=="Ankistrodesmus"|genus=="ankistrodesmus") { general <- c("Chlorophyceae","Colonial","Sickle-shaped cylinder") names(general)<-c("Class","Life form","Shape") information <- c("Cell diameter and height", "number of cells/colony") volume <- (pi/6*mean(height)*mean(diameter)^2)*mean(cells) } ##Ellipsoid ###Peridinium ###Amphidinium ###Trachelomonas if(genus=="Peridinium"|genus=="peridinium"|genus=="Amphidinium"|genus=="amphidinium"|genus=="Alexandrium"|genus=="alexandrium"|genus=="dinophysis"|genus=="Dinophysis"|genus=="Diplopelta"|genus=="diplopelta"|genus=="Gymnodinium"|genus=="gymnodinium"|genus=="Gyrodinium"|genus=="gyrodinium"|genus=="Heteraulacus"|genus=="heteraulacus"|genus=="Peridiniopsis"|genus=="peridiniopsis"|genus=="Pyrophacus"|genus=="pyrophacus") { general <- c("Dinophyceae","Flagellate unicellular","Ellipsoid") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height") volume <- (pi/6*mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Trachelomonas"|genus=="trachelomonas") { general <- c("Euglenophyceae","Flagellate unicellular","Ellipsoid") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height") volume <- (pi/6*mean(length)*mean(width)*mean(height))*mean(cells) } ##Elliptic prism ###Phacus ###Achnanthidium ###Navicula ###Surirella ###Pediastrum if(genus=="Phacus"|genus=="phacus"|genus=="Achnanthidium"|genus=="achnanthidium"|genus=="Navicula"|genus=="navicula"|genus=="Surirella"|genus=="surirella") { general <- c("Bacillariophyceae","Unicellular","Elliptic prism") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height") volume <- (pi/4*mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Pediastrum"|genus=="pediastrum") { general <- c("Chlorophyceae","Cenobium","Elliptic prism") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height","number of cells/cenobium") volume <- (pi/4*mean(length)*mean(width)*mean(height))*mean(cells) } if(genus=="Phacus"|genus=="phacus") { general <- c("Euglenophyceae","Flagellate unicellular","Elliptic prism") names(general)<-c("Class","Life form","Shape") information <- c("Cell length, width, height") volume <- (pi/4*mean(length)*mean(width)*mean(height))*mean(cells) } #Shapes if(shape=="prolate spheroid") { general <- c("Actinastrum, Desmodesmus, Nephroclamys, Scenedesmus, Cryptomonas, Aphanothece, Mallonmonas, Dinobryon, Synura") names(general) <- c("Some genus with prolate spheroid shape:") information <- c("Cell/cenobium diameter ou height","numer of cells/colony,cenobium,filament") volume <- ((pi/6)*mean(diameter)^2*mean(height))*mean(cells) } if(shape=="sphere") { general <- c("Coelastrum, Dictiosphaerium, Golenknia, Micratinium, Anabaena, Aphanocapsa, Synechocystis, Chroococcus, Microcystis, Synechococcus, Chlamydomonas, Carteria") names(general) <- c("Some genus with sphere shape:") information <- c("Cell diameter","number of cells/colony,filament,cenobium") volume <- ((pi/6)*mean(diameter)^3)*mean(cells) } if(shape=="rectangular box") { general <- c("Crucigenia, Tetraedron, Merismopedia, Asterionella, Synedra, Tabularia") names(general) <- c("Some genus with rectangular box shape:") information <- c("Cell length, width and height","number of cells/colony,filament,cenobium") volume <- (mean(length)*mean(width)*mean(height))*mean(cells) } if(shape=="cylinder") { general <- c("Aulacoseira, Cyclotella, Mougeotia, Pseudoanabaena, Planktolyngbya, Spirulina") names(general) <- c("Some genus with cylinder shape:") information <- c("Cell diameter and length","number of cells/colony,cenobium,filament") volume <- (pi/4*mean(diameter)^2*mean(length))*mean(cells) } if(shape=="sickle-shaped cylinder") { general <- c("Monorraphidium, Closteriopsis, Kirchineriella, Ankistrodesmus") names(general) <- c("Some genus with sickle-shaped cylinder shape:") information <- c("Cell diameter and height", "number of cells/colony") volume <- (pi/6*mean(height)*mean(diameter)^2)*mean(cells) } if(shape=="ellipsoid") { general <- c("Peridinium, Trachelomonas, Amphidinium, Dinophysis, Diplopelta, Gymnodinium, Gyrodinium, Heteraulacus, Peridiniopsis, Pyrophacus") names(general) <- c("Some genus with ellipsoid shape:") information <- c("Cell length, width and height", "number of cells/colony,filament,cenobium") volume <- (pi/6*mean(length)*mean(width)*mean(height))*mean(cells) } if(shape=="elliptic prism") { general <- c("Phacus, Achnanthidium, Navicula, Surirella, Pediastrum") names(general) <- c("Some genus with elliptic prism shape:") information <- c("Cell length, width and height", "number of cells/colony,filament,cenobium") volume <- (pi/4*mean(length)*mean(width)*mean(height))*mean(cells) } if(shape=="cylinder + 2 half spheres") { general <- c("?") names(general) <- c("Some genus with cylinder + 2 half spheres shape:") information <- c("Cell diameter and height", "number of cells/colony,filament,cenobium") volume <- (pi*mean(diameter)^2*(mean(height)/4-mean(diameter)/12))*mean(cells) } if(shape=="cylinder + 2 half cones") { general <- c("?") names(general) <- c("Some genus with cylinder + 2 half cones shape:") information <- c("Cell diameter and height", "number of cells/colony,filament,cenobium") volume <- (pi/4*mean(diameter)^2*(mean(height)-mean(diameter)/3))*mean(cells) } if(shape=="cone") { general <- c("?") names(general) <- c("Some genus with cone shape:") information <- c("Cell diameter and height", "number of cells/colony,filament,cenobium") volume <- (pi/12*mean(height)*mean(diameter)^2)*mean(cells) } if(shape=="double cone") { general <- c("?") names(general) <- c("Some genus with double cone shape:") information <- c("Cell diameter and height", "number of cells/colony,filament,cenobium") volume <- (pi/12*mean(height)*mean(diameter)^2)*mean(cells) } if(shape=="cone + half sphere") { general <- c("?") names(general) <- c("Some genus with cone + half sphere shape:") information <- c("Cell diameter and height", "number of cells/colony,filament,cenobium") volume <- (pi/4*mean(height)*mean(diameter)^2)*mean(cells) } if(shape=="prism on parallelogram-base") { general <- c("?") names(general) <- c("Some genus with prism on parallelogram-base shape:") information <- c("Cell length, width and height", "number of cells/colony,filament,cenobium") volume <- (1/2*mean(length)*mean(width)*mean(height))*mean(cells) } if(shape=="half sphere") { general <- c("?") names(general) <- c("Some genus with half sphere shape:") information <- c("Cell diameter", "number of cells/colony,filament,cenobium") volume <- (pi/12*mean(diameter)^3)*mean(cells) } if(shape=="sickle-shaped prism") { general <- c("?") names(general) <- c("Some genus with sickle-shaped prism shape:") information <- c("Cell length, width and height", "number of cells/colony,filament,cenobium") volume <- (pi/4*mean(length)*mean(width)*mean(height))*mean(cells) } #caso shape ou genus não esteja contemplado nesta função, retorna mensagem de erro. if(shape!="sphere"&shape!="prolate spheroid"&shape!="ellipsoid"&shape!="elliptic prism"&shape!="cylinder"&shape!="rectangular box"&shape!="cone"&shape!="double cone"&shape!="half sphere"&shape!="cone + half sphere"&shape!="sickle-shaped cylinder"&shape!="sickle-shaped prism"&shape!="cylinder + 2 half spheres"&shape!="cylinder + 2 half cones"&shape!="prism on parallelogram-base"&genus!="Synura"&genus!="synura"&genus!="Dinobryon"&genus!="dinobryon"&genus!="Mallomonas"&genus!="mallomonas"&genus!="Aphanothece"&genus!="aphanothece"&genus!="Actinastrum"&genus!="actinastrum"&genus!="Nephroclamys"&genus!="nephroclamys"&genus!="Desmodesmus"&genus!="desmosdemus"&genus!="Scenedesmus"&genus!="scenedesmus"&genus!="Cryptomonas"&genus!="cryptomonas"&genus!="Carteria"&genus!="carteria"&genus!="Chlamydomonas"&genus!="chlamydomonas"&genus!="Coelastrum"&genus!="coelastrum"&genus!="Dictiosphaerium"&genus!="dictiosphaerium"&genus!="Micratinium"&genus!="micratinium"&genus!="Golenkinia"&genus!="golenkinia"&genus!="Anabaena"&genus!="anabaena"&genus!="Aphanocapsa"&genus!="aphanocapsa"&genus!="Chroococcus"&genus!="chroococcus"&genus!="Microcystis"&genus!="microcystis"&genus!="Synechocystis"&genus!="synechocystis"&genus!="Synechococcus"&genus!="synechococcus"&genus!="Asterionella"&genus!="asterionella"&genus!="Synedra"&genus!="synedra"&genus!="Tabularia"&genus!="tabularia"&genus!="Crucigenia"&genus!="crucigenia"&genus!="Tetraedron"&genus!="tetraedron"&genus!="Merismopedia"&genus!="merismopedia"&genus!="Aulacoseira"&genus!="aulacoseira"&genus!="Cyclotella"&genus!="cyclotella"&genus!="Mougeotia"&genus!="mougeotia"&genus!="Cylindrospermopsis"&genus!="cylindrospermopsis"&genus!="Pseudoanabaena"&genus!="pseudoanabaena"&genus!="Planktolyngbya"&genus!="planktolyngbya"&genus!="Spirulina"&genus!="spirulina"&genus!="Closteriopsis"&genus!="closteriopsis"&genus!="Monoraphidium"&genus!="monoraphidium"&genus!="Kirchineriella"&genus!="kirchineriella"&genus!="Ankistrodesmus"&genus!="ankistrodesmus"&genus!="Peridinium"&genus!="peridinium"&genus!="Amphidinium"&genus!="amphidinium"&genus!="Alexandrium"&genus!="alexandrium"&genus!="dinophysis"&genus!="Dinophysis"&genus!="Diplopelta"&genus!="diplopelta"&genus!="Gymnodinium"&genus!="gymnodinium"&genus!="Gyrodinium"&genus!="gyrodinium"&genus!="Heteraulacus"&genus!="heteraulacus"&genus!="Peridiniopsis"&genus!="peridiniopsis"&genus!="Pyrophacus"&genus!="pyrophacus"&genus!="Trachelomonas"&genus!="trachelomonas"&genus!="Phacus"&genus!="phacus"&genus!="Achnanthidium"&genus!="achnanthidium"&genus!="Navicula"&genus!="navicula"&genus!="Surirella"&genus!="surirella"&genus!="Pediastrum"&genus!="pediastrum"&genus!="Phacus"&genus!="phacus") { general <- ("Genus or Shape unknown") names(general) <- ("ERROR:") information <- ("Think which geometric model this genus is similar with. You can use one of the shapes included in this function") volume <- ("Check on: Sun, J. & Liu, D. Journal of Plankton Research. 25(11):1331-1346. 2003.") } #Return resulta <- list(general,information,volume) names(resulta) <- c("General information","What to measure","Biovolume") return(resulta) } ===== Arquivo da Função ===== {{:bie5782:01_curso2009:alunos:trabalho_final:biovol.r|}}