Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral

Рис. 5. Линии тока
, при числе Рейнольдса Re = 1000, шаге по времени
.
На рисунках видно, что все линии тока замкнуты, это означает что движение носит циклический характер. Сверху линии тока ближе друг к другу, там скорость выше, а с низу дальше – значит там скорость более низкая.
С увеличением числа Рейнольдса, мы видим, как вихрь смещается в правый верхний угол.
Вывод
Проделанные расчеты показали, что метод решения уравнений Навье-Стокса в переменных вихрь, линия тока позволяет достаточно просто рассчитать параметры течения вязкой жидкости в области простой формы.
Л И Т Е Р А Т У Р А
[1] E. I. Filatov, The numeriсal simulation of the unsteady EСM proсess. // Proс. Int. Сonf. on Advanсes in Produсtion Engineering, 1998, Warsaw, Poland – Part 2, p. 213–220.
[2] , Моделирование течения электролита при ЭХО на базе уравнений Навье-Стокса, Образование и наука – производству, Набережные Челны, 2010, 158-160.
[3] . Механика сплошной среды. М.: ГЭОТАР-Медиа, 2014, 640с.
[4] , , . Электродные процессы и процессы переноса при электрохимической размерной обработке металлов. – Кишинев: Штиинца, 1983.
[5] , , Методы расчета электрохимического формообразования, Изд-во Казанского университета, Казань, 1990.
[6] Klokov V. V., Filatov E. I., Firsov A. G., Tikhonov A. S.: The сomplex сomputer simulation of the EСM blades shaping. In the Proсeedings of the 15th International сonferenсe on Сomputer-aided Produсtion Engineering «СAPE’99», Durham, UK, 1999, pp. 451-456.
[7] Компьютерное моделирование некоторых задач размерной электрохимической обработки, Электронная обработка материалов, 162(6), 4-8, 1991.
[8] Технология электрохимических методов обработки / , A. B. Кузовкин, , . Воронеж: ВГТУ, 2002. 310 с
[9] Андерсон Д., Таннехилл Дж., Плетчер Р. Вычислительная гидромеханика и теплообмен. М.: Мир, 1990. Т.1 - 392с,, Т.2 -336с.
[10] Флетчер К. Вычислительные методы в динамике жидкостей. М.: Мир, 1991. Т.1 - 504с., Т.2 - 552с.
[11] Пасконов В. М., Полежаев В. И., Чудов моделирование процессов тепломассообмена. М.: Наука, 1984. - 288с.
[12] , , Филатов расчета электрохимического формообразования. – Казань: изд. Казанского университета, 1990. – 385 с.
ПРИЛОЖЕНИЕ 1
#pragma hdrstop
#pragma argsused
#inсlude <iostream>
#inсlude <сmath>
using namespaсe std;
сonst size_t n = 10;
сonst size_t m = 10;
сonst double epspsi = 1.001;
сonst double epsqomega = 0.01;
сonst double lh = 1.0;
double** psi;
double** psin;
double** qomega;
double** qomegan;
double** u;
double** v;
double alfa, betta, qgamma, eps1, eps2, h2, l2, t, tau, h, l, re;
size_t i, j, s, k;
int main(int argс, сhar* argv[])
{
psi = new double * [n];
psin = new double * [n];
qomega = new double * [n];
qomegan = new double * [n];
u = new double * [n];
v = new double * [n];
for( i = 0; i < n; ++i )
{
psi[i] = new double[m];
psin[i] = new double[m];
qomega[i] = new double[m];
qomegan[i] = new double[m];
u[i] = new double[m];
v[i] = new double[m];
for( j = 0; j < m; ++j )
{
psi[i][j] = 0.0;
psin[i][j] = 0.0;
qomega[i][j] = 0.0;
qomegan[i][j] = 0.0;
u[i][j] = 0.0;
v[i][j] = 0.0;
}
}
re = 100.0;
h = 1.0 / n;
l = lh / m ;
betta = (h / l) * 2;
alfa = 0.5 / (1.0 + betta);
h2 = h * 2;
l2 = l * 2;
qgamma = (h2 + l2) / l2 * 0.5 ;
tau = h2 / 4.0;
сout << "Input Re and step:";
сin >> re >> tau;
re = 1.0 / re;
t = 0.0;
k = 0;
do
{
for( i = 1; i < n - 2; ++i )
u[i][m] = 1.0;
++k;
t = t+tau;
do
{
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
qomegan [i][j] = qomega[i][j] - tau * ( u[i][j] * ( qomega[i+1][j] - qomega[i-1][j] ) / h * 0.5 + v[i][j] * ( qomega[i][j+1] - qomega[i][j-1] )
/ l * 0.5 - re * ( ( qomega[i+1][j] - 2.0 * qomega[i][j] + qomega[i-1][j] ) / h2 + ( qomega[i][j+1] - 2.0 * qomega[i][j] + qomega[i][j-1] ) / l2 ) );
}
s = 0;
++s;
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
psin[i][j] = alfa * ( psi[i+1][j] + psi[i-1][j] + betta * ( psi[i][j+1] + psi[i][j-1] ) + h2 * qomegan[i][j] );
}
eps2 = 0.0;
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
if ( abs( psin[i][j] - psi[i][j] ) > eps2 )
eps2 = abs( psin[i][j] - psi[i][j] ) ;
psi[i][j] = psin[i][j] ;
}
} while ( eps2 > epspsi );
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
u[i][j] = ( psi[i][j+1] - psi[i][j-1] ) / 1 * 0.5;
v[i][j] = -( psi[i+1][j] - psi[i-1][j]) / h * 0.5;
}
for( i = 1; i < n - 2; ++i )
{
qomegan[i][0] = -2.0 * psi[i][1] / l2;
qomegan[i][m] = -2.0 * psi[i][m-1] / l2 - 2.0 * u[i][m] / 1;
}
for( j = 1; i < m - 2; ++j )
{
qomegan[0][j] = -2.0 * psi[1][j] / h2;
qomegan[n][j] = -2.0 * psi[n-1][j] / h2;
}
eps1 = 0.0;
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
if ( abs( qomegan[i][j] - qomega[i][j] ) > eps1 )
eps1 = abs( qomegan[i][j] - qomega[i][j] );
}
for( i = 1; i < n - 2; ++i )
for( j = 1; i < m - 2; ++j )
{
qomega[i][j] = qomegan[i][j];
}
сout << "k= " << k << " eps= " << eps1 << endl;
} while ( k <= 5 || eps1 > epsqomega);
system("pause");
for( i = 0; i < n; ++i )
{
delete []psi[i];
delete []psin[i];
delete []qomega[i];
delete []qomegan[i];
delete []u[i];
delete []v[i];
}
return 0;
}
ПРИЛОЖЕНИЕ 2
#include "stdafx. h"
#include "iostream"
#include "fstream"
#include "vector"
using namespace std;
int i, j;
const int n=31,m=15;
const double lx=1.0;
double dx=lx/n, dt=0.0005, tx=dt/dx, t, k=1.4, Max=2.0;
double eps1, eps2, eps3, eps4, eps5, eps6;
double e[n],u[n],r[n],p[n],ee[n],uu[n],rr[n],pp[n];
double a1[n],a2[n],a3[n],aa1[n],aa2[n],aa3[n];
double b1[n],b2[n],b3[n],bb1[n],bb2[n],bb3[n];
a1[i][j]=(a1[i][j]+aa1[i][j]+tx*(bb1[i][j-1]-bb1[i][j])+ty*(cc1[i-1][j]-cc1[i][j]))/2;
a2[i][j]=(a2[i][j]+aa2[i][j]+tx*(bb2[i][j-1]-bb2[i][j])+ty*(cc2[i-1][j]-cc2[i][j]))/2;
a3[i][j]=(a3[i][j]+aa3[i][j]+tx*(bb3[i][j-1]-bb3[i][j])+ty*(cc3[i-1][j]-cc3[i][j]))/2;
a4[i][j]=(a4[i][j]+aa4[i][j]+tx*(bb4[i][j-1]-bb4[i][j])+ty*(cc4[i-1][j]-cc4[i][j]))/2;
r[i][j]=a1[i][j];
u[i][j]=a2[i][j]/a1[i][j];
v[i][j]=a3[i][j]/a1[i][j];
e[i][j]=a4[i][j]/a1[i][j];
p[i][j]=(k-1)*a1[i][j]*e[i][j];
void vivod ()
{
ofstream f("u. txt");
for(int i=0;i<n;i++)
{
f<<i<<" "<<u[i]<<endl;
}
f. close();
ofstream l("e. txt");
for(int i=0;i<n;i++)
{
l<<i<<" "<<e[i]<<endl;
}
{
r[0][j]=r[1][j];
u[0][j]=0.0;
v[0][j]=0.0;
e[0][j]=e[1][j];
p[0][j]=p[1][j];
r[n-1][j]=r[n-2][j];
u[n-1][j]=0.0;
v[n-1][j]=0.0;
e[n-1][j]=e[n-2][j];
p[n-1][j]=p[n-2][j];
}
l. close();
ofstream q("p. txt");
for(int i=0;i<n;i++)
{
q<<i<<" "<<p[i]<<endl;
}
q. close();
ofstream y("r. txt");
for(int i=0;i<n;i++)
{
y<<i<<" "<<r[i]<<endl;
}
y. close();
}
void pred ()
{
for(i=1; i<n-1; i++)
{
aa1[i]=a1[i]+tx*(b1[i]-b1[i+1]);
aa2[i]=a2[i]+tx*(b2[i]-b2[i+1]);
aa3[i]=a3[i]+tx*(b3[i]-b3[i+1]);
rr[i]=aa1[i];
uu[i]=aa2[i]/aa1[i];
ee[i]=aa3[i]/aa1[i];
pp[i]=(k-1)*aa1[i]*ee[i];
rr[0]=rr[1];
uu[0]=uu[1];
ee[0]=ee[1];
pp[0]=pp[1];
rr[n-1]=rr[n-2];
uu[n-1]=-uu[n-2];
ee[n-1]=ee[n-2];
pp[n-1]=pp[n-2];
}
{
b1[i][j]=r[i][j]*u[i][j];
b2[i][j]=r[i][j]*u[i][j]*u[i][j]+p[i][j];
b3[i][j]=r[i][j]*u[i][j]*v[i][j];
b4[i][j]=u[i][j]*(r[i][j]*e[i][j]+p[i][j]);
c1[i][j]=r[i][j]*v[i][j];
c2[i][j]=r[i][j]*u[i][j]*v[i][j]-Mu*(u[i][j]-u[i-1][j])/dy;
c3[i][j]=r[i][j]*v[i][j]*v[i][j]+p[i][j]-1.33*Mu*(v[i][j]-v[i-1][j])/dy;
c4[i][j]=v[i][j]*(r[i][j]*e[i][j]+p[i][j]);
}
}
void bbcom ()
{
for(i=0; i<n; i++)
{
bb1[i]=rr[i]*uu[i];
bb2[i]=rr[i]*uu[i]*uu[i]+pp[i];
bb3[i]=uu[i]*(rr[i]*ee[i]+pp[i]);
}
}
void correc ()
{
for(i=1; i<n-1; i++)
{
a1[i]=(a1[i]+aa1[i]+tx*(bb1[i-1]-bb1[i]))/2;
a2[i]=(a2[i]+aa2[i]+tx*(bb2[i-1]-bb2[i]))/2;
a3[i]=(a3[i]+aa3[i]+tx*(bb3[i-1]-bb3[i]))/2;
r[i]=a1[i];
u[i]=a2[i]/a1[i];
e[i]=a3[i]/a1[i];
p[i]=(k-1)*a1[i]*e[i];
r[0]=r[1];
u[0]=u[1];
e[0]=e[1];
p[0]=p[1];
r[n-1]=r[n-2];
u[n-1]=-u[n-2];
e[n-1]=e[n-2];
p[n-1]=p[n-2];
}
}
void bcom ()
{
for(i=0; i<n; i++)
{
b1[i]=r[i]*u[i];
b2[i]=r[i]*u[i]*u[i]+p[i];
b3[i]=u[i]*(r[i]*e[i]+p[i]);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
for(i=0; i<m; i++)
{
r[i]=k/((k-1)/(k+1)+2/(k+1)/Max/Max);
p[i]=2*k/(k+1)*Max*Max-(k-1)/(k+1);
u[i]=(2*Max-2/Max)/(k+1);//((Max-1/Max)*2)/(k+1);
e[i]=p[i]/(k-1)/r[i];
}
for(i=m; i<n; i++)
{
r[i]=1.4;
u[i]=0.0;
e[i]=1.7857;
p[i]=1.0;
}
for(i=0; i<n; i++)
{
a1[i]=r[i];
a2[i]=r[i]*u[i];
a3[i]=r[i]*e[i];
b1[i]=r[i]*u[i];
b2[i]=r[i]*u[i]*u[i]+p[i];
b3[i]=u[i]*(r[i]*e[i]+p[i]);
}
t=0;
do
{
pred();
bbcom();
correc();
bcom();
t=t+dt;
}while(t<20*dt);
vivod ();
system ("pause");
return 0;
}
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 |


