Поиск:

Ответ в темуСоздание новой темы Создание опроса
> МКЭ, метод конечных элементов 
:(
    Опции темы
Фантом
Дата 22.11.2012, 12:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(wowka19 @  22.11.2012,  05:08 Найти цитируемый пост)
функция: u' + u = x/(x+1)^2,  u(0) = 1
найти значения u на отрезке 0 < x < 1

как при помощи МКЭ ее решить?


1) Разбиваем отрезок на много кусочков. Для простоты - равных. 
2) Считаем, что искомая функция с хорошей точностью описывается на каждом кусочке отрезком.
3) Для кусочка от x_k до x_{k+1} записываем разностную аппроксимацию уравнения. Например, в таком виде:

  (u_{k+1}-u_k)/(x_{k+1}-x{k}) + u_k = x_k/(x_k+1)^2

4) Если кусочки равные и их N, то x{k}=k/N. Тогда аппроксимация переписывается в виде:

  (u_{k+1}-u_k)*N + u_k = k/N/(k/Nx+1)^2

5) Записав такие уравнения для всех k от 0 до N-1, получаем систему N линейных уравнений относительно N+1 неизвестных u_k. Чтобы ее решить, нужно еще одно уравнение, это u_0=1 (из начального условия). 

6) Получившуюся линейную систему решаем каким-нибудь методом (можно банальным Гауссом, но проще чем-нибудь итерационным, поскольку у матрицы системы явно будет диагональное преобладание).

Все. При желании можно считать, что на каждом отрезке решение представляется не линейной функцией, а какой-то более сложной. Если задача не одномерная, то появится еще один вопрос - выбор вида элементов (в одномерном случае это только отрезки, но уже в двумерном могут быть квадратики, треугольнички и т.д.).


PM   Вверх
wowka19
Дата 23.11.2012, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Фантом, кажись это МКР, а не МКЭ.
PM MAIL   Вверх
Pavia
Дата 23.11.2012, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(wowka19 @  23.11.2012,  11:19 Найти цитируемый пост)
Фантом, кажись это МКР, а не МКЭ.

Когда кажется креститься надо. Вы ошибетесь.  
PM MAIL   Вверх
wowka19
Дата 23.11.2012, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Фантом, мне не совсем понятны ваши обозначения:

как я понял
u_{x+1} - это u(k+1) - значение искомой функции в правом узле k-го элемента
u_k         - это u(k)

а что такое - x_{k+1}, x_{k} и x_k ?

ладно предположу, что x_{k} и x_k - это одно и то же:

но ведь (u_{k+1}-u_k)/(x_{k+1}-x{k}) + u_k = x_k/(x_k+1)^2 - это разностное уравнение, при помощи которого мы рекурсивно (с определенным шагом, отталкиваясь от начального условия u(0)=1) вычисляем значения ф-ции u до необходимого нам u(X).

то есть применяем МКР, разве нет?

Pavia не надо острить, так вы не поможете.


Это сообщение отредактировал(а) wowka19 - 23.11.2012, 13:27
PM MAIL   Вверх
Фантом
Дата 23.11.2012, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(wowka19 @  23.11.2012,  12:19 Найти цитируемый пост)
Фантом, кажись это МКР, а не МКЭ. 


Цитата(Pavia @  23.11.2012,  12:34 Найти цитируемый пост)

Когда кажется креститься надо. Вы ошибетесь.


Ну, справедливости ради надо сказать, что в данном случае разница между ними невелика.  smile 

Цитата(wowka19 @  23.11.2012,  14:04 Найти цитируемый пост)
как я понял
u_{x+1} - это u(k+1) - значение искомой функции в правом узле k-го элемента


Нет, k+1-ого (нумерация элементов начинается с единицы). 

Цитата(wowka19 @  23.11.2012,  14:04 Найти цитируемый пост)
u_k         - это u(k)


Да. 


Цитата(wowka19 @  23.11.2012,  14:04 Найти цитируемый пост)
а что такое - x_{k+1}, x_{k} и x_k ?

ладно предположу, что x_{k} и x_k - это одно и то же:

Значения аргумента на соответствующих границах элементов. x_{k} и x_k действительно одно и то же.

Цитата(wowka19 @  23.11.2012,  14:04 Найти цитируемый пост)
но ведь (u_{k+1}-u_k)/(x_{k+1}-x{k}) + u_k = x_k/(x_k+1)^2 - это разностное уравнение, при помощи которого мы рекурсивно (с определенным шагом, отталкиваясь от начального условия u(0)=1) вычисляем значения ф-ции u до необходимого нам u(X).

то есть применяем МКР, разве нет?

Как я уже писал выше, разница между этими методами в одномерном случае достаточно условна. Фактически она определяется способом решения системы линейных алгебраических уравнений. Если Вы решаете его методом прогонки (так, как предлагаете выше) - это больше похоже на МКР. Если система решается каким-либо нерекуррентным методом (Гаусс, Зейдель и т.п.) - МКЭ.

Разница между методами была бы более заметной, если бы Вы в качестве примера взяли нелинейное уравнение и/или двумерный случай и/или краевую задачу вместо задачи Коши. Правда, боюсь, в этом случае мне было бы лень расписывать решение, особенно с учетом невозможности пользоваться TeX'овскими правилами записи формул.  smile

Добавлено через 4 минуты и 35 секунд
Да, кстати, еще одна добавка, которую можно было бы сделать для вящей наглядности - построить неравномерную сетку. Если предварительно получить каким-либо способом грубое решение задачи или просто оценить его вид из физических соображений (МКЭ все-таки практически всегда применяется для решения задач, возникших в прикладных областях), то можно сделать сетку более густой там, где решение быстрее меняется и/или в нем ожидаются какие-то интересные особенности (в обиходном смысле слова). Для многомерных задач это часто оказывается весьма полезной вещью.
PM   Вверх
W4FhLF
Дата 24.11.2012, 01:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

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



Цитата(Фантом @  23.11.2012,  16:32 Найти цитируемый пост)
Как я уже писал выше, разница между этими методами в одномерном случае достаточно условна. Фактически она определяется способом решения системы линейных алгебраических уравнений. Если Вы решаете его методом прогонки (так, как предлагаете выше) - это больше похоже на МКР. Если система решается каким-либо нерекуррентным методом (Гаусс, Зейдель и т.п.) - МКЭ.


А вы не путаете конечно-разностную аппроксимацию по времени с МКР который в данном контексте относится к аппроксимации пространственных дифференциальных операторов?


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Фантом
Дата 24.11.2012, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(W4FhLF @  24.11.2012,  02:36 Найти цитируемый пост)

А вы не путаете конечно-разностную аппроксимацию по времени с МКР который в данном контексте относится к аппроксимации пространственных дифференциальных операторов? 


Хм... по-видимому, мне так и не удалось понять, что Вы хотели сказать. И МКР, и МКЭ - вообще говоря, исходно чисто математические методы.
PM   Вверх
W4FhLF
Дата 24.11.2012, 02:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

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



Цитата(Фантом @  24.11.2012,  01:53 Найти цитируемый пост)
Хм... по-видимому, мне так и не удалось понять, что Вы хотели сказать.


Я не очень владею русской терминологией в этой области, поэтому могу тупить. Но мне непонятна была классификации МКР/МКЭ на основе метода решения. 

Дело в том, что в моём понимании МКР является частным случаем МКЭ. Если задана сетка, удовлетворяющая условиям регулярности (http://en.wikipedia.org/wiki/Regular_grid), соответствующие базисные функции и полином низшей степени показывают, что МКЭ вырождается в МКР.

При этом, опять же, если мы решаем PDE, где есть производная по времени (i.e. time-dependent problem), то мы, соответственно, можем использовать МКР или МКЭ для дискретизации пространства и конечные разности для дискретизации проихводных по времени. Как вы при этом находите решение на каждом временном шагу чисто технический момент. 

Это сообщение отредактировал(а) W4FhLF - 24.11.2012, 03:01


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Фантом
Дата 24.11.2012, 03:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(W4FhLF @  24.11.2012,  03:59 Найти цитируемый пост)
Но мне непонятна была классификации МКР/МКЭ на основе метода решения. 


Это ни в коем случае не классификация. Просто задача настолько проста, что от характерных черт метода остаются только жалкие огрызки.

Цитата(W4FhLF @  24.11.2012,  03:59 Найти цитируемый пост)

Дело в том, что в моём понимании МКР является частным случаем МКЭ.

Да, конечно.

Цитата(W4FhLF @  24.11.2012,  03:59 Найти цитируемый пост)

При этом, опять же, если мы решаем PDE, где есть производная по времени (i.e. time-dependent problem), то мы, соответственно, можем использовать МКР или МКЭ для дискретизации пространства и конечные разности для дискретизации проихводных по времени. Как вы при этом находите решение на каждом временном шагу чисто технический момент. 

Да, по-видимому, я понял правильно.  smile 

Если для части переменных ("времени") есть начальные условия, а для части ("координат") - краевые, то так и имеет смысл делать. Но в данном случае заказчик желал решать методом МКЭ одномерную задачу Коши, причем для линейного (хотя и неоднородного) уравнения. Понятно, что его решение с помощью МКЭ сродни почесыванию правой ногой левого уха, но формально эо сделать можно.  smile 
PM   Вверх
wowka19
Дата 24.12.2012, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Фантом, W4FhLF Ок!
Как я понял задача слишком проста для яркого и выразительного применения МКЭ.

Давайте попробуем на двумерном случае:

user posted image

Нужно найти значения функции u на области [0,1]x[0,1].
Значения функции u
при x=0 (граница C на рисунке) = -y^2
при x=1 (граница D на рисунке) = -y^2 - 1
при y=0 (граница A на рисунке) = -x^2
при y=1 (граница B на рисунке) = -x^2 - 1

Число отрезков разбиений по осям X и Y: N = 100
Точность решения: e = 0.001

Разбиение на равные равнобедренные прямоугольное треугольники. Как я понял их получится 2*N*N

Это сообщение отредактировал(а) wowka19 - 24.12.2012, 14:47
PM MAIL   Вверх
Фантом
Дата 24.12.2012, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(wowka19 @  24.12.2012,  15:44 Найти цитируемый пост)
Как я понял задача слишком проста для яркого и выразительного применения МКЭ.

Давайте попробуем на двумерном случае:


Попробуйте. А мы, если что, поправим.  smile 
PM   Вверх
wowka19
Дата 25.12.2012, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



если бы я знал, то не стал бы писать сюда

Можете привести свой пример со своими условиями - как вам удобней. Лишь бы он был как можно наглядней и выразительней.


Это сообщение отредактировал(а) wowka19 - 25.12.2012, 09:40
PM MAIL   Вверх
Фантом
Дата 25.12.2012, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(wowka19 @  25.12.2012,  10:30 Найти цитируемый пост)


Можете привести свой пример со своими условиями - как вам удобней. Лишь бы он был как можно наглядней и выразительней.

Хм... кому как, но мне несколько лень тратить на это занятие время (а потратить его придется, выписывание такой задачи с детальными объяснениями коротким не будет). Попробуйте все-таки что-то сделать сами.
PM   Вверх
wowka19
Дата 25.12.2012, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



(http://ru.wikipedia.org/wiki/Метод_конечных_элементов)
 - объясните что за функция v?

Цитата(Фантом @  25.12.2012,  11:20 Найти цитируемый пост)
Попробуйте все-таки что-то сделать сами.

так в этом и проблема - я знаю что требует задача (найти u/решить диффур) и что решением является массив точек-границ между эл-ми на которые мы разбили область, но как к ней (задаче) подступиться - понятия не имею.
Такие понятия (в приведенном мною 2мерном случае) как локальная матрица жесткости, глобальная матрица жесткости только сильнее запутывают, функция v из какого-то пространства H не понятно откуда и зачем.
Что из себя представляет базисная ф-я в двумерном случае...
Вопросов много, ответов - 0
PM MAIL   Вверх
Фантом
Дата 25.12.2012, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Цитата(wowka19 @  25.12.2012,  15:35 Найти цитируемый пост)
 - объясните что за функция v?

Кусочно-линейная функция, являющаяся приближением к искомому решению.

Цитата(wowka19 @  25.12.2012,  15:35 Найти цитируемый пост)
так в этом и проблема - я знаю что требует задача (найти u/решить диффур) и что решением является массив точек-границ между эл-ми на которые мы разбили область, но как к ней (задаче) подступиться - понятия не имею.
Такие понятия (в приведенном мною 2мерном случае) как локальная матрица жесткости, глобальная матрица жесткости только сильнее запутывают, функция v из какого-то пространства H не понятно откуда и зачем.

Насколько хорошо Вы знаете математику? Можно даже проще - какой ВУЗ и по какой специальности закончили (или на каком курсе учитесь)?
PM   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


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

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


 




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


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

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