Перейти к публикации

При решении SPH не хватает памяти!


Рекомендованные сообщения

Может конечно и извращение, но использую MSC.Patran/Nastran для решения задачи методом сглаженных частиц через решатель dyna (sol700). В маленьких задачах - расчет проходит на ура, но вот с количеством частиц порядка ~200,000 начинаются проблемы. В *.out файл пишется вот такая ошибка:

*** Error 70021 (OTH+21) (processor # 0)

Memory is set 64143 words short

memory size 20000000

Increase the memory size by one of the following

where #### is the number of words requested:

1) On the command line set - memory=####

2) In the input file define memory with *KEYWORD

i.e., *KEYWORD #### or *KEYWORD memory=####

В связи с этим появляется вопрос - как должна выглядеть команда для увеличения выделяемой памяти? Ну и собственно куда её вписать? :g:

Ссылка на сообщение
Поделиться на других сайтах


В Ls-Dyna это можно сделать, добавив в командный файл Дайны

строку, например, для 10000000 слов

*KEYWORD 10000000

или при запуске Дайны через командную строку

MEMORY=nwds (см синтаксис команд), однако это игнорируется, если память задается ключевым словом *KEYWORD в начале ввода.

Как это будет в sol700 - не знаю.

Ссылка на сообщение
Поделиться на других сайтах

Попробовал запустить nastran.exe через командную строку с параметром memory=20000000 но эффекта это не заимело, по прежнему в окне написано что памяти выделено по дефолту:

Изображение

(3-я строка снизу)

Наверное тут так не получится...

Изменено пользователем egoration
Ссылка на сообщение
Поделиться на других сайтах

Строкой *KEYWORD начинается исполняемый текстовый файл Ls-Dyna.

Обычно он имеет расширения *.dyn или *.k

Если можно вывести файл в таком формате, то можно задачу "скормить" родному решателю самой программы Ls-Dyna.

ЗЫ

А что в ХЕЛПЕ по этому поводу пишут (если пишут вообще...)

Ссылка на сообщение
Поделиться на других сайтах

Да вот проблема в том что входного файла *.k или *.dyn в явном виде не создается, nastran.exe съедает *.bdf файл, затем в рабочей директории создается куча вспомогательных, в том числе и файл вывода *.f06, там строка:

dytran-lsdyna will be executed using the command:

C:\MSC.Software\MSC_Nastran\20121\msc20121\dyna\win32/run_dytran jid=4.dytr.dat iam=nanle

*** ISHELL PROGRAM 'C:\MSC.Software\MSC_Nastran\20121\msc20121\dyna\win32\run_dytra' STARTED ***

т.е. запускается explicit решатель через выполнение *.bat, может конечно в нем самом можно параметры прописать, но там уж что-то мудрено как-то все. По хорошему при таком раскладе память должна бы задаваться через интерфейс препроцессора, но опять же - не нашел.

А в справке описан синтаксис параметра memory для запуска nastran.exe

Ссылка на сообщение
Поделиться на других сайтах

Посмотри, вот здесь, например,

<noindex>http://web.mscsoftware.com/support/prod_su...ion/rg_2005.pdf</noindex>

или здесь

<noindex>http://ru.scribd.com/doc/34716149/MD-Nastr...00-User-s-Guide</noindex>

В первом источнике есть пример

e:\sol700\dytran-lsdyna\run_dytran

exe=f:\latest_dytran-lsdyna\dytran-lsdyna.exe

nproc=4

memory=20m

steps=2

wdir=f:\temp

delete=yes

machine=pc01#2+pc02#2

=

т.е. memory без большого к-ва нулей

Ссылка на сообщение
Поделиться на других сайтах

Ценой бессонных ночей удалось все-таки увеличить память! Параметры запуска решателя действительно прописаны в run_dytran.bat, там и нужно изменить memory=40m или сколько вам потребуется. Cпасибо Victoria!

Ссылка на сообщение
Поделиться на других сайтах
  • 5 лет спустя...

 

Уважаемый Egoration!

Если не трудно помогите пожалуйста!

 

"Ценой бессонных ночей удалось все-таки увеличить память! Параметры запуска решателя действительно прописаны в run_dytran.bat, там и нужно изменить memory=40m или сколько вам потребуется. "

 

В каком месте этого bat файла memory=40m нужно вставить?

Заранее спасибо!

 
 
Ссылка на сообщение
Поделиться на других сайтах

@ANdrey_79CH, если речь идет о сообщении 6, то смотри сильно черные буковки

e:\sol700\dytran-lsdyna\run_dytran

exe=f:\latest_dytran-lsdyna\dytran-lsdyna.exe

nproc=4

memory=40m

steps=2

wdir=f:\temp

delete=yes

machine=pc01#2+pc02#2

=====

Если-же  нужно увеличить память в исполняемом файле Ls-Dyna, то следует

написать что-то типа *KEYWORD MEMORY=200M

Обычно это первая строка файлов    *.k или  *.dyn.

Можно еще в загрузчиках типа manager.exe или в ANSYS

====

Вообще, все уже расписано выше в этой теме

Изменено пользователем Victoria
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



  • Сообщения

    • maxx2000
      @mannul конечно меня интересует обработка без специальных стратегий. лопатка просто для примера.
    • Slavdos
      так - что вот давление есть и идите лесом все вышесказанное я им 3 года говорю, им ...(цензура)  
    • brigval
      Программа Браком при создании PDF автоматом проставляет текущую дату в поле "Разраб." и "Пров." основной надписи.
    • The_22nik
      Добрый день. Из всего выше перечисленного более менее проверка только с наименованием видов, используя макрос SetLabels_v2.5.0. Но опять же, в допусках базы не привязываются к фактическому их указанию на чертеже. Обозначение базы изменится, а в допуске останется прежним. Шероховатость лучше привязывать к поверхности, а не к размеру. Ну и зачем указывать к каждому размеру с допуском, если есть неуказанная.
    • ik_
      Здравствуйте! Довольно часто после нескольких проверок проекта перед сдачей в нем всем равно остаются глупые ошибки. Я думаю, можно было бы создать макрос, который мог бы проверять часто повторяющиеся ошибки, особенно которые трудно проверять человеку (много элементов для проверки). Он мог бы применяться следующим образом: выбирается папка с файлами, и после этого каждая деталь открывается и проверяется. В конце создается файл с перечислением чертежей и ошибок в них вида: "в детали АБВ10.10.011 скорей всего не стоят габаритные размеры" Тема создана, чтобы пофантазировать, какие ошибки можно было бы так проверять и каким способом это можно сделать. Я пока придумал пару проверок: 1. Самое простое. Проверить Наименование видов разрезов и баз, правильность порядка и нет ли неиспользуемых 2. Проверить все ли базы используются. При редактировании большого чертежа часто приходится поменять базы и соответственно обозначения допусков. Часто в таких случаях можно запутаться в базах, какую то базу оставить, без ссылающихся на нее допусков (ну у меня такое бывало) 3. Есть ли габаритные размеры. Тут возможно применять Bounding Box - узнавать габариты и узнавать есть ли такие размеры на чертеже. 4. Все ли нужные размеры стоят. Тут скорей всего реализовать очень сложно. В голову приходит только сравнивать количество размеров в модели и на чертеже (при этом не учитывать фаски там и все такое) 5. Проверять висячие размеры и элементы (желто-зеленые на чертеже) 6. На всех ли размерах с допуском стоит шероховатость   Делать пока ничего с этим не планирую, думаю стоит ли этим заниматься.
    • TVM
      Проблема в общей сборке. :( Дали ТЗ организаторам паралельной ветки. Очень долго репу чешут. Возможно нет ресурсов. Подозреваю будет все в ручном режиме.   Все "N" в стандартную BOM вывел (заголовок таблицы воспринимает свойсво головной сборки). Как теперь правильно все перемножить. P.S. Ветка в Все Вопросы о CAD.
    • Snake 60
      Тогда посмотрите вот этот макрос: https://snake-60.ru/blog/blog-list/84-onepage-blog/82-vba-makros-kombajn-po-chteniyu-i-paketnomu-zaneseniyu-svojstv-v-detali-i-sborki-solidworks Всегда можно доработать если есть четкое ТЗ.
    • pugach
    • Модернизация станков
    • Jesse
      по идее наоборот: когда тело контачит с жёстким телом, то его частота завышается.. Если свободно болтается, то частота ниже должна быть..)) Ну т.е. как обычно рассуждаем в МКЭ: больше суммарная жёсткость модели - больше частота    вот тут всё же кажется, что если мы посчитаем transient с нелинейностью а потом возьмём FFT с графика амплитуды, то это уже халтура будет)) Ну т.е. когда мы считаем модальник обычный, то это линейный идеализированный случай, когда мы пренебрегли всеми возможными нелинейностями. Иначе говоря, малая нелинейность которая присутствует всегда и везде сделает колебания лишь слегка ангармоничными (очень слабые отклонения от чистой синусоиды при измерении колебаний в точке)..  А в трензиенте с физической или другой существенной нелинейностью уже сам физический смысл частоты пропадёт имхо. Да и форму колебаний мы не можем знать в данном случае. Только лишь эту условную цифру - частоту..
×
×
  • Создать...