Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Жизненная энергия человека 2 страница




for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; System.out.print(al.get(number_elem).outelem+" ");}

else System.out.print(" "); }};

/* System.out.println(" \n Печать по типам");

for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; System.out.print(al.get(number_elem).type_elem+" ");}

else System.out.print(" "); }}; */

System.out.println(" \n Печать по направлениям ");

for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; System.out.print(al.get(number_elem).direct_elem +" ");}

else System.out.print(" "); }};

/* System.out.println(" \n Номер в списке выхода ");

for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; elemxx= al.get(number_elem); int kkk=elemxx.outelem;

int nump=elemOut.get(kkk).indexOf(elemxx); System.out.print(nump+"("+kkk+")"+" ");}

else System.out.print(" "); }}; */

System.out.println(" \n Печать плотности распределения людей ");

 

// распределение людей по расчетной области

for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; people= al.get(number_elem).d_elem;

num_people=num_people+people*hx*hy; System.out.print(pip.format(people) +" ");}

else System.out.print(" "); }};

System.out.print("\n Number people "+pip.format(num_people) +" ");

 

/* // Расчет плотности потоков по спискам каждого из выходов

double nk0, nk_near, ntran ;

double d_tranzit, qout, qin, qmax_xx;

double elemS=hx*hy, elemL;

int num;

int ntime=20; // число проходов по времени

double kust=0.9; // устойчивость расчета при kust -> 0 ( kust<1 )

double tay= (Math.min(hx,hy)/100.0)*kust; // минут

boolean bb;

// for (int kk=0; kk<n_Out; kk++) peopleOut[kk]=0; */

 

for(int ktime=0; ktime<ntime; ktime++)

{ time=time+tay;

for(int kk=0; kk<n_Out; kk++) // по выходам

{ if ( elemOut.get(kk).isEmpty() )

{System.out.println("\n !!(427)!! elemOut.get(kk).isEmpty"); continue; } // пустая очередь на выход kk

List<elem> listOutkk = elemOut.get(kk);

ListIterator itrOutkk = listOutkk.listIterator(); // начало списка выхода kk

while (itrOutkk.hasNext()) // обработка списка выхода kk

{elemxx =(elem) itrOutkk.next(); //элемент списка выхода kk

if ( elemxx.outelem != kk ) {System.out.println("\n !!(432)!!elemxx.outelem != kk "+kk); continue; }

num=elemOut.get(kk).indexOf(elemxx); // номер элемента в списке выхода kk

int direct = elemxx.direct_elem; // Обработка узла (стока) списка

// System.out.println("Номер элемента в очереди "+num+"("+kk+") "+" Направление выхода "+direct);

// Сток людей из элемента через выход из расчетной области

if (num == 0){ if (elemxx.type_elem !=5 )System.out.println("\n!437! Mistake!!elemk_near.type_elem != 5 ");

if (elemxx.d_elem > 0){ nk0=elemxx.d_elem*elemS;

qout=elemxx.velem(outL[kk])*elemxx.d_elem; ntran= outL[kk]*qout*tay;

if (ntran > nk0) ntran = nk0;

peopleOut[kk] = peopleOut[kk]+ ntran; elemxx.d_elem = elemxx.d_elem - ntran/elemS;

} }

/* kjgkjg */ qmax_xx = 0; // Элемент обрабатывается, если количество людей меньше предельного значения

bb = ((elemxx.type_elem == 2) | (elemxx.type_elem == 5));

if (bb){ int num_Door = elemxx.number_Door; elemL=al_Door.get(num_Door).l;

qmax_xx= elemxx.dmax(elemL);} else qmax_xx= elemxx.dmax();

if (elemxx.d_elem < qmax_xx)

{ switch(direct) {

case -1: // Поток по направлению -х

{ if ((k_near=elemxx.xincrease) >=0) // сосед +x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка справа от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!453! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL=hy; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; }

} } } } }; break;

case 1: // Поток по направлению х

{ if ((k_near=elemxx.xreduction) >=0) // сосед -x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -x от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!466! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL = hy; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; }

} } } } }; break;

case -2: // Поток по направлению -y

{ if ((k_near=elemxx.yincrease) >=0) // сосед +y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка +y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!482! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL =hx; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; }

} } } } }; break;

case 2: // Поток по направлению y

{ if ((k_near=elemxx.yreduction) >=0) // сосед -y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!498! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL = hx; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; }

} } } } }; break; }; // swicth

 

if ((direct == 1) | (direct == -1))

{ if ((k_near=elemxx.yincrease) >=0) // сосед +y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка +y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == -2 ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!515! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL=hx; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

if (elemxx.d_elem < qmax_xx) {

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; } }

} } } };

if ((k_near=elemxx.yreduction) >=0) // сосед -y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == 2 ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!525! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL=hx; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran = elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

if (elemxx.d_elem < qmax_xx) {

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; } }

} } } };

};

if ((direct == 2) | (direct == -2))

{ if ((k_near=elemxx.xincrease) >=0) // сосед +x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка +x от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == -1 ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!541! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL=hy; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

if (elemxx.d_elem < qmax_xx) {

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; } }

} } } };

if ((k_near=elemxx.xreduction) >=0) // сосед -x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -x от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == 1 ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!555! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { elemL=hy; qin = elemk_near.velem()*elemk_near.d_elem;}

ntran = elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

if (elemxx.d_elem < qmax_xx) {

d_tranzit = (qmax_xx-elemxx.d_elem)*elemS; // вместимость элемента, чел.

if ( d_tranzit > ntran ) { elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS; }

else { elemxx.d_elem = elemxx.d_elem + d_tranzit/elemS;

elemk_near.d_elem = elemk_near.d_elem - d_tranzit/elemS; } }

} } } };

} } } };

}

 

peopleTotal=0;

for (int kp=0; kp<n_Out; kp++) // Выходы из расчетной области (здания)

{ peopleTotal=peopleTotal+ peopleOut[kp];}

 

System.out.println(" \n \n Печать распределения людей Time="+time);

// DecimalFormat pip = new DecimalFormat("#.00");

num_people=0; // распределение людей по расчетной области

double pOut=0;

for (int i=1; i<Nx-1; i++) {System.out.println();

for (int j=1; j<Ny-1; j++) {

if (array[i][j]>=0) {number_elem=array[i][j]; people= al.get(number_elem).d_elem; //*hx*hy;

num_people=num_people+people*hx*hy; System.out.print(pip.format(people) +" ");}

else System.out.print(" "); }};

System.out.println("\n Number people "+pip.format(num_people) +" ");

for (int kp=0; kp<n_Out; kp++) // Выходы из расчетной области (здания)

{ pOut=pOut+ peopleOut[kp];

System.out.println(" Number people in out ("+kp+")= "+pip.format(peopleOut[kp])); };

double balance=pOut+ num_people;

System.out.println("\n Common number of people on out "+pip.format(pOut) +

"\n Balance N(in)+N(out) = "+pip.format(balance));

 

} // do Главный цикл по выходу всех людей из здания */

// while ((nn - peopleTotal)>0);

} }

 

/*

//оПРЕДЕЛЕНИЕ dmax

elem elemdd =new elem(100,0, 0,0,0,0,0,0);

double vElem, dvElem, dMax, ffElem, ffElemOld, ffMin, ddd, d1, ddp=0.005; // dvMax,

double qmax[]={16.5, 16.5, 19.6, 16.0, 11.0, 19.6}; // м/мин

double dmax[] = new double [10];

int priz=0;

for (int el=0; el<qmax.length; el++ )

{ ffMin=1.0e+5; dMax=0; ffElemOld=0;

ddd=zdan1.dElemMax*0.9;

do

{ elemdd.d_elem = ddd=ddd-ddp/elemS; if ( (el == 2) | (el == 5) ) { elemdd.type_elem = 2; vElem=elemdd.velem(1.0);}

else { elemdd.type_elem = 0; vElem=elemdd.velem();}

dvElem= ddd*vElem; ffElem = dvElem - qmax[el]/(zdan1.fp) ;

if (ffElem*ffElemOld < 0) { priz=0; dMax=ddd; ffMin= ffElem; break; }; ffElemOld=ffElem;

if (Math.abs(ffMin) > (d1=Math.abs(ffElem))) {priz=100; ffMin=ffElem; dMax=ddd; } }

while (ddd > 0.5);

dmax[el]=dMax;

System.out.println(" el= "+pip.format(el)+" priz= "+priz+" ffMin= "+pip.format(ffMin)+ " Dmax= "+ pip.format(dMax));

} System.out.println(Arrays.toString(dmax));

*/

// Отладка (печать)

/*

double dp=0.1;

for(int p= 1; p<30; p++) {

elemdd.d_elem = p*dp/elemS;

System.out.print("\n p= "+pip.format(p*dp)+" D= "+ pip.format(elemdd.d_elem)+

" V= "+ pip.format(elemdd.velem())+

" VD "+ pip.format(elemdd.velem()*elemdd.d_elem)+" dmax= "+ pip.format(elemdd.dmax())); } */

/*

//if (dvElem > dvMax) {dvMax = dvElem; dMax=ddd; }};

*/

//dmaxtt=qmax[el]/(zdan1.fp*vtt);

// if (dmaxtt > dmaxttx) {dmaxttx=dmaxtt; vttx=vtt; dmax[el]= dmaxttx ;

/*if ( (el == 0) | (el == 4) )

System.out.print("\n ff= "+pip.format(ffElem)+ " D= "+ pip.format(ddd)+ " V= "+ pip.format(vElem)+

" VD= "+ pip.format(dvElem) + " ffMin= "+pip.format(ffMin)+ " Dmax= "+ pip.format(dMax) );

 

версия от 27.04. 2012

{ switch(direct) {

case -1: // Поток по направлению -х

{ if ((k_near=elemxx.xincrease) >=0) // сосед +x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка справа от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!453! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qmax_near=elemk_near.dmax(elemL); qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { qmax_near=elemk_near.dmax(); elemL=hy; qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS;

} } } } }; break;

case 1: // Поток по направлению х

{ if ((k_near=elemxx.xreduction) >=0) // сосед -x в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -x от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!466! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qmax_near=elemk_near.dmax(elemL); qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { qmax_near=elemk_near.dmax(); elemL = hy; qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS;

} } } } }; break;

case -2: // Поток по направлению -y

{ if ((k_near=elemxx.yincrease) >=0) // сосед +y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка справа от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!482! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qmax_near=elemk_near.dmax(elemL); qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { qmax_near=elemk_near.dmax(); elemL =hx; qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS;

} } } } }; break;

case 2: // Поток по направлению y

{ if ((k_near=elemxx.yreduction) >=0) // сосед -y в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if(elemk_near.direct_elem == direct ) { if (elemk_near.d_elem >0)

{ if (elemk_near.type_elem == 5) System.out.println("\n!498! Mistake!!elemk_near.type_elem == 5 ");

nk_near=elemk_near.d_elem*elemS;

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

elemL=al_Door.get(num_Door).l; qmax_near=elemk_near.dmax(elemL); qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem(elemL)*elemk_near.d_elem;}

else { qmax_near=elemk_near.dmax(); elemL = hx; qin=0;

if (elemxx.d_elem <= qmax_near) qin = elemk_near.velem()*elemk_near.d_elem;}

ntran =elemL*qin*tay; if (ntran > nk_near) ntran = nk_near;

elemxx.d_elem = elemxx.d_elem + ntran/elemS;

elemk_near.d_elem = elemk_near.d_elem - ntran/elemS;

} } } } }; break; }; // swicth */

/*

elem elemdd =new elem(100,0, 0,0,0,0,0,0);

for(int p= 1; p<30; p++) {

double elemSS=1;

elemdd.d_elem = p/elemSS;

System.out.print("\n p= "+p+" D= "+ pip.format(elemdd.d_elem)+

" V= "+ pip.format(elemdd.velem())+" dmax= "+ pip.format(elemdd.dmax())); } */

/*

for (int i=1; i<Nx-1; i++)

for (int j=1; j<Ny-1; j++)

if (array[i][j]>=0) {number_elem=array[i][j]; al.get(number_elem).d_elem= al.get(number_elem).d_new;};

*/

/* // ******

if ((direct == 1) | (direct == -1)) {

{qplus2=0;

if ((k_near=elemxx.yincrease) >=0) // сосед + в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка +y от соседа

if(elemk_near.outelem == kk) { // ячейка соседняя относится к выходу kk

if( (elemk_near.d_elem > 0) & (elemk_near.direct_elem == -2) )

{if (elemk_near.type_elem == 5) System.out.println("\n!(439)!! Mist-2!!elemk_near.type_elem == 5 ");

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

double ll=al_Door.get(num_Door).l;

if (elemxx.d_elem <= elemk_near.dmax(ll)) qplus2=elemk_near.velem(ll)*elemk_near.d_elem;} // 2

else { if (elemxx.d_elem <=elemk_near.dmax()) qplus2=elemk_near.velem()*elemk_near.d_elem;} } } } };

{qmin2=0;

if ((k_near=elemxx.yreduction) >=0) // сосед - в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -y от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

if( (elemk_near.d_elem > 0) & (elemk_near.direct_elem == 2) )

{if (elemk_near.type_elem == 5) System.out.println("\n!(449)!! Mist-2!!elemk_near.type_elem == 5 ");

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

double ll=al_Door.get(num_Door).l;

if (elemxx.d_elem <= elemk_near.dmax(ll)) qmin2=elemk_near.velem(ll)*elemk_near.d_elem;} // 2

else { if (elemxx.d_elem <=elemk_near.dmax()) qmin2=elemk_near.velem()*elemk_near.d_elem;} } } };

dqy= (qplus2+qmin2)/hy; }; //((direct == 1) | (direct == -1))

if ((direct == 2) | (direct == -2)) {

{qplus1=0;

if ((k_near=elemxx.xincrease) >=0) // сосед + в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка +x от соседа

if(elemk_near.outelem == kk) { // ячейка соседняя относится к выходу kk

if( (elemk_near.d_elem > 0) & (elemk_near.direct_elem == -1) )

{if (elemk_near.type_elem == 5) System.out.println("\n!(461)!! Mist-2!!elemk_near.type_elem == 5 ");

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

double ll=al_Door.get(num_Door).l;

if (elemxx.d_elem <= elemk_near.dmax(ll)) qplus1=elemk_near.velem(ll)*elemk_near.d_elem;} // 2

else { if (elemxx.d_elem <=elemk_near.dmax()) qplus1=elemk_near.velem()*elemk_near.d_elem;} } } } };

{qmin1=0;

if ((k_near=elemxx.xreduction) >=0) // сосед - в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка -x от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

if( (elemk_near.d_elem > 0) & (elemk_near.direct_elem == 1) )

{if (elemk_near.type_elem == 5) System.out.println("\n!(471)!! Mist-2!!elemk_near.type_elem == 5 ");

if (elemk_near.type_elem == 2){ int num_Door = elemk_near.number_Door;

double ll=al_Door.get(num_Door).l;

if (elemxx.d_elem <= elemk_near.dmax(ll)) qmin1=elemk_near.velem(ll)*elemk_near.d_elem;} // 2

else { if (elemxx.d_elem <=elemk_near.dmax()) qmin1=elemk_near.velem()*elemk_near.d_elem;} } } };

dqx= (qplus1+qmin1)/hx; };

//***

*

*/

 

 

/* else {qmin1=0;

if ((k_near=elemxx.xreduction) >=0) // сосед слева в расчетной области (номер ячейки)

{elemk_near = al.get(k_near); // ячейка слева от соседа

if(elemk_near.outelem == kk) // ячейка соседняя относится к выходу kk

{ if (elemxx.d_elem >0) {

if (elemxx.type_elem == 2){ int num_Door = elemxx.number_Door;

double ll=al_Door.get(num_Door).l;

if (elemk_near.d_elem <= elemxx.dmax(ll)) qmin1=elemxx.velem(ll)*elemxx.d_elem;} // 2

else { if (elemk_near.d_elem <= elemxx.dmax()) qmin1=elemxx.velem()*elemxx.d_elem;} }

} else System.out.println(" !484! elemk_near.outelem != kk "+elemk_near.outelem + " kk "+ kk);

} else System.out.println(" !485! k_near=elemxx.xreduction !>=0 "+k_near); };

*/

 

/* dvx=-(vplus1-vmin1)/hx;

{vplus2=0;







Дата добавления: 2015-10-02; просмотров: 231. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2020 год . (0.061 сек.) русская версия | украинская версия