Кадровый потенциал

Кадровый потенциал - совокупность способностей всех людей, которые заняты в данной организации и решают определенные задачи ...

Разработка алгоритма и его программной реализациидля пэвм для анализа системы

#define INFTY1000000 //бесконечность

//-------------------Начальные параметры-----------------

//-------------------fik - КПД k-го теплообменника-----------------

double fi2,fi3,fi4,fi7,fi8;

//-------------------Ограничения на G и h-----------------Gmin,Gmax;//минимальное и максимальное значения для Gk,

//k=0,1,2,3,4,5,6,7,8,9.h245min;//минимальное значение для h2,h4 и h5h245max;//максимальное значение для h2,h4 и h5h3678min;//минимальное значение для h3, h6, h7 и h8h3678max;//максимальное значение для h3, h6, h7 и h8

//-------------------Свободные параметры-----------------G0,G1,G3,G4,G7;

double h0,h1,h5,h6;

//-------------------Вычисляемые (зависимые) параметры-----------------G2,G5,G6,G8,G9;

double h2,h3,h4,h7,h8;

//-------------------Границы интервала изменения Gk-----------------FreeGmin,FreeGmax;

//-------------------Количество узлов интерпоолирования-----------------N=1000;

//-------------------Выходной файл с результатами-----------------FileOut;

//Internal variablespchFileName[40];nChoice=0;

double *pfFreeG=NULL;

//Функция, которая получает данные, введённые пользователем

void UserInput(){<<"Enter fi2 (0<fi2<1): ";>>fi2;(fi2<=0||fi2>1){<<"Ignoring invalid input. fi2=0.99 (default)."<<endl;=0.99;

}<<"Enter fi3 (0<fi3<1): ";>>fi3;(fi3<=0||fi3>1){<<"Ignoring invalid input. fi3=0.98 (default)."<<endl;=0.98;

}<<"Enter fi4 (0<fi4<1): ";>>fi4;(fi4<=0||fi4>1){<<"Ignoring invalid input. fi4=0.97 (default)."<<endl;=0.97;

}<<"Enter fi7 (0<fi7<1): ";>>fi7;(fi7<=0||fi7>1){<<"Ignoring invalid input. fi7=0.96 (default)."<<endl;=0.96;

}<<"Enter fi8 (0<fi8<1): ";>>fi8;(fi8<=0||fi8>1){<<"Ignoring invalid input. fi8=0.95 (default)."<<endl;=0.95;

}<<"Enter minimum G: ";>>Gmin;(Gmin<=0){<<"Ignoring invalid input. Minimum G="<<(Gmin=1)<<" (default)."<<endl;

}<<"Enter maximum G (maximum G>"<<3*Gmin<<"): ";>>Gmax;(Gmax<3*Gmin){<<"Ignoring invalid input. Maximum G="<<(Gmax=10*Gmin)<<" (default)."<<endl;

}(Gmin<Gmax);=h245min=20;max=251;min=294;=h3678max=504;=h245max;=(h3678min+h3678max)/2;=0.9*Gmax;=0.5*Gmax;=0.5*Gmax;=0.7*Gmax;//must be G4>=G3+Gmin=0.5*G1;=Gmin;=Gmax;<<"What parameter you whant to be variable: G0 (enter 0), G1 (enter 1), "

"G3 (enter 3), G4 (enter 4),G7 (enter 7): ";nChoice;>>nChoice;(nChoice){0:=&G0;;1:=&G1;;3:=&G3;;4:=&G4;;7:=&G7;;:<<"Ignoring invalid input. Chosed G1 (default)."<<endl;=&G1;

}

*pfFreeG=FreeGmin;<<"Enter output filename (without spaces): ";>>pchFileName;(strlen(pchFileName)==0){<<"Ignoring invalid input. File will be \"output.txt\" (default)"<<endl;

strcpy(pchFileName,"output.txt");

}

}

//Эта функция нужна для отладки - чтобы проверить выполнение балансовых соотношений

void ASSERT_BALANCE(){

/*1*/assert(IS_ZERO(G2+G1-G0));

/*2*/assert(IS_ZERO(G3*h2+G1*h3-fi2*(G3*h1+G1*h0)));

/*3*/assert(IS_ZERO(G4-G3-G5));assert(IS_ZERO(G4*h4-fi3*(G3*h2+G5*h5)));

/*4*/assert(IS_ZERO(G4*h5+G2*h6-fi4*(G2*h0+G4*h4)));

/*5*/assert(IS_ZERO(G6+G5-G4));

/*6*/assert(IS_ZERO(G7+G8-G1));

/*7*/assert(IS_ZERO(G9-G2-G7));assert(IS_ZERO(G9*h7-fi7*(G2*h6+G7*h3)));

/*8*/assert(IS_ZERO(G0-G8-G9));assert(IS_ZERO(G0*h8-fi8*(G8*h3+G9*h7)));

}

//Вычисляет зависимые переменные G и h по независимым G и h

void CalcDependent_G_h(){=G0-G1;=G4-G3;=G3;=G1-G7;=G0-G1+G7;=1/(fi4*fi3*G1)*(fi4*G0*h0+fi4*fi3*fi2*G3*h1-fi4*(1-fi3*fi2)*G1*h0-*fi3*G3*h5-(1-fi4*fi3)*G4*h5-(G0-G1)*h6);=(fi2*(G1*h0+G3*h1)-G1*h3)/G3;=fi3/G4*(fi2*(G1*h0+G3*h1)-G1*h3+(G4-G3)*h5);=fi7*((G0-G1)*h6+G7*h3)/(G0-G1+G7);=fi8*(G9*h7+G8*h3)/G0;_BALANCE();

Перейти на страницу: 1 2 3 4