Determinação e Calibração da Concentração de Inóculo Fungico
Via suspenção de esporos utilizando Hemacitômetro
O hemacitômetro comum consiste de uma lâmina retangular em forma de H, onde se encontram duas regiões delimitadas, (figura I) cada região delimitada possui uma superfície de 9 mm² e profundidade de 0,1 mm. Esse compartimento possui 9 divisões/quadrantes, (figura II) que são de três tipos, são eles “A” = “B” = “C”, em que:
- “A” – localizados nos quatro cantos e subdivididos em 15 quadrados “a”
- “B” – localizados entre os compartimentos “A” e subdivididos em 20 quadrados “b”
- “C” – localizado no centro e subdivididos em 25 quadrados “c”
Para utilização da aplicação, preencha os campos conforme o indicado e escolha o quadrante que foi realizada a contagem de esporos. Insira o volume final de suspensão de esporos e a” concentração desejada. A aplicação lhe retornara três valores:
Esporos por mL da suspenção inicial
Volume da suspensão inicial para preparo da suspensão de inóculo final em mL”
Volume de veículo para preparo da suspensão de inóculo final em mL”
#| '!! shinylive warning !!': |
#| shinylive does not work in self-contained HTML documents.
#| Please set `embed-resources: false` in your metadata.
#| standalone: true
#| viewerHeight: 500
webr::install("dplyr")
library(shiny)
library(dplyr)
# Função inoculo modificada
inoculo <- function(numero, quadrante, conc, volume) {
if (!is.numeric(numero) || !is.numeric(conc) || !is.numeric(volume)) {
stop("Os argumentos numero, conc e volume devem ser numéricos.")
}
fator_correcao <- case_when(
quadrante == "A" ~ 10000,
quadrante == "a" ~ 160000,
quadrante == "b" ~ 200000,
quadrante == "c" ~ 250000,
quadrante == "c'" ~ 4000000,
TRUE ~ 1 # Caso nenhum dos casos acima seja verdadeiro
)
esporo_mL <- numero * fator_correcao
volume_inoculo <- (conc * volume) / esporo_mL
volume_veiculo <- volume - volume_inoculo
return(list(esporo_mL = esporo_mL, volume_inoculo = volume_inoculo, volume_veiculo = volume_veiculo))
}
# Define UI for application
ui <- navbarPage(theme = bslib::bs_theme(bootswatch = "lumen"),
tabPanel("Calibração de Inóculo",
fluidRow(
column(width = 6,
numericInput("numero", "Número MÉDIO de esporos contados:", 0, min = 1, max = 999999999999),
radioButtons("quadrante", "Quadrante:",
c("A" = "A",
"a" = "a",
"b" = "b",
"c" = "c",
"c'" = "c'")),
numericInput("volume", "Volume final desejado (mL):", 0, min = 0, max = 999999999999999999)),
column(width = 6,
radioButtons("conc", "Concentração desejada:",
c("10²" = 100,
"10³" = 1000,
"10⁴" = 10000,
"10⁵" = 100000,
"10⁶" = 1000000,
"10⁷" = 10000000,
"10⁸" = 100000000,
"10⁹ "= 1000000000,
"10¹⁰"= 10000000000)),
verbatimTextOutput("resultado")
)
),
style = "text-align: center;"
)
)
# Define server logic (**sem alterações**)
server <- function(input, output, session) {
output$resultado <- renderText({
resultado <- inoculo(input$numero, input$quadrante, as.numeric(input$conc), input$volume)
paste("Esporos por mL:", format(resultado$esporo_mL, scientific = TRUE), "\n",
"Volume para Inóculo:", resultado$volume_inoculo, "\n",
"Volume de Veículo:", resultado$volume_veiculo)
})
}
# Run the application
shinyApp(ui = ui, server = server)
Referência: Alfenas A., Mafia R. Métodos em Fitopatologia. 2ª edição. Editora UFV. 2016.