PDA

Просмотр полной версии : математические вычисления в ас


_Alex
27.07.2005, 16:26
люди, подскажите, насколько точно флеш работает с математикой..
озадачили проблемой промоделировать некий физ процесс с визуализацией..
вот рассматриваю флеш, как один из вариантов решения поставленной задачи..
вычисления преимущественно углов, высоких скоростей, и тп..
заранее благодарен..

styx
27.07.2005, 16:51
нормально работает. я считал жёсткую систему дифур по Rk4 с адаптивным шагом - всё работало как часы, даже на As1 (с без-типовыми переменными).

TechGiG
27.07.2005, 17:01
по-моему системы по дифур'ам легче посчитать на бумажке.
а на счет математике - не сомневайся всё работает.

_Alex
27.07.2005, 17:15
нормально работает. я считал жёсткую систему дифур по Rk4 с адаптивным шагом - всё работало как часы, даже на As1 (с без-типовыми переменными).
Пасибки за ответ :-)

_Alex
27.07.2005, 17:17
по-моему системы по дифур'ам легче посчитать на бумажке.
а на счет математике - не сомневайся всё работает.
Спасибо за ответ..

iNils
27.07.2005, 17:25
Как раз точность работы флеша оставляет желать лучшего.
dx = .1;
x = 0;
for (i = 0; i < 100; i++) {
x += dx;
trace (x);
}

_Alex
27.07.2005, 18:00
Как раз точность работы флеша оставляет желать лучшего.
dx = .1;
x = 0;
for (i = 0; i < 100; i++) {
x += dx;
trace (x);
}

мда......заставляет задуматься)))))...
хотя это может только при выводе...что то типа ограничения точности при выводе на экран...
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
3
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
4
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
5
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.99999999999999
6.09999999999999
6.19999999999999
6.29999999999999
6.39999999999999
6.49999999999999
6.59999999999999
6.69999999999999
6.79999999999999
6.89999999999999
6.99999999999999
7.09999999999999
7.19999999999999
7.29999999999999
7.39999999999999
7.49999999999999
7.59999999999999
7.69999999999999
7.79999999999999
7.89999999999999
7.99999999999999
8.09999999999999
8.19999999999999
8.29999999999999
8.39999999999999
8.49999999999999
8.59999999999999
8.69999999999999
8.79999999999998
8.89999999999998
8.99999999999998
9.09999999999998
9.19999999999998
9.29999999999998
9.39999999999998
9.49999999999998
9.59999999999998
9.69999999999998
9.79999999999998
9.89999999999998
9.99999999999998

iNils
27.07.2005, 18:07
Легко проверить
dx = .1;
x = 0;
for (i = 0; i < 100; i++) {
x += dx;
}
if (x == 10) {
trace ("current");
} else {
trace ("error :" + (10 - x));
}

_Alex
27.07.2005, 18:12
Легко проверить
dx = .1;
x = 0;
for (i = 0; i < 100; i++) {
x += dx;
}
if (x == 10) {
trace ("current");
} else {
trace ("error :" + (10 - x));
}


:-))))) только что почти так же проверил)))) результат не обрадовал...
ладно, буду мучаться...
хуже, что ошибка накапливаться будет.. особенно при умножении, степени..
и с проверками плохо будет.. .апроксимировать придется.. :-(

Whatsername
27.07.2005, 19:27
Js считает еще хуже... может дело в ос?

iNils
27.07.2005, 21:22
Если интересно, то Нокс тут (http://www.flash-mx.ru/forum/topic_show.pl?pid=1027;hl=%cf%db%c9%c2%cb%c9;hlm=and#pid1027) немного про это рассказывает.

D-MAN
27.07.2005, 21:23
мля, а я уже неделю со своим мультиплеерным бильярдом мучаюсь: почему на 2х машинах шарики по-разному катаются.

_Alex
28.07.2005, 03:01
Если интересно, то Нокс тут (http://www.flash-mx.ru/forum/topic_show.pl?pid=1027;hl=%cf%db%c9%c2%cb%c9;hlm=and#pid1027) немного про это рассказывает.

Спасибо за ссылку!

D-MAN
28.07.2005, 03:17
2iNils
Бооооооольшущая тебе, чувак, благодарность. Можно сказать спас меня.
После прочтения этой темы расставил везде округления - все заработало как часы. На первой же встрече клуба с меня - пиво!

iNils
28.07.2005, 11:09
спасибо скорее ноксу, он же писал :)

D-MAN
28.07.2005, 11:12
я как раз статью-то еще не прочитал, а вот за сам факт того, что флеш так косит в вычислениях - тебе спасибо!

Whatsername
28.07.2005, 12:07
за сам факт того, что флеш так косит в вычислениях - тебе спасибо!
Круто стелишь, D-MAN =)) И за войну в Ираке, большущее тебе спасибо, iNils.

D-MAN
28.07.2005, 17:32
Whatsername, ку-ку? [D-MAN крутит пальцем у виска]
Имелось в виду ессно доведения до моего сведения возможности такой проблемы.