2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Ищу специалиста по методу конечных элементов!
Сообщение31.08.2005, 13:58 


31/08/05
1
Ищу человека, который мог бы помочь мне с написанием программы, использующей метод конечных элементов. Мой email: tatjana-kos@yandex.ru

 Профиль  
                  
 
 
Сообщение07.09.2005, 14:29 


05/09/05
1
Вот я, например, пишу программы по МКЭ (на фортране; в том числе для параллельных машин).
Что конкретно требуется? Но я не в Москве.

 Профиль  
                  
 
 
Сообщение08.09.2005, 14:58 


03/08/05
16
Пермь
Я сейчас занимаюсь примерно тем же, давай разбираться вместе. Правда, я еще только начал, но не намерен останавливаться на достигнутом. :) Если есть конкретные вопросы, пиши сюда или мыло. Кстати, на чем ты пишешь, для какой платформы?

 Профиль  
                  
 
 
Сообщение13.09.2005, 21:09 


13/09/05
153
Москва
В МКЭ ничего сложного нет. Главное литературу грамотную найти и пару библиотек для пре- и постпроцессинга.
На мой взгляд, самая интересная книга на русском - Сильвестер и Феррари "МКЭ для радиоинженеров и инженеров-электриков" (но она по расчету электромагнитных полей, я просто ими и занимался) и, конечно, Зинкевич.

Самая новая и достаточно полная - Это Зинкевич 5-е издание, на английском (Zienkiewicz O.C., Taylor R.L. Vol. 1. The finite element method. The basis). Там есть практически все, начиная от элементов и заканчивая восстановлением градиентов решения. Книга есть на этом сайте (http://lib.mexmat.ru/books/668).

Генераторы сеток - Handbook of Grig Generation, есть в инете в электронном виде, весит 107MB. Есть неплохие подборки статей и ссылок на литературу по генерации сеток (http://www-users.informatik.rwth-aachen.de/~roberts/meshgeneration.html, http://www.andrew.cmu.edu/user/sowen/mesh.html).
По триангуляции Делоне достаточно полно есть на русском - Скворцов А.В. ("Триангуляция Делоне и ее применение", а также в других статьях этого автора).
Также есть в свободном доступе готовый генератор сетки Geompack++, но он идет без исходников, готовой отдельной программой. Все сводится к тому, что нужно из геометрии задачи в своей программе создать исходный файл для Geompack++, запустить его, а потом прочитать файл сетки, созданной Geompack++. В нем есть Делоне и Advancing Front, не доконцца доработаные и немного корявые, но на первое время для отладки расчетного ядра сгодится:)).

Хранение матриц и решатели СЛАУ - есть разнообразные библиотеки, я бы посоветовал MTL и ITL. На мой взгляд, для решения СЛАУ наиболее применим метод сопряженных градиентов (CG) с предобуславливанием неполным разложением Холесского (Incomplete Cholessky Preconditioned Conjaguate Gradient, ICPCG), который используется в комерческих программах.

Для ускорения процесса решения СЛАУ и распараллеливания можно применить метод геометрической декомпозиции (Domain Decomposition). Тут только самая проблема как грамотно разбить матрицу на оптимальное количество частей. Наиболее шустрые алгоритмы разбинения - многоуровневые (Multilevel), есть хороший сайт одного из авторов алгоритмов - Karypis'a - с подборкой его статей, там же есть в свободном доступе его набор программ для разбинения METIS с исходными кодами.

Построение графиков - здесь лучше заглянуть на CodeProject, там есть есть хорошая подборка графопостроителей 2D-3D, на основе чего можно и свое написать.

Задание геометрии - также есть библиотеки, один Open CASCADE чего стоит. Но самое простое, на мой взгляд, это просто написать (или найти готовые) библиотеки чтения DXF-файлов (есть описание форматов файлов на сайте Autodesk) или фалов CATIA, и доделать их для себя.

 Профиль  
                  
 
 
Сообщение02.10.2005, 15:52 


02/10/05
2
Зинкевич 5-е издание...
Ух-ты! Спасибо за книжку. Стоит она конкретно.

Для генерации узлов сетки можно использовать Triangle (исходники открыты http://www.cs.cmu.edu/~quake/triangle.html).
Для визуального построения - компонент sgaph для Delphi5 или OpenGL

 Профиль  
                  
 
 FEM
Сообщение09.10.2005, 22:30 
And you may use Femlab. It can do all you write about.

  
                  
 
 
Сообщение10.10.2005, 20:21 
Уважаемый VLarin, не могли бы Вы более подробнее объяснить сопряжение расчетного алгоритма с указанными сеточными генераторами. Nicola_Petrov"собака"yandex"точка"ru (Защита от спамеров)

---
Странная защита, раз Вы в нике пишете мейл неискаженным. Исправляю. (dm)

  
                  
 
 
Сообщение12.10.2005, 14:14 


13/09/05
153
Москва
Смотря, что именно.
Если сопряжения сеточных генераторов в целом к расчетному ядру, то это одно. Если сопряжение с GeomPack++ - то тут все просто. В мануале к нему изложен формат его входных и выходных файлов. Входные - геометрия (точки, линии и арки, их соединение в циклы (loop)), тип сетки, параметры сетки. Геометрия должна быть задана в виде набора loop'ов, огранивающих подобласти задачи, линии и арки в каждом цикле должны идти друг за другом в порядке против часовой (в мануале все описано).
Выходные - узлы и элементы.
В своей программе создаем входной файл, запускаем отдельным процессом файл программы, ждем когда сетка сгенерится, считываем файл сетки, затем убиваем промежуточные файлы.

 Профиль  
                  
 
 
Сообщение15.10.2005, 19:35 
Понятно. Скажите, пожалуйста, а Вы не пробовали для этих целей к примеру ICEM CFD - коммерческий пакет?
Мне интересно сопряжение сеточного генератора к расчетному ядру. А вообще можно во что-нибудь конвертить выходные файлы Geompack+?
P.S. Я неправильно указал почту первый раз Nicola-Petrov[a]yandex[точка]ru

  
                  
 
 
Сообщение17.10.2005, 14:06 


13/09/05
153
Москва
Geompack++ - это примитивный генератор 2D и 3D, и на мой взгляд его можно использовать только для отладки своей программы. А для Ansys'a - там своих заточенных под него генераторов вроде как хватает.
А так - выходные файлы Geompack++ можно прочитать и потом конвертнуть во что-нибудь (написать простой конвертер ручками), но как я уже говорил - сетку он строит примитивную и для серьезных вещей его лучше не использовать.

 Профиль  
                  
 
 
Сообщение19.10.2005, 18:16 
Кто знает в какой программе лучше подготавливать геометрию для 3D моделей, написать самому 3D редактор на мой взгляд довольно трудно?

  
                  
 
 любой CAD
Сообщение12.12.2005, 18:43 
Заморожен


09/10/05
19
Воронеж
Anonymous писал(а):
Кто знает в какой программе лучше подготавливать геометрию для 3D моделей, написать самому 3D редактор на мой взгляд довольно трудно?


ДАРАГОЙ!!!

Возьми ты любой CAD (Solid Works/Edge, UG, Pro/E) и сваргань что надо.

Иван ФМФ.

 Профиль  
                  
 
 
Сообщение14.12.2005, 23:46 


14/12/05
7
Новосибирск
А кто-нить занимался решением конвективно-диффузионных задач(лучше, с конвективным преобладанием) методом КЭ?
если да, то интересует:
1) как формировать матрицу масс, при условии, что сомножитель неизвестного вектора не константа, а переменное.
2) как аппроксимировать конвективные члены.

Если матрица масс была получена методом конечных объемов, разностей или разностей/элементов(МКО, МКР, МКР/Э), напишите, тожа будет полезно.

 Профиль  
                  
 
 
Сообщение15.12.2005, 12:42 


13/09/05
153
Москва
Если я не путаю, то это обычная задача с нелинейными средами и нелинейными источниками. И решаются они обычно в несколько итераций - сначала грубым приближением, затем несколько итераций точным.

 Профиль  
                  
 
 
Сообщение01.02.2006, 17:40 


01/02/06
1
2udaw
Для таких задач можно использовать расщепление по физическим процессам:
Пусть есть задача вида
\partial U/ \partial t} =k \Delta U + D \vec{v}\nabla U \\
U(0)=U_0

Сначала решаете для t от нуля до tau задачу
\partial V / \partial t = k \Delta V\\
V(0)=U_0
а потом
\partial U / \partial t = D \vec{v}\nabla U\\
U(0)=V(tau) (!!!)
Это задачи в дифференциальной постановке. Аппроксимируйте каждую как удобно -
шаги по времени можно выбрать разные.

Что касается формирования матрицы СЛАУ в случае переменных коэффициентов - коэффициенты можно аппроксимовать линейно, представить как комбинацию L_k. Для вычисления слагаемых вида (L_k,L_k) используйте КФ Гаусса - они есть в любом Зенкевиче. Но нужно внимательно следить за принципом максимума - может нарушаться. Возможно, проще взять их константами на каждом элементе.

А какие конкретно проблемы с конвективными членами?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 28 ]  На страницу 1, 2  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group