2012-10-27 2 views
0

Я студент-инженер, и у меня есть пара классов по различным сложным математическим задачам и как их решать точно и численно (приближение) с использованием различных алгоритмов. Мы больше сосредоточились на фактической математике и идеях решений, чем на их реализации. Большинство из них, которые я видел, написаны на C++. По какой-то причине мне не очень нравится C++, и я полностью влюблен в Objective-C. (У меня есть яблочный компьютер)Objective-C vs C++ для прикладных математических алгоритмов

Это большая разница в эффективности между этими языками? Я не планирую решать 40.000x40.000 систем уравнений навэра-стоксов, только некоторые небольшие/мало-средние примеры практических проблем. Большинство проблем, представляющих интерес, - P -проблемы и для NP-Hard хорошая эвристика будет в порядке.

Я обязан изучать еще один язык программирования, или я должен просто пойти с Objective-C, языком, который я очень хорошо знаю в наши дни.

+0

Objective-C с использованием 'Cocoa frameworks' – Daniel

+1

Различия в производительности при выполнении численных вычислений будут минимальными, если ваши алгоритмы верны. – Cameron

+1

Этот вопрос относится к http://programmers.stackexchange.com – trojanfoe

ответ

1

Для Math у вас есть другие языки, такие как:

  • R для статистического
  • Octave для матриц и векторов
  • Maxima в CAS
  • SciPy для числовых вычислений
  • Бог всех математике расчеты FORTRAN

Используйте правильный инструмент для правильной работы и сосредоточьтесь на идее не на алгоритме (как вы сказали).

+0

Спасибо за информацию, я обязательно изучу это. Но я имел в виду не только выполнять вычисления (для этого я бы просто придерживался Matlab), но и программировать приложения, которые их решают. – Daniel

+0

Octave имеет интерфейс C++, если вы этого хотите. SciPy - это де-факто библиотека Python, поэтому вы можете создавать GUI над ней. R имеет несколько GUI-библиотек. Также все они могут передавать свой вывод в вашу программу. – Hauleth

Смежные вопросы