Жизненная энергия человека 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;
|