Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Метод Монте-Карло






     

    using System;

    namespace Lab5_4_MonteCarlo

    {

    class Program

    {

    static void Main()

    {

    double a=1, b=2, s=0, x, integral;

    int i, n;

    string k;

    Console.Write(" Введите число случайных испытаний");

    k = Console.ReadLine();

    Random rand = new Random();

    int.TryParse(k, out n);

    for (i = 1; i < = n; i++)

    {

    double randomNumber = rand.NextDouble();

    x = a + (b - a) *randomNumber;

    s = s + (0.5 + x * Math.Log(x));

    }

    integral = s * (b - a) / n;

    Console.Write(" Интеграл = {0}", integral);

    Console.ReadLine();

    }

    }

    }

     

    Лабораторная № 6

    Численное решение обыкновенного

    Дифференциального уравнения первого порядка

    Задание. Решить задачу Коши для дифференциального y=f(x, y) на отрезке [a; b] при заданном начальном условии шаге интегрирования h.

    Задание 1.1. Методом Эйлера с применением «ручных» вычислений с шагом 2h, а также с помощью программы для компьютера с шагом h. Свести результаты вычисления в одну таблицу и сопоставить точность полученных значений функций. Пользуясь таблицей, сделать ручную прикидку графика интегральной кривой.

    Таблица ручных вычислений с шагом h=0, 4

    a b Y0 n h
    2, 6 4, 6 1, 8   0, 4
             
    i Xi Yi комментарий  
      2, 6 1, 8 ...  
        0, 3451 ...  
      3, 4 2, 9514 ...  
      3, 8 -4, 4356 ...  
      4, 2 -24, 6610 ...  
      4, 6 -750, 7561 Стоп  

     

    Ниже приведен результат выполнения программы для компьютера с шагом h = 0, 2

     

    using System;

    namespace Lab6_1

    {

    class Program

    {

    static void Main()

    {

    double x=2.6, y=1.8, h=0.4, b=4.6;

    int i = 0;

    do

    {

    Console.WriteLine(" {0}\t{1}\t{2: #.####}", i, x, y);

    i++;

    x += h;

    y=y+h*(Math.Sqrt(4*x*x+1)-3*y*y);

     

    } while (x < = b + h / 2);

    Console.ReadLine();

    }

    }

    }

     

     

     

    Полученные результаты сведены в одну таблицу

     

     

    Xi Yi(h=0, 2) Yi(h=0, 4)
    2, 6 1, 8 1, 8
    2, 8 0, 9937  
      1, 6178 0, 3451
    3, 2 1, 3430  
    3, 4 1, 6355 2, 9514
    3, 6 1, 4845  
    3, 8 1, 6954 -4, 4356
      1, 5832  
    4, 2 1, 7711 -24, 6610
    4, 4 1, 6603  
    4, 6 1, 8572 -750, 7561

     

     

     






    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.