Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Алгоритм Симпосна, маленькая прога этого алгоритма? 
:(
    Опции темы
Su_
Дата 20.2.2009, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Есть ли реализация данного алгоритма на java , гугл что то не помог.
нашел на C++

Код

#include <stdafx.h>
#include "simpsonq.h"

/*************************************************************************
Интегрирование методом Симпсона с оценкой точности.

Считается интеграл функции F на отрезке [a,b] с погрешностью
порядка Epsilon.
*************************************************************************/
double integralsimpson(const double& a,
     const double& b,
     const double& epsilon)
{
    double result;
    int i;
    int n;
    double h;
    double s;
    double s1;
    double s2;
    double s3;
    double x;

    s2 = 1;
    h = b-a;
    s = f(a)+f(b);
    do
    {
        s3 = s2;
        h = h/2;
        s1 = 0;
        x = a+h;
        do
        {
            s1 = s1+2*f(x);
            x = x+2*h;
        }
        while(x<b);
        s = s+s1;
        s2 = (s+s1)*h/3;
        x = fabs(s3-s2)/15;
    }
    while(x>epsilon);
    result = s2;
    return result;
}




?


h

Код


[/c#ifndef _simpsonq_h
#define _simpsonq_h

#include "ap.h"



/*************************************************************************
Интегрирование методом Симпсона с оценкой точности.

Считается интеграл функции F на отрезке [a,b] с погрешностью
порядка Epsilon.
*************************************************************************/
double integralsimpson(const double& a,
     const double& b,
     const double& epsilon);


#endif



Это сообщение отредактировал(а) Su_ - 20.2.2009, 21:20


--------------------
user posted image

PM MAIL WWW   Вверх
Soah
Дата 20.2.2009, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 18.2.2009

Репутация: нет
Всего: 54



Su_, а что не понятна в этом коде?

f(a) - double f(double value); // функция
fabs() - Math.abs()
double integralsimpson(const double& a, const double& b, const double& epsilon) - значения передаются по ссылке
можно и так     double integralsimpson(double a, double b, double epsilon)
PM MAIL   Вверх
Su_
Дата 20.2.2009, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Спасибо.просто никогда с функциями не работал ., 
double f(double value); - непонятно


т.е. 
еще один метод

double f(double value)
{
    
}

а что в скобках , return value
?

Это сообщение отредактировал(а) Su_ - 20.2.2009, 22:43


--------------------
user posted image

PM MAIL WWW   Вверх
Soah
Дата 20.2.2009, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 18.2.2009

Репутация: нет
Всего: 54



Цитата(Su_ @  20.2.2009,  21:20 Найти цитируемый пост)
Считается интеграл функции F

например
Код

double f(double value) {
    return (2*value*value + 3*value - 7); // 2x^2 + 3x - 7
}


Добавлено через 37 секунд
Цитата(Su_ @  20.2.2009,  22:37 Найти цитируемый пост)
double f(double value); - не работает..

это был прототип
PM MAIL   Вверх
Su_
Дата 20.2.2009, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



а применительно к Симсону что в c++ имеется в виду под 
f(a) f(b) , что они возвращают?:


return (2*value*value + 3*value - 7); 

понял, извиняюсь пока вопрос пишу ,ответ приходит)

Спасибо за оперативность)

Это сообщение отредактировал(а) Su_ - 20.2.2009, 22:57


--------------------
user posted image

PM MAIL WWW   Вверх
Soah
Дата 20.2.2009, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 18.2.2009

Репутация: нет
Всего: 54



Цитата(Su_ @  20.2.2009,  21:20 Найти цитируемый пост)
Считается интеграл функции F на отрезке [a,b]

Цитата(Su_ @  20.2.2009,  22:52 Найти цитируемый пост)
что в c++ имеется в виду под f(a) f(b)

тоже самое что и в java, значение функции в точках a и b

Цитата(Su_ @  20.2.2009,  22:37 Найти цитируемый пост)
а что в скобках

ваша функция
PM MAIL   Вверх
Su_
Дата 20.2.2009, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



Вообщем понятно ,  а откуда вы взяли
 return (2*value*value + 3*value - 7) ?

т.е остался вопрос что такой "Ваша Функция" в коде..)


--------------------
user posted image

PM MAIL WWW   Вверх
Soah
Дата 20.2.2009, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 18.2.2009

Репутация: нет
Всего: 54



Цитата(Su_ @  20.2.2009,  21:20 Найти цитируемый пост)
Интегрирование методом Симпсона с оценкой точности.
Считается интеграл функции F на отрезке [a,b] с погрешностьюпорядка Epsilon.

а  для чего вам этот алгоритм?

Цитата(Su_ @  20.2.2009,  23:05 Найти цитируемый пост)
а откуда вы взяли return (2*value*value + 3*value - 7) ?

я же написал что это пример
PM MAIL   Вверх
Su_
Дата 20.2.2009, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет





моделирую ситуацию в AnyLogic 
с помощью delay

есть процессор который обрабатывает  страницу за 1,5 +- 0,4 мин 

нужно обработать 3 страница , как я вычитал нада использовать закон Симспона.


--------------------
user posted image

PM MAIL WWW   Вверх
Soah
Дата 20.2.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 18.2.2009

Репутация: нет
Всего: 54



Цитата(Su_ @  20.2.2009,  23:16 Найти цитируемый пост)
закон Симспона

я не знаю, может у него есть несколько алгоритмов,
определитесь какой вам нужен потому что этот
Цитата(Soah @  20.2.2009,  23:09 Найти цитируемый пост)
Считается интеграл функции F

PM MAIL   Вверх
Su_
Дата 20.2.2009, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 386
Регистрация: 1.8.2007

Репутация: нет
Всего: нет



спасибо большое , будем копаться дальше)!


--------------------
user posted image

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1261 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.