Диссертация (Агентная модель поведения толпы в условиях чрезвычайной ситуации для оценки интенсивности фронта выходного потока), страница 69
Описание файла
Файл "Диссертация" внутри архива находится в папке "Агентная модель поведения толпы в условиях чрезвычайной ситуации для оценки интенсивности фронта выходного потока". PDF-файл из архива "Агентная модель поведения толпы в условиях чрезвычайной ситуации для оценки интенсивности фронта выходного потока", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве НИУ ВШЭ. Не смотря на прямую связь этого архива с НИУ ВШЭ, его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.
Просмотр PDF-файла онлайн
Текст 69 страницы из PDF
g et X ( ) , b . g et X ( ) , c . g et X ( ) , d . g et X ( ) )&&b o u n d i n g Bo x ( a . g et Y ( ) , b . g et Y ( ) , c . g et Y ( ) , d . g et Y ( ) )&&( a r e a ( a , b , c ) ∗ a r e a ( a , b , d ) <=0)&&( a r e a ( c , d , a ) ∗ a r e a ( c , d , b ) <=0) ) ;}85/ ∗∗∗ Это ч и сл о и с п о л ь з у е т с я при со хр а н ен и и состояния модели∗ Его р еко м ен дует ся изменить в с л у ч а е и зм ен ен и я к л а с с а∗/p r i v a t e s t a t i c f i n a l l o n g s e r i a l V e r s i o n U I D = 1L ;90}296Приложение ИКласс векторов пространстваИ.1Листинг кода класса векторов пространстваi m p o r t j a v a . math . ∗ ;p u b l i c c l a s s MyVector i m p l e m e n t s S e r i a l i z a b l e {5p r i v a t e d o u b l e x ; / / x−координата вектораp r i v a t e d o u b l e y ; / / y−координата вектораp u b l i c MyVector ( ) { / / конструктор по умолчанию10}152025p u b l i c MyVector ( d o u b l e x , d o u b l e y ) { / / конструктор по координатам вектораsetX ( x ) ;setY ( y ) ;}p u b l i c MyVector ( d o u b l e x1 , d o u b l e y1 , d o u b l e x2 , d o u b l e y2 ) { / / конструктор по координатам точекs e t X ( x1−x2 ) ;s e t Y ( y1−y2 ) ;}p u b l i c d o u b l e g et X ( ) { / / в о зв р а щ ен и е x−координаты вектораreturn x;}p u b l i c d o u b l e g et Y ( ) { / / в о зв р а щ ен и е y−координаты вектораreturn y;}30p u b l i c v o i d s e t X ( d o u b l e x ) { / / установка x−координаты вектораthis .x = x;}35404550556065p u b l i c v o i d s e t Y ( d o u b l e y ) { / / установка y−координаты точкиthis .y = y;}p u b l i c s t a t i c b o o l e a n i s N u l l ( MyVector v ) { / / п р о в ер ка на н ул ь−векторr e t u r n ( v .
g et X ( ) ==0)&&(v . g et Y ( ) ==0) ;}p u b l i c b o o l e a n i s N u l l ( ) { / / п р о в ер ка на н ул ь−векторr e t u r n ( t h i s . g et X ( ) ==0)&&( t h i s . g et Y ( ) ==0) ;}p u b l i c s t a t i c MyVector u n i t V e c t o r ( MyVector v ) { / / п р е о б р а з о в а н и е в единичный векторi f ( isNull (v) ) {return v;} else {retur n factorVector (v , 1/ length ( v) ) ;}}p u b l i c MyVector u n i t V e c t o r ( ) { / / п р е о б р а з о в а н и е в единичный векторi f ( isNull ( t hi s ) ) {return this ;} else {retur n factorVector ( this , 1/ length ( t hi s ) ) ;}}p u b l i c s t a t i c MyVector c o e f V e c t o r ( MyVector v , d o u b l e k ) { / / п р е о б р а з о в а н и е в вектор за да н н о й длиныi f ( isNull (v) ) {return v;297} else {return factorVector ( unitVector (v) , k) ;}}70758085p u b l i c MyVector c o e f V e c t o r ( d o u b l e k ) { / / п р е о б р а з о в а н и е в вектор за да н н о й длиныi f ( isNull ( t hi s ) ) {return this ;} else {return factorVector ( unitVector ( this ) , k) ;}}p u b l i c s t a t i c MyVector f a c t o r V e c t o r ( MyVector v , d o u b l e k ) { / / умножение вектора на с к а л я рr e t u r n new MyVector ( k∗v .
g et X ( ) , k∗v . g et Y ( ) ) ;}p u b l i c MyVector f a c t o r V e c t o r ( d o u b l e k ) { / / умножение вектора на с к а л я рr e t u r n new MyVector ( k∗ t h i s . g et X ( ) , k∗ t h i s . g et Y ( ) ) ;}p u b l i c s t a t i c MyVector o p p o s i t e ( MyVector v ) { / / обратный векторr e t u r n f a c t o r V e c t o r ( v , −1) ;}90p u b l i c MyVector o p p o s i t e ( ) { / / обратный векторr e t u r n f a c t o r V e c t o r ( t h i s , −1) ;}95100105p u b l i c s t a t i c MyVector c r e a t e P o l a r ( d o u b l e r h o , d o u b l e t h e t a ) { / / построение вектора и з полярных координатr e t u r n new MyVector ( r h o∗Math .
c o s ( t h e t a ) , r h o∗Math . s i n ( t h e t a ) ) ;}p u b l i c s t a t i c MyVector p l u s ( MyVector v1 , MyVector v2 ) { / / сложение в еект о р о вr e t u r n new MyVector ( v1 . g et X ( ) +v2 . g et X ( ) , v1 . g et Y ( ) +v2 . g et Y ( ) ) ;}p u b l i c MyVector p l u s ( MyVector v2 ) { / / сложение в еект о р о вr e t u r n new MyVector ( t h i s . g et X ( ) +v2 . g et X ( ) , t h i s . g et Y ( ) +v2 . g et Y ( ) ) ;}p u b l i c s t a t i c MyVector m i n u s ( MyVector v1 , MyVector v2 ) { / / разность в еект о р о вr e t u r n new MyVector ( v1 .
g et X ( )−v2 . g et X ( ) , v1 . g et Y ( )−v2 . g et Y ( ) ) ;}110p u b l i c MyVector m i n u s ( MyVector v2 ) { / / разность в еект о р о вr e t u r n new MyVector ( t h i s . g et X ( )−v2 . g et X ( ) , t h i s . g et Y ( )−v2 . g et Y ( ) ) ;}115120125p u b l i c s t a t i c MyVector r o t a t e R a d i a n ( MyVector v , d o u b l e t h e t a ) { / / поворот вектора в р а ди а н а хr e t u r n new MyVector ( v . g et X ( ) ∗Math . c o s ( t h e t a )−v . g et Y ( ) ∗Math .
s i n ( t h e t a ) , v . g et X ( ) ∗Math . s i n ( t h e t a ) +v . g et Y ( ) ∗Math . c o s ( t h e t a ) ) ;}p u b l i c MyVector r o t a t e R a d i a n ( d o u b l e t h e t a ) { / / поворот вектора в р а ди а н а хr e t u r n new MyVector ( t h i s . g et X ( ) ∗Math . c o s ( t h e t a )−t h i s .
g et Y ( ) ∗Math . s i n ( t h e t a ) , t h i s . g et X ( ) ∗Math . s i n ( t h e t a ) + t h i s . g et Y ( ) ∗Math . c o s ( t h e t a ) ) ;}p u b l i c s t a t i c MyVector r o t a t e D e g r e e ( MyVector v , d o u b l e t h e t a ) { / / поворот вектора в г р а д у с а хr e t u r n new MyVector ( v . g et X ( ) ∗Math . c o s ( t h e t a ∗Math . P I / 1 8 0 )−v . g et Y ( ) ∗Math .
s i n ( t h e t a ∗Math . P I / 1 8 0 ) , v . g et X ( ) ∗Math . s i n ( t h e t a ∗Math . P I / 1 8 0 ) +v .g et Y ( ) ∗Math . c o s ( t h e t a ∗Math . P I / 1 8 0 ) ) ;}p u b l i c MyVector r o t a t e D e g r e e ( d o u b l e t h e t a ) { / / поворот вектора в г р а д у с а хr e t u r n new MyVector ( t h i s . g et X ( ) ∗Math . c o s ( t h e t a ∗Math . P I / 1 8 0 )−t h i s .
g et Y ( ) ∗Math . s i n ( t h e t a ∗Math . P I / 1 8 0 ) , t h i s . g et X ( ) ∗Math . s i n ( t h e t a ∗Math . P I/ 1 8 0 ) + t h i s . g et Y ( ) ∗Math . c o s ( t h e t a ∗Math . P I / 1 8 0 ) ) ;}130p u b l i c s t a t i c d o u b l e s c a l a r P r o d u c t ( MyVector v1 , MyVector v2 ) { / / с к а л я р н о е п р о и з в е д е н и е векторовr e t u r n v1 . g et X ( ) ∗v2 .
g et X ( ) +v1 . g et Y ( ) ∗v2 . g et Y ( ) ;}135140145p u b l i c d o u b l e s c a l a r P r o d u c t ( MyVector v2 ) { / / с к а л я р н о е п р о и з в е д е н и е векторовr e t u r n t h i s . g et X ( ) ∗v2 . g et X ( ) + t h i s . g et Y ( ) ∗v2 . g et Y ( ) ;}p u b l i c s t a t i c d o u b l e c r o s s P r o d u c t ( MyVector v1 , MyVector v2 ) { / / ко со е п р о и з в е д е н и е векторовr e t u r n v1 . g et X ( ) ∗v2 . g et Y ( )−v1 . g et Y ( ) ∗v2 .
g et X ( ) ;}p u b l i c d o u b l e c r o s s P r o d u c t ( MyVector v2 ) { / / ко со е п р о и з в е д е н и е векторовr e t u r n t h i s . g et X ( ) ∗v2 . g et Y ( )−t h i s . g et Y ( ) ∗v2 . g et X ( ) ;}298p u b l i c s t a t i c d o u b l e l e n g t h ( MyVector v ) { / / дл и н а вектораr e t u r n Math . s q r t ( l e n g t h S q u a r e d ( v ) ) ;}150p u b l i c d o u b l e l e n g t h ( ) { / / дл и н а вектораr e t u r n Math . s q r t ( l e n g t h S q u a r e d ( t h i s ) ) ;}155160165p u b l i c s t a t i c d o u b l e l e n g t h S q u a r e d ( MyVector v ) { / / квадрат длины вектораr e t u r n Math . pow ( v .
g et X ( ) , 2 ) +Math . pow ( v . g et Y ( ) , 2 ) ;}p u b l i c d o u b l e l e n g t h S q u a r e d ( ) { / / квадрат длины вектораr e t u r n Math . pow ( t h i s . g et X ( ) , 2 ) +Math . pow ( t h i s . g et Y ( ) , 2 ) ;}p u b l i c s t a t i c d o u b l e c o s A n g l e ( MyVector v1 , MyVector v2 ) { / / к о с и н у с у г л а между векторами ( б е з модуля )r e t u r n s c a l a r P r o d u c t ( v1 , v2 ) / ( l e n g t h ( v1 ) ∗ l e n g t h ( v2 ) ) ;}p u b l i c d o u b l e c o s A n g l e ( MyVector v2 ) { / / к о с и н у с у г л а между векторами ( б е з модуля )r e t u r n s c a l a r P r o d u c t ( t h i s , v2 ) / ( l e n g t h ( t h i s ) ∗ l e n g t h ( v2 ) ) ;}170p u b l i c s t a t i c d o u b l e s i n A n g l e ( MyVector v1 , MyVector v2 ) { / / с и н у с у г л а между векторамиr e t u r n Math .
s q r t (1−Math . pow ( c o s A n g l e ( v1 , v2 ) , 2 ) ) ;}175180185p u b l i c d o u b l e s i n A n g l e ( MyVector v2 ) { / / с и н у с у г л а между векторамиr e t u r n Math . s q r t (1−Math . pow ( c o s A n g l e ( t h i s , v2 ) , 2 ) ) ;}p u b l i c s t a t i c d o u b l e a n g l e R a d i a n ( MyVector v1 , MyVector v2 ) { / / у г о л ( неориентированный ) между векторами в р а ди а н а хr e t u r n Math .
a c o s ( c o s A n g l e ( v1 , v2 ) ) ;}p u b l i c d o u b l e a n g l e R a d i a n ( MyVector v2 ) { / / у г о л ( неориентированный ) между векторами в р а ди а н а хr e t u r n Math . a c o s ( c o s A n g l e ( t h i s , v2 ) ) ;}p u b l i c s t a t i c d o u b l e a n g l e D e g r e e ( MyVector v1 , MyVector v2 ) { / / у г о л ( неориентированный ) между векторами в г р а д у с а хr e t u r n Math . a c o s ( c o s A n g l e ( v1 , v2 ) ) ∗ 1 8 0 / Math . P I ;}190p u b l i c d o u b l e a n g l e D e g r e e ( MyVector v2 ) { / / у г о л ( неориентированный ) между векторами в г р а д у с а хr e t u r n Math .