БлоК СХЕМЫ И АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ




 

В программе использовались следующие блок-схемы:

 

 
 

 


Рисунок 2. Блок-схема программы

 

 
 

 

 


Рисунок 3. Блок-схема чтения данных

 

       
 
 
   

 

 


Рисунок 4. Блок-схема расчёта

 

 
 

 

 


Рисунок 5. Блок-схема формирования графического представления результатов расчёта

 

 

       
   
 
 
Рисунок 6. Блок-схема расчета напряжений N и М — рабочие переменные (М — определяет индекс предыдущей ветви; МАО — массив адресных отображений)

 

 


Алгоритм программы (код программы)

 

import java.io.*;

import java.util.*;

import java.util.regex.*;

import java.lang.Math;

import javax.swing.JFrame;

import javax.swing.JButton;

import javax.swing.JPanel;

import java.awt.BorderLayout;

import java.awt.FlowLayout;

import javax.swing.*;

import javax.swing.border.BevelBorder;

import java.awt.Graphics2D;

import java.awt.Graphics;

import java.awt.geom.*;

import java.awt.event.ActionListener;

import java.awt.event.ActionEvent;

import java.text.DecimalFormat;

import javax.imageio.ImageIO;

import java.awt.image.BufferedImage;

import java.awt.Font;

 

public class GlavnProg extends JFrame{

 

private JPanel buttons;

private PanelRisov pic;

private JButton paint,calc;

LineMassive al;

 

public GlavnProg(){

buttons=new JPanel();

buttons.setSize(200,30);

buttons.setLayout(new FlowLayout());

pic=new PanelRisov();

pic.setSize(700,465);

paint = new JButton("Risunok");

calc=new JButton("Podschet");

calc.addActionListener(new Risovanie(this));/*new ActionListener(){

public void actionPerformed(ActionEvent e){

al=readS();

al.calculate();

pic.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));

add(pic,BorderLayout.CENTER);

}

});*/

paint.setEnabled(false);

paint.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

BufferedImage bi=(BufferedImage)pic.createImage(pic.getWidth(),pic.getHeight());

Graphics2D g2=bi.createGraphics();

pic.paint(g2);

g2.dispose();

try{

ImageIO.write(bi,"jpeg",new File("ResPict.jpeg"));

}catch(Exception exc){exc.printStackTrace();}

}

});

buttons.add(calc);

buttons.add(paint);

setLayout(new BorderLayout());

add(buttons,BorderLayout.NORTH);

pic.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));

add(pic,BorderLayout.CENTER);

setTitle("Trans and Wires");

setSize(1000,700);

setResizable(false);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

}

 

public static void main(String[] args){

Line l;

double dd[];

GlavnProg rsd=new GlavnProg();

 

}

public LineMassive readS(){

 

Scanner sc;

ArrayList<String> al=new ArrayList<String>();

LineMassive al1=new LineMassive();

int nn,nk,Tmatj,Snomj;

double L,Ksj,Cosfij;

double wire[]=new double[5],trans[]=new double[10];

String wireName="";

boolean wireQ=true;

 

 

try{

RandomAccessFile raf=new RandomAccessFile("ishod.txt","r");

String s="",d;

while((s=raf.readLine())!=null){

d=new String(s.getBytes("ISO-8859-1"),"Cp1251");

System.setOut(new PrintStream(System.out, true, "cp866"));

al.add(d);

}

raf.close();

}catch(Exception e){

e.printStackTrace();

}

 

int ii;

String temp,s;

 

for(int i=7;i<al.size()-1;i++){

nn=0;nk=0;Snomj=0;Tmatj=0;

L=.0;Ksj=.0;Cosfij=.0;

wire=null;

s=al.get(i);

 

sc=new Scanner(s).useDelimiter(":");

 

temp=sc.next();

temp=temp.trim();

nn=Integer.valueOf(temp);

temp=sc.next();

temp=temp.trim();

nk=Integer.valueOf(temp);

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")!=0){

wireName=temp;

wire=readWire(wireName);

wireQ=true;

}

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")<0){

L=Double.valueOf(temp);

}

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")<0){

Snomj=Integer.valueOf(temp);

trans=readTrans(Integer.toString(Snomj));

wireQ=false;

}

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")<0){

Ksj=Double.valueOf(temp);

}

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")<0){

Tmatj=Integer.valueOf(temp);

}

temp=sc.next();

temp=temp.trim();

if(temp.lastIndexOf("-")<0){

Cosfij=Double.valueOf(temp);

}

if(wireQ){

al1.add(new Line(nn,nk,L,Ksj,Tmatj,Cosfij,wireName).setWire(wire));

} else {

al1.add(new Line(nn,nk,L,Ksj,Tmatj,Cosfij,wireName).setTrans(trans));

}

}

return al1;

}

 

public double[] readWire(String wire){

double[] date=new double[5];

Scanner sc;

double dd;

int c=0;

try{

RandomAccessFile raf=new RandomAccessFile("wires.txt","r");

String s="",d,temp;

while((s=raf.readLine())!=null){

if(s.endsWith("-----")||c<5) {c++; continue;}

d=new String(s.getBytes("ISO-8859-1"),"Cp1251");

if(d.indexOf(wire)>0){

int i=0;

sc=new Scanner(d).useDelimiter(":");

sc.next();

while(sc.hasNext())

date[i++]=Double.valueOf(sc.next().trim());

date[0]=date[0]*1000.0;

}

}

raf.close();

}catch(Exception e){

e.printStackTrace();

}

return date;

}

 

public double[] readTrans(String snom){

double[] date=new double[10];

Scanner sc;

double dd;

try{

RandomAccessFile raf=new RandomAccessFile("trans.txt","r");

String s="",d;

while((s=raf.readLine())!=null){

d=new String(s.getBytes("ISO-8859-1"),"Cp1251");

if(d.indexOf(":"+snom)>0){

int i=0;

sc=new Scanner(d).useDelimiter(":");

sc.next();

while(sc.hasNext()){

date[i++]=Double.valueOf(sc.next().trim());

if(i==1) date[i-1]=date[i-1]*1000.0;

else if(i==5) date[i-1]=date[i-1]*1000.0;

else if(i==7) date[i-1]=date[i-1]*1000.0;

else if(i==10) date[i-1]=date[i-1]*1000.0;

}

break;

}

}

}catch(Exception e){

e.printStackTrace();

}

return date;

 

}

 

class Risovanie implements ActionListener{

GlavnProg rsd;

Risovanie(GlavnProg rsd){this.rsd=rsd;}

public void actionPerformed(ActionEvent e){

al=readS();

al.calculate();

pic.setPic();

Graphics2D g2=(Graphics2D)pic.getGraphics();

pic.mao=al.mao;

paint.setEnabled(true);

try{

DecimalFormat df=new DecimalFormat("0.00"),df2=new DecimalFormat("0.000");

RandomAccessFile wrRes=new RandomAccessFile("result.txt","rw");

String res= "---------------------------------------------------------------------\n"+

"HOMEP ПOTOK MOЩHOCTИ BETBИ: ПOTEPИ MOЩHOCTИ: ПOTEPИ: HAПPЯЖ.:\n"+

"--------------------------------:-----------------:::\n"+

"HAЧAЛA:KOHЦA:AKTИBHЫЙ:PEAKTИBH.: AKTИBH.: PEAKT.: HAПPЯЖ.: УЗЛOB:\n"+

":::--------:----------:--------:--------:--------:---------\n"+

":BETBИ:BETBИ: KBT: KBAP: KBT: KBAP: KB: KB:\n"+

"---------------------------------------------------------------------\n";

//res=new String(res.getBytes("ISO-8859-1"),"Cp1251");

wrRes.writeChars(res);

for(int i=0;i<al.size();i++){

res=":"+formingString(""+al.get(i).nn,5)+":"+formingString(""+al.get(i).nk,5)+":"+

formingString(df.format(al.get(i).Pj/1000),8)+":"+formingString(df.format(al.get(i).Qj/1000),10)+":"+

formingString(df.format(al.get(i).retdPo()/1000),8)+":"+formingString(df.format(al.get(i).retdQo()/1000),8)+":"+

formingString(df2.format(al.get(i).dUj/1000),8)+":"+formingString(df2.format(al.get(i).Uuzl/1000),8)+":\n";

wrRes.writeChars(res);

}

wrRes.close();

}catch(Exception ex){ex.printStackTrace();}

}

public String formingString(String s,int n){

int len=s.length();

for(int i=0;i<n-len;i++)

s+=" ";

return s;

}

}

 

class PanelRisov extends JPanel{

private int d,dt,w,x,y;///w - width of the line,d-diameter of the dot,dt - trans

int[] mao;

public boolean pic=false;

int c1,scale=1,scl=1;

DecimalFormat df=new DecimalFormat("0.00");

 

public void paintComponent(Graphics g){

if(pic){

int ip=0,it,countT=0,countL=0,tmao[],lmao[];

super.paintComponent(g);

Graphics2D g2=(Graphics2D)g;

g2.setFont(new Font("Serif",Font.PLAIN,10));

drawT(g2,x,y);

al.get(ip).x=x;

al.get(ip).y=y;

drawPic(g2,0);

}

}

public void drawPic(Graphics2D g2, int ip){

int x1=al.get(ip).x,y1=al.get(ip).y,count=0,countL=0,countT=0,grad=30,dgrad,templ;

ArrayList<Integer> lines=new ArrayList<Integer>(),tr=new ArrayList<Integer>();

for(int i=1;i<mao.length;i++){

if(mao[i]==ip) {

count++;

if(al.get(i).wireQ) {countL++; lines.add(i); }

if(!al.get(i).wireQ){countT++; tr.add(i); }

}

}

boolean[] vert=new boolean[count];

if(countL<4&&countL!=0){

do{

try{

x=al.get(ip).x;

y=al.get(ip).y;

drawL(g2,x,y,countL,lines);

countL--;

al.get(lines.get(countL)).x=this.x;

al.get(lines.get(countL)).y=this.y;

g2.drawString(""+al.get(lines.get(countL)).nk,this.x+15,this.y-10);

g2.drawString(df.format(al.get(lines.get(countL)).Pj/1000)+"+j"+df.format(al.get(lines.get(countL)).Qj/1000),this.x+15,this.y-w+30);

templ=(int)lines.get(countL).floatValue();

drawPic(g2,templ);

}catch(Exception e){e.printStackTrace();System.exit(0);}

}while(countL!=0);

//return;

}else if(countL>=4){

dgrad=300/(countL-1);

do{

x=al.get(ip).x;

y=al.get(ip).y;

drawL(g2,x,y,grad,lines);

grad+=dgrad;

countL--;

al.get(lines.get(countL)).x=this.x;

al.get(lines.get(countL)).y=this.y;

drawPic(g2,(int)lines.get(countL).floatValue());

}while(countL!=0);

}

if(countT!=0&&countT>2){

int nap=1,dg=0;

x=al.get(ip).x;

y=al.get(ip).y;

drawTrans(g2,x,y,countT,tr);

if(grad<180) nap=1;

if(grad==180) nap=3;

if(grad>180) nap=2;

countT--;

}else if(countT<3&&countT!=0){

c1=tr.size()-1;

do{

try{

x=al.get(ip).x;

y=al.get(ip).y;

drawTrans(g2,this.x,this.y,countT,tr);

countT--;

templ=(int)tr.get(countT).floatValue();

}catch(Exception e){e.printStackTrace();System.exit(0);}

}while(countT!=0);

}

return;

}

public void setPic(){pic=true; repaint();}

public void paint(Graphics g){

g.setFont(new Font("Serif",Font.PLAIN,5));

d=8;dt=24;w=70;x=150;y=30;scale=0;scl=1;

super.paint(g);

}

public void drawT(Graphics2D g2,int x,int y){

int i=10;

g2.drawLine(x,y,x+i,y);

g2.drawLine(x+i/2,y,x+i/2,y+w);

g2.fill(new Ellipse2D.Double(x,y+w,d,d));

g2.drawString(""+al.get(0).nn,x+i+5,y-3);

g2.drawString(df.format(al.get(0).Pj/1000)+"+j"+df.format(al.get(0).Qj/1000),x+i+5,y+w/2-3);

g2.drawString(""+al.get(0).nk,x+i/2+5,y+w-3);

this.y+=w+d/2;

this.x+=i/2;

}

public void drawTrans(Graphics2D g2,int x,int y,int naprav,ArrayList<Integer> tr){

int i=30,di=20,c=0;

if(naprav==3){

g2.drawLine(x,y,x,y+i);

g2.draw(new Ellipse2D.Double(x-dt/2,y+i,dt,dt));

g2.draw(new Ellipse2D.Double(x-dt/2,y+i+di,dt,dt));

g2.drawLine(x,y+i+di+dt,x,y+di);

g2.drawLine(x,y+i+2*di+dt-10,x,y+i+2*di+dt+20);

g2.drawString(df.format(al.get(c).Pj/1000)+"+j"+df.format(al.get(c).Qj/1000),x+i+5,y+w/2-3);

g2.drawString(""+al.get(c).nk,x+i/2+5,y+w-3);

}else if(naprav==2){

g2.drawLine(x,y,x+i,y);

g2.draw(new Ellipse2D.Double(x+i,y-dt/2,dt,dt));

g2.draw(new Ellipse2D.Double(x+i+di,y-dt/2,dt,dt));

g2.drawLine(x+i+di+dt,y,x+i+2*di+dt,y);

g2.drawLine(x+i+2*di+dt,y-10,x+i+2*di+dt,y+10);

g2.drawString(df.format(al.get(tr.get(c1)).Pj/1000)+"+j"+df.format(al.get(tr.get(c1)).Qj/1000),x+(i+2*di-30)/2,y-dt+5);

g2.drawString(""+al.get(tr.get(c1)).nk,x+i+2*di+dt+5,y);

c1--;

return;

}else if(naprav==1){

g2.drawLine(x,y,x-i,y);

g2.draw(new Ellipse2D.Double(x-i-dt,y-dt/2,dt,dt));

g2.draw(new Ellipse2D.Double(x-i-di-dt,y-dt/2,dt,dt));

g2.drawLine(x-(i+di+dt),y,x-(i+2*di+dt),y);

g2.drawLine(x-(i+2*di+dt),y-10,x-(i+2*di+dt),y+10);

g2.drawString(df.format(al.get(tr.get(c1)).Pj/1000)+"+j"+df.format(al.get(tr.get(c1)).Qj/1000),x-(i+2*di+dt+80)/2,y-dt+5);

g2.drawString(""+al.get(tr.get(c1)).nk,x-(i+2*di+dt+25),y);

c1--;

return;

} else{

c1=tr.size()-1;

int xn,yn,nap1=naprav/2,chet=naprav%2,gr,nap2;

nap2=nap1+chet;

chet=nap1%2;

nap1=nap1/2;

gr=90/(nap1+1);

do{

xn=(int)((double)(w-30)*Math.cos(gr));yn=(int)((double)(w-30)*Math.sin(gr));

g2.drawLine(x,y,x-xn,y-yn);

drawTrans(g2,x-xn,y-yn,1,tr);

g2.drawLine(x,y,x-xn,y+yn);

drawTrans(g2,x-xn,y+yn,1,tr);

nap1--;

gr+=gr;

}while(nap1!=0);

if(chet!=0) drawTrans(g2,x,y,1,tr);

chet=nap2%2;

nap2=nap2/2;

gr=90/(nap2+1);

do{

xn=(int)((double)(w-30)*Math.cos(gr));yn=(int)((double)(w-30)*Math.sin(gr));

g2.drawLine(x,y,x+3*xn,y-yn);

drawTrans(g2,x+3*xn,y-yn,2,tr);

g2.drawLine(x,y,x+3*xn,y+yn);

drawTrans(g2,x+3*xn,y+yn,2,tr);

nap2--;

gr+=gr;

 

}while(nap2!=0);

if(chet!=0) drawTrans(g2,x,y,2,tr);

}

}

public void drawL(Graphics2D g2,int x,int y,int naprav,ArrayList<Integer> ln){

if(naprav==1){

g2.drawLine(x,y,x,y+(int)1.7*w);

g2.fill(new Ellipse2D.Double(x-d/2,y+(int)1.7*w,d,d));

this.y+=(int)1.7*w+d/2;

}else if(naprav==2){

g2.drawLine(x,y,x,y+20);

g2.drawLine(x,y+20,x+2*w+scale,y+20);

g2.drawLine(x+2*w+scale,y+20,x+2*w+scale,y+w-20+20);

g2.fill(new Ellipse2D.Double(x+2*w+scale-d/2,y+w-d/2-20+20,d,d));

this.x+=2*w+scale;//+d/2;

this.y+=w-20+20;

scale+=50*scl;

scl++;

}else if(naprav==3){

g2.drawLine(x,y,x-w,y);

g2.fill(new Ellipse2D.Double(x-w,y-d/2,d,d));

this.x-=w+d/2;

}else {

int xn,yn,nap1=naprav/2,chet=naprav%2,gr,nap2;

nap2=nap1+chet;

chet=nap1%2;

nap1=nap1/2;

gr=90/(nap1+1);

do{

xn=(int)((double)(w-20)*Math.cos(gr));yn=(int)((double)(w-20)*Math.sin(gr));

g2.drawLine(x,y,x-xn,y-yn);

g2.drawLine(x,y,x-xn,y+yn);

nap1--;

gr+=gr;

}while(nap1!=0);

if(chet!=0) g2.drawLine(x,y,x-w,y);

chet=nap2%2;

nap2=nap2/2;

gr=90/(nap2+1);

do{

xn=(int)((double)(w-20)*Math.cos(gr));yn=(int)((double)(w-20)*Math.sin(gr));

g2.drawLine(x,y,x+xn,y-yn);

g2.drawLine(x,y,x+xn,y+yn);

nap2--;

gr+=gr;

}while(nap2!=0);

if(chet!=0) g2.drawLine(x,y,x+w,y);

return;

}

}

}

}

 

 

class Line{

public int nn,nk,Tmatj,x,y;

private double L,Ksj,Snomj,Cosfij;

private double Unom,R0,X0,Idop,Ic;////wire

private double Unomt,NN,Uks,dPks,Ixx,dPxx,Rtr,Xtr,dQxx;/////trans

private String wireName,transName;

public double Pj,Qj,dUj,Uuzl;

private double Sj,Wpj,Wqj,Tgfij,Kfj2,rj,xj;

private double dWlj,dWtj,dPlj,dPtj,dWxxj,dQlj,dQtj;

public boolean wireQ;

Line(int n,int k,double l,double K,int T,double Cos,String wireName){

this.nn=n;this.nk=k;this.L=l;this.Ksj=K;this.Tmatj=T;

this.Cosfij=Cos;this.wireName=wireName;

}

 

public Line setWire(double[] wire){

int i=0;

Unom=wire[i];

R0=wire[++i];

X0=wire[++i];

Idop=wire[++i];

Ic=wire[++i];

wireQ=true;

return this;

}

public Line setTrans(double[] trans){

int i=0;

Snomj=trans[i];

Unomt=trans[++i];

NN=trans[++i];

Uks=trans[++i];

dPks=trans[++i];

Ixx=trans[++i];

dPxx=trans[++i];

Rtr=trans[++i];

Xtr=trans[++i];

dQxx=trans[++i];

wireQ=false;

return this;

}

 

public void PQTrans(){

if(!wireQ){

Tgfij=(Math.sqrt(1-Cosfij*Cosfij))/Cosfij;

Sj=Snomj*Ksj;

Pj=Sj*Cosfij;

Qj=Sj*(Math.sqrt(1-Cosfij*Cosfij));

}

}

 

public void calculate(){

Tgfij=(Math.sqrt(1-Cosfij*Cosfij))/Cosfij;

Wpj=Tmatj*Pj;

Wqj=Wpj*((Math.sqrt(1-Cosfij*Cosfij))/Cosfij);///!!!!!!!!!!!!!!tg

/////13-14

Kfj2=(0.16/Ksj+0.86)*(0.16/Ksj+0.86);

if(R0!=.0){

rj=L*R0;

dWlj=(Wpj*Wpj*(1+Tgfij*Tgfij)*Kfj2*rj)/(Unom*Unom*8760);

}else

 

////////16

{//if(dPks!=.0){

rj=dPks*10000000/(Snomj*Snomj);

dWtj=(Wpj*Wpj*(1+Tgfij*Tgfij)*Kfj2*rj)/(Unom*Unom*8760);

}

 

///////18

if(!wireQ)

dWxxj=dPxx*Tmatj;

///////////21

if(wireQ){

rj=L*R0;

dPlj=(Pj*Pj+Qj*Qj)*rj/10000000;

}else

 

{

rj=dPks*10000000/(Snomj*Snomj);

dPtj=(Pj*Pj+Qj*Qj)*rj/10000000;

 

}

 

if(wireQ){

xj=X0*L;

dQlj=(Pj*Pj+Qj*Qj)*xj/10000000;

}else{

xj=Xtr;

dQtj=(Pj*Pj+Qj*Qj)*xj/10000000;

}

 

if(wireQ){

rj=L*R0;

xj=X0*L;

}else{

rj=dPks*10000000/(Snomj*Snomj);

xj=Xtr*L;

}

dUj=(Pj*rj+Qj*xj)/10000;

 

}

public double retdPo(){

if(wireQ){

return dPlj;

}else {return dPtj;}

}

public double retdWo(){

if(wireQ){ return dWlj;}else {return dWtj;}

}

public double retdWxxj(){

return dWxxj;

}

public double retdPxx(){

return dPxx;

}

public double retdQxx(){return dQxx;}

public double retdQo(){

if(wireQ){return dQlj;} else{ return dQtj;}

}

public double retPj(){return Pj;}

public double retQj(){return Qj;}

}

 

class LineMassive{

private ArrayList<Line> al=null;

private double dWlo,dWto,dWxxo,dW,dPlo,dPto,dPxxo,dP,dPlto,Pgu,sPj,sQj,dQlo,dQto,dQxxo,dQ,dQlt,Qgu;

private double dPp,dPtop,dPltop,dPlop,dPxxop,dQp,dQtop,dQltp,dQlop,dQxxop;

int n1[],n2[],mao[];

int count;

 

public LineMassive(){

al=new ArrayList<Line>();

}

 

public int size(){

return al.size();

}

public Line get(int i){

return al.get(i);

}

public void add(Line l){

al.add(l);

}

public void calcPQ(){

for(int i=0;i<al.size();i++){

al.get(i).PQTrans();

}

}

 

private void calcdWo(){

for(int i=0;i<al.size();i++)

if(al.get(i).wireQ){

dWlo+=al.get(i).retdWo();}

else{ dWto+=al.get(i).retdWo();}

}

private void calcWxx(){

for(int i=0;i<al.size();i++)

if(!al.get(i).wireQ) dWxxo+=al.get(i).retdWxxj();

}

private void calcdPo(){

for(int i=0;i<al.size();i++)

if(al.get(i).wireQ){

dPlo+=al.get(i).retdPo();}

else{ dPto+=al.get(i).retdPo();}

}

private void calcPxx(){

for(int i=0;i<al.size();i++)

if(!al.get(i).wireQ) dPxxo+=al.get(i).retdPxx();

}

private void calcPgu(){

for(int i=0;i<al.size();i++){

sPj+=al.get(i).retPj();

sQj+=al.get(i).retQj();

}

}

private void calcdQo(){

for(int i=0;i<al.size();i++)

if(al.get(i).wireQ){

dQlo+=al.get(i).retdQo();}

else{ dQto+=al.get(i).retdQo();}

}

private void calcQxx(){

for(int i=0;i<al.size();i++)

if(!al.get(i).wireQ) dQxxo+=al.get(i).retdQxx();

}

 

public void calculate(){

 

calcPQ();

VAO();

PTR();

 

for(int i=0;i<al.size();i++)

al.get(i).calculate();

 

UUzl();

 

calcdWo();

calcWxx();

dW=dWlo+dWto+dWxxo;

calcdPo();

calcPxx();

dP=dPlo+dPto+dPxxo;

dPlto=dPlo+dPto;

Pgu=sPj+dP;

dPp=dP*100/Pgu;

dPtop=dPto*100/Pgu;

dPltop=dPlto*100/Pgu;

dPlop=dPlo*100/Pgu;

dPxxop=dPxxo*100/Pgu;

calcdQo();

calcQxx();

dQ=dQlo+dQto+dQxxo;

dQlt=dQlo+dQto;

Qgu=sQj+dQ;

dQp=dQ*100/Qgu;

dQtop=dQto*100/Qgu;

dQltp=dQlt*100/Qgu;

dQlop=dQlo*100/Qgu;

dQxxop=dQxxo*100/Qgu;

}

 

public void VAO(){

n1=new int[al.size()];

n2=new int[al.size()];

mao=new int[al.size()];

for(int i=0;i<al.size();i++){

n1[i]=al.get(i).nn;

n2[i]=al.get(i).nk;

}

mao[0]=0;

for(int i=0;i<al.size();i++)

if(n1[i]!=1)

for(int j=0;j<al.size();j++)

if(n1[i]==n2[j])

mao[i]=j;

}

 

public void PTR(){

int j;

double p,q;

for(int i=0;i<al.size();i++){

if(al.get(i).wireQ)

continue;

j=i;

p=al.get(j).Pj;

q=al.get(j).Qj;

do{

count++;

j=mao[j];

al.get(j).Pj+=p;

al.get(j).Qj+=q;

}while(j!=0);

}

}

private void UUzl(){

int j;

double uOb=10500;

for(int i=0;i<al.size();i++){

j=mao[i];

uOb-=al.get(j).dUj;

al.get(i).Uuzl=uOb;

}

}

}

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-02 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: