2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 универсальная платформа для исследований конечных элементов
Сообщение28.05.2011, 21:37 


20/05/11
4
Добрый вечер!
Хочу обсудить такую идею:
По учебе мне много приходилось писать программы МКЭ: линейный, нелинейный анализ, большие перемещения, гиперупругость, смешанные КЭ. Накопились некие представлении и средства для реализации программы МКЭ с помощью объектно-ориентированного подхода на языке C++.
Во мне загорелась идея о создании некой платформы (скелета программы), которая могла бы легко расширяться для внедрения новых элементов, новых решателей, визуализаторов и т.д. Конечной целью которого бы являлось быстрота внедрения и исследований новых конечных элементов и конечно-элементных процедур. В первую очередь такая программа была бы полезна для исследователей в области МКЭ. Кто-то может возразить, что мол в Ansys или Abaqus есть все элементы, какие надо. Отчасти это так, там есть все элементы, которые хорошо зарекомендовали себя для реальных ответственных расчетов. Я же говорю про исследования - существует очень много научных статей, где описываются новые подходы, новые схемы КЭ. И предлагаемая мной платформа помогла бы быстро реализовывать эти "самородки" и исследовать их на эффективность. Конечно, для этого сам исследователь, который захочет внедрить новый КЭ, должен иметь навыки программирования на том языке, на котором будет написана платформа. Но основным преимуществом должно стать время программирования нового элемента - ученый-исследователь будет заниматься только программированием логикой элемента, а такие тривиальные задачи, как сборка глобальной матрицы жесткости, решатель СЛАУ и т.д. будут уже "вшиты" в новый элемент. В частности, это может достигаться с использованием объектно-ориентированного подхода. Новый класс элемента наследует базовый и, вуаля, новый конечный элемент в действии.

Что вы думаете по этому поводу? Если у Вас есть ссылки на похожий материал - делитесь!
Спасибо.

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение28.05.2011, 23:55 
Заслуженный участник


19/07/08
1266
И чем оно будет лучше например http://www.dealii.org/ ?

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение29.05.2011, 09:43 


20/05/11
4
nestoklon, спасибо за ссылку! Действительно, очень сильный проект! По количеству примеров и документации обойдет многие коммерческие проекты в этой области.
Библиотека deal.II направлена на решение любой задачи, которая может быть описана уравнениями в частных производных (PDE), заранее определенными КЭ. В частности, программа оперирует только 4-х угольными плоскими элементами и 8 угольными объемными "кубиками". В FAQ написано, что программирование КЭ другой формы (например оболочечный элемент для расчета оболочек или треугольный элемент плоской задачи) приведет к переписыванию многих блоков библиотеки. Также способ адаптации сетки методом разбиения подобластей, как делает эта библиотека, приводит к тому, что соседние узлы могут не иметь общих узлов. Это приводит к нарушению совместности деформации.
Я же веду речь об проблемно-ориентированной библиотеке, направленной на решения задач деформации сплошной среды. Для таких конструкционных элементов, как балки, пластины, оболочки, плоская задача, 3-х мерная задача ТУ.
Например, есть научные работы об использовании КЭ в форме правильных многоугольников! В такой платформе этот элемент можно было "опробовать" без долгого программирования.

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение29.05.2011, 11:20 
Заслуженный участник


19/07/08
1266
О. А может тогда вы отрецензируете ещё некоторое количество проектов? Я недавно искал что на эту тему есть -- ещё несколько проектов показались довольно сильными. Вдруг окажется что вам лучше попытаться поучаствовать в написании чего-то уже работающего, а не начинать всё с нуля. В принципе, любую новую деятельность стоит начинать с понимания того, что в этой области уже сделано. Если у вас такое понимание есть, поделитесь.
Итак, что вы думаете о (я постарался перечислить в порядке убывания привлекательности, естественно только некоммерческие):
1. http://www.oofem.org/en/oofem.html
2. http://www.dune-project.org/
3. http://www.freefem.org/ff++/
4. http://download.gna.org/getfem/html/homepage/
5. http://www.ofeli.net/index.html
6. http://oomph-lib.maths.man.ac.uk/doc/html/index.html
7. http://www.fenicsproject.org/about/about.html
8. http://libmesh.sourceforge.net/index.php

Возможно, монстры 1-4 вам наоборот покажутся менее привлекательными. Начиная с 5 идут маленькие и новые библиотеки.

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение30.05.2011, 13:04 


26/11/06
76
Писать собственную платформу с "нуля" дело не благодарное. Люди 10 - тилетиями пишут. Поэтому нужно воспользоваться тем что есть в открытом доступе.
По-моему лучшее что сейчас есть из OpenSource это:
Salome - профессиональная платформа для численного моделирования, c возможностью встраивания своих расчетных модулей. Написана на чистом ООП, все очень красиво разнесено по модулям. Есть хорошая документация.
Включает, все что нужно для встраивания своего CAE:
- препроцессинг (создание геометрии,мэшинг,визуализация модели, импорт/экспорт в различные форматы IGES,STEP и др.)
- постпроцессинг (визуализация результатов расчетов).
- плагинная архитектура с возможностью написания своих модулей.
Также есть проект Code Aster - МКЭ решатель. Разработан и сертифицирован специально для французской энергетической отрасли (в т.ч. расчет строительных конструкций, оснований и т.д.). Легко встраивается в Salome (проект Salome Meca).
Еще один неплохой МКЭ решатель calculix.
Я планирую писать свой CAE-модуль под Salome. Если заинтересует пишите в ПМ.

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение31.05.2011, 13:53 


20/05/11
4
nestoklon, спасибо за ссылки. Особо времени нет расписывать рецензии про проекты. В кратце так:
OOFEM - Долгий проект одного человека, которого поддерживают другие участники. ООП подход к задачам МСС. Хорошо расширяемая база элементов, материалов и остального. Похоже, что этот проект олицетворяет те идеи, которые я изложил для обсуждения здесь.

DUNE - Проект математиков – модульная среда для решения дифуров в частных производных (PDEs) методом конечных элементов, конечных объемов и конечных разностей. Тут нет специальных инструментов для решения задач механики сплошной среды (МСС).

OOMPH-lib - Очень интересный подход к написанию универсальных процедур МКЭ, который можно адаптировать для разных областей и для разных КЭ. Из-за универсальности получилось «низкоуровневая» библиотека. Но есть примеры реализации для разных задач математики, механики и т.д. Нет пост-процессора и графического вывода. Код с отличными комментариями. Комплируется под gnu C++


Мне приглянулся OOMPH-lib - хорошая концепция в основе, можно реализовать любой КЭ на этой платформе, отличная документация. Смущает только большой размер исходников. Но буду разбираться, интересно потыкать этот проект палочкой))

-- Вт май 31, 2011 14:55:42 --

vitaly333, вы говорите про CAE среды. Это уже полновесные программы для расчетчиков. Я же описываю тут проект более низкого масштаба и для других целей - исследований разных процедур метода конечных элементов.
Вообще, такие проекты, на которые вы дали ссылки, потрясают своей функциональностью и удобством, не смотря на то что это не коммерческий и open source проекты.

-- Вт май 31, 2011 14:57:56 --

Что касаемо моей идеи из первого поста: сейчас я составляю диаграммы классов и общую концепцию того, как это должно работать. Как сделаю - выставлю на общий суд. Ведь здесь есть специалисты ООП и МКЭ для обсуждения?)
Сам себя не считаю таковым, поэтому буду рад любым замечаниям и предложениям.

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение30.06.2011, 14:50 


30/06/11
11
очень интересная тема в виду того, что только недавно в голову приходили мысли по поводу программирования МКЭ. Собственно говоря я использовал maple и все проблемы счёта, построения графиков решал его силами. Но из-за того, что не хочется зависеть от "чужих" инструментов, в которые я не могу заглянуть, да и для более серьёзных расчётов с большим числом неизвестных нужен индивидуальный подход, я задался идеей перейти на си++.Честно сказать с языком не сталкивался ранее, но надеюсь разобраться. Идея действительно хорошая,ведь уйму времени тратится на то, чтобы разбить тело на эл-ты,пронумеровать,построить графики,решить систему и т.д..
П.С. Почти все наши проектные организации работают в Лире или в Скаде,поэтому создать полновесное приложение,в альтернативу им было бы не плохо,хотя здесь нужен целый штат людей)

 Профиль  
                  
 
 Re: универсальная платформа для исследований конечных элементов
Сообщение09.01.2012, 22:26 


09/01/12
1
Доброго времени суток!
А нельзя ли сделать конечно-элементную среду наподобие Матлаба или похожих систем? Чтобы можно было, во-первых, читать документацию по типам конечных элементов (что может каждый из типов КЭ), во-вторых, собирать вручную схемы из элементов (просто вызывая команды как в Матлабе) и получать результаты оперативно и наглядно?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

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



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

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


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

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