LogoNEWS 

Cursos __Fórum

WhatsAppFacebookInstagramYoutubrgoogle mais
Twitter
TumblrPinterestBlogLinkedin

Plotando função Gauss no VB NET

Por Vitor Amadeu Souza - 13/04/2019

 

1. Introdução
A função de Gauss descreve uma curva como mostra a figura abaixo.

Esta curva varia em de acordo com os parâmetros da função de Gauss, que é descrita como apresentado abaixo:

            Onde:
                        a = Pico da curva
                        b = Centro do pico da curva
                        c = Largura da curva seno
                        e = Constante de Euler (aproximadamente 2,72)

 

2. Tela gráfica

Crie um novo projeto e deixe-o com a interface apresentada a seguir, alterando os names solicitados.

  
  

  
  
  

Obs: O componente fx é um listbox.

3. Programação
Clique duas vezes sobre o botão Calcular e escreva o trecho de código abaixo.

Dim va, vb, vc, vfx, i, f As Double
va = Double.Parse(a.Text)
vb = Double.Parse(b.Text)
vc = Double.Parse(c.Text)

i = vc / 2
f = vc + vc / 2
fx.Items.Clear()

For x = i To f Step 0.1
   vfx = va * Math.Pow(2.72, -Math.Pow(x - vb, 2) / (2 * vc * vc))
   fx.Items.Add(x.ToString("N2") + "-" + vfx.ToString("N4"))
Next

O bloco lê as caixas de texto para em seguida calcular a variável buscada, atualizando com o resultado apurado a listbox com os valores de x e fx. Acompanhe os exemplos e observe que o pico (a) somente é observado no ponto central (b).



4. Plotando o gráfico

 

 
 Crie um novo projeto e deixe-o com a interface apresentada a seguir, alterando os names solicitados.
     

 
 
   
 
 
 


O componente plot é do tipo Chart. Após inserí-lo, vá à propriedade Series e remova a opção padrão que aparecer.   
  

 

 

5. Programação
Clique duas vezes sobre o botão Plotar e escreva o trecho de código abaixo.

plot.ChartAreas.Clear()
plot.ChartAreas.Add("Default")
plot.ChartAreas("Default").AxisX.Title = "x"
plot.ChartAreas("Default").AxisY.Title = "f(x)"
plot.ChartAreas("Default").AxisX.MajorGrid.LineColor = Color.SkyBlue
plot.ChartAreas("Default").AxisY.MajorGrid.LineColor = Color.SkyBlue

plot.Series.Clear()
plot.Series.Add("plot1")
plot.Series("plot1").Color = Color.Red
plot.Series("plot1").ChartType=DataVisualization.Charting.SeriesChartType.Line

Dim va, vb, vc, x, y As Double
va = Double.Parse(a.Text)
vb = Double.Parse(b.Text)
vc = Double.Parse(c.Text)

For x = -10 To 10 Step 0.1
      y = va * Math.Pow(2.72, -Math.Pow(x - vb, 2) / (2 * vc * vc))
      plot.Series("plot1").Points.AddXY(x, y)
Next

O bloco lê as caixas de texto para em seguida plotar o gráfico de acordo com a função estudada. Acompanhe o exemplo.

 

Literatura recomendada:

Estudando e plotando uma Função de Gauss Programado em Visual Basic - Vitor Amadeu Souza

https://clubedeautores.com.br

 

Vitor Amadeu Souza
vitor@cerne-tec.com.br

Sou Mestre em Instrumentação Científica e Engenheiro da Computação, atuando na área de projetos eletrônicos há vários anos. Desenvolvo projetos de hardware e software voltados para a área industrial, médica, científica, comercial, dentre outras sob demanda. No momento trabalho na Cerne Tecnologia e Treinamento (www.cerne-tec.com.br), empresa voltada para desenvolvimento de projetos, comercialização de kits didáticos e educação tecnológica na área de microcontroladores, linguagens de programação, desenvolvimento de projetos e layout. Ao longo dos anos escrevi vasto acervo literário técnico e científico, estando o catálogo completo disponível no Clube de Autores e no Amazon.


 

 

teste

Atendimento On-Line: sac@cerne-tec.com.br
WhatsApp: (21) 98260-9360