Вычислительная наука

Вопросы и ответы для ученых, использующих компьютеры для решения научных задач

4
Когда я должен использовать шаблоны выражений C ++ в вычислительной науке, а когда я * не * должен их использовать?
Предположим, что я работаю над научным кодом на C ++. В недавнем обсуждении с коллегой было высказано мнение, что шаблоны выражений могут быть очень плохой вещью, потенциально делая программное обеспечение компилируемым только на определенных версиях gcc. Предположительно, эта проблема затронула несколько научных кодов, о чем упоминалось в подзаголовках этой пародии …

5
Каковы основные различия между PETSc и Trilinos?
Насколько я могу судить, две большие универсальные программные платформы Министерства вычислительной науки США - PETSc и Trilinos . На первый взгляд они кажутся похожими, за исключением различий в языке (C против C ++). Каковы основные различия между двумя структурами и какие факторы должны влиять на выбор одного из других? (Игнорировать …

8
Какое программное обеспечение хорошо использовать для параллельной отладки?
Я сейчас не запускаю никакой параллельный код, но я ожидаю, что в будущем буду выполнять параллельный код, используя гибрид OpenMP и MPI. Отладчики были для меня бесценным инструментом при запуске серийных проектов. Кто-нибудь может порекомендовать параллельный отладчик (или несколько отладчиков) использовать для отладки параллельного программного обеспечения? Свободное программное обеспечение предпочтительнее, …

4
Как надежно добавить большие экспоненциальные термины без ошибок переполнения?
Очень распространенная проблема в цепочке Маркова Монте-Карло включает вычисление вероятностей, которые являются суммой больших экспоненциальных членов, еa1+ еa2+ . , ,еa1+еa2+,,, e^{a_1} + e^{a_2} + ... aaaК: = макся( ая)Кзнак равноМаксимумя(aя)K := \max_{i}(a_{i}) е ' ≡ е в 1 + Ē в 2 + . , ,a'= К+ Л о …

5
Почему равноотстоящие точки ведут себя плохо?
Описание эксперимента: При интерполяции Лагранжа точное уравнение выбирается в точках (порядок полиномов ) и интерполируется в 101 точке. Здесь изменяется от 2 до 64. Каждый раз , когда готовятся графики ошибок , и . Видно , что, когда функция дискретизируются на равноразнесенные точках, ошибка изначально падает (это происходит до меньше …

3
В чем заключается принцип сходимости подпространственных методов Крылова для решения линейных систем уравнений?
Насколько я понимаю, существует две основные категории итерационных методов решения линейных систем уравнений: Стационарные методы (Якоби, Гаусс-Зайдель, СОР, Мультисетка) Методы подпространства Крылова (Conjugate Gradient, GMRES и др.) Я понимаю, что большинство стационарных методов работают путем итеративного ослабления (сглаживания) мод Фурье ошибки. Насколько я понимаю, метод сопряженных градиентов (метод подпространств Крылова) …

5
Какой материал я должен включить в журнальную статью (или опубликовать в Интернете), чтобы сделать мои вычислительные исследования воспроизводимыми?
Воспроизводимость становится все более важной в научных исследованиях в области вычислительной техники. (Например, см. Эту статью Роджера Пенга в журнале « Наука» ; мне известны и другие подобные статьи и веб-сайты.) Однако мне не ясно, сколько информации я должен включить в журнальную статью (или онлайн), чтобы сделать мои компьютерные исследования …

4
Когда метод высокого порядка полезен для компьютерного моделирования динамики жидкости?
Многие численные подходы к CFD могут быть расширены до произвольно высокого порядка (например, разрывные методы Галеркина, методы WENO, спектральное дифференцирование и т. Д.). Как мне выбрать подходящий порядок точности для данной проблемы?

1
Есть ли числовой алгоритм для нахождения асимптотического наклона?
У меня есть ряд точек данных которые, как я ожидаю, (приблизительно) будут следовать функции которая асимптотически пересекается с линией при большом . По существу, приближается к нулю при , и то же самое, вероятно, можно сказать обо всех производных , и т. д. Но я не знаю, что такое функциональная …
23 algorithms 


5
Когда создание кластера в облаке дешевле, чем создание кластера в моей лаборатории для моделирования MD?
Amazon EC2 Compute Cluster стоит около $ 800- $ 1000 ( в зависимости от рабочего цикла) на физическое ядро процессора в течение 3 -х лет. В нашем последнем раунде приобретения оборудования моя лаборатория взяла на вооружение оборудование на 48 ядер, очень похожее на кластеры Amazon, по цене около $ 300 …

12
Можно ли использовать Octave для изучения программирования на MATLAB?
Этот вопрос был перенесен из Cross Validated, потому что на него можно получить ответ на бирже вычислительных стеков. Мигрировал 7 лет назад . Я хочу изучать программирование на MATLAB, чтобы я мог проводить некоторые исследования / анализ самостоятельно, а также, чтобы я мог изучать / модифицировать некоторые скрипты MATLAB, которые …

10
Какой алгоритм является более точным для вычисления суммы отсортированного массива чисел?
Дана возрастающая конечная последовательность положительных чисел . Какой из следующих двух алгоритмов лучше для вычисления суммы чисел?Z1, z2, . , , , , ZNz1,z2,.....znz_{1} ,z_{2},.....z_{n} s=0; for \ i=1:n s=s + z_{i} ; end Или: s=0; for \ i=1:n s=s + z_{n-i+1} ; end По моему мнению, было бы лучше …

2
Хорошая конечная разница для уравнения непрерывности
Что было бы хорошей конечной разностной дискретизацией для следующего уравнения: ∂ρ∂t+∇⋅(ρu)=0∂ρ∂t+∇⋅(ρu)=0\frac{\partial \rho}{\partial t} + \nabla \cdot \left(\rho u\right)=0 ? Мы можем взять 1D случай: ∂ρ∂t+ddx(ρu)=0∂ρ∂t+ddx(ρu)=0\frac{\partial \rho}{\partial t} + \frac{d}{dx}\left(\rho u\right)=0 По какой-то причине все схемы, которые я могу найти, предназначены для формулировки в лагранжевых координатах. Я придумал эту схему на …

5
Какой язык я должен использовать при обучении студентов по компьютерному программированию?
Собираюсь преподавать студентам бакалавриата курс под названием «Введение в компьютерное программирование». Я немного смущен. В вычислительной физике ученые используют C / C ++ или Python или Fortran, CUDA и т. Д. ..... пришло время создать свою базу. Что я должен использовать? Я знаю, что вы можете выучить новый язык программирования …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.