| |||
|
|
по уму -- да, ты прав, модулями всё делать, с чёткими интерфейцами. пока там спагетти изрядные. с кешированием и оптимизациями, я думал -- надо напирать на то, что реально жрёт цпу, т.е. 1. расчёт траектории. для одного просчёта вероятности -- их уже 5, а скоро будет 7. на последнем i7 каждая -- об 100-150 миллисекунд, на телефоне тормозит несусветно. там Math.pow() в расчёте плотности атмосферы (новой на каждые 7.62 см траектории) жрёт циклы как не в себя; надо просчитать заранее, и чисто лазить в табличку, расход уполовинится как минимум. кроме того, если не сменились определяющие параметры траектории -- не пересчитывать (в памяти она и так сидит). 2. и, разумеется, монтекарла на миллионы заходов. можно, конечно, поумерить интенсивность -- с 25'000 вместо 2'500'000 разница -- об десятую процента но тут меня ночью осенило, что я дебил. вместо того, чтобы монтекарлу гонять, для большей части приведённых мишеней это может быть решено аналитически -- маркизом де ляплясом. c круглыми целями, правда, пока не знаю как быть -- обратный рылей там не подойдёт, бо эллипс, сигмы не равны. доебусь до ребят из баллистипедии, они в статистике подкованы. короче, всё это вогнать в приемлемые рамки для небыстрых цпу, судя по всему, удастся. Добавить комментарий: |
||||