Валерий Лаптев писал(а):
...
У меня самого сейчас точно такая же ситуация - делаю прогу для моделирования процессов перколяции.
Первый вариант и нынешний вариант - две БОЛЬШИЕ разницы. Причем по мере освоения произошла кардинальная переделка алгоритма.
Сейчас видимо, предстоит то же самое - переход на параллельную реализацию.
Если повезет, то будет и третья переделка - под вычисления на кластере.
Это - естественное освоение незнакомой мне предметной области и естественное развитие программы. То есть - рефакторинг: изменение кода без изменения функциональности.
Как я понимаю, Александр хотел сказать, что есть общая модель <искусственной, социотехнической> системы-решателя задач, инвариантная к предметке. И если бы Вы из неё исходили - то прога сразу была бы как продукт привязки этой модели к конкретной предметке и постановке задачи - с очастнением, если необходимо. Правда, изменения моделей предметки и вытекающих из них алгоритмов это, конечно, не отменяет...
Я так понял, изначально как решатель моделирования перколяции подразумевался единичный вычислитель в локальном АРМ? И основной объём переделок в будущем связан именно с изменением структуры машинной части? Как я понимаю, по Александру переход был бы не потом - от него к параллельному коллективу вычислителей, а затем - к кластерному [мета]коллективу. А совершался бы вначале - от естественно возникающего у разработчика самого общего инварианта решателя к частному, заданному изначальной постановкой. А то, что делается сейчас, имело бы вид "обратного перехода" от частного к сразу известному общему. Впрочем, Александр, надеюсь, скажет за себя сам...