cylinder-operator: use operator.h EC calc
This commit is contained in:
parent
e64c67de11
commit
fe483946d2
@ -414,11 +414,26 @@ void Operator::InitExcitation()
|
|||||||
void Operator::Calc_ECOperatorPos(int n, unsigned int* pos)
|
void Operator::Calc_ECOperatorPos(int n, unsigned int* pos)
|
||||||
{
|
{
|
||||||
unsigned int i = MainOp->SetPos(pos[0],pos[1],pos[2]);
|
unsigned int i = MainOp->SetPos(pos[0],pos[1],pos[2]);
|
||||||
GetVV(n,pos[0],pos[1],pos[2]) = (1-dT*EC_G[n][i]/2/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
if (EC_C[n][i]>0)
|
||||||
GetVI(n,pos[0],pos[1],pos[2]) = (dT/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
{
|
||||||
|
GetVV(n,pos[0],pos[1],pos[2]) = (1-dT*EC_G[n][i]/2/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
||||||
GetII(n,pos[0],pos[1],pos[2]) = (1-dT*EC_R[n][i]/2/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
GetVI(n,pos[0],pos[1],pos[2]) = (dT/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
||||||
GetIV(n,pos[0],pos[1],pos[2]) = (dT/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GetVV(n,pos[0],pos[1],pos[2]) = 0;
|
||||||
|
GetVI(n,pos[0],pos[1],pos[2]) = 0;
|
||||||
|
}
|
||||||
|
if (EC_L[n][i]>0)
|
||||||
|
{
|
||||||
|
GetII(n,pos[0],pos[1],pos[2]) = (1-dT*EC_R[n][i]/2/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
||||||
|
GetIV(n,pos[0],pos[1],pos[2]) = (dT/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GetII(n,pos[0],pos[1],pos[2]) = 0;
|
||||||
|
GetIV(n,pos[0],pos[1],pos[2]) = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int Operator::CalcECOperator()
|
int Operator::CalcECOperator()
|
||||||
|
@ -159,32 +159,6 @@ int Operator_Cylinder::CalcECOperator()
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void Operator_Cylinder::Calc_ECOperatorPos(int n, unsigned int* pos)
|
|
||||||
{
|
|
||||||
unsigned int i = MainOp->SetPos(pos[0],pos[1],pos[2]);
|
|
||||||
if (EC_C[n][i]>0)
|
|
||||||
{
|
|
||||||
vv[n][pos[0]][pos[1]][pos[2]] = (1-dT*EC_G[n][i]/2/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
|
||||||
vi[n][pos[0]][pos[1]][pos[2]] = (dT/EC_C[n][i])/(1+dT*EC_G[n][i]/2/EC_C[n][i]);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
vv[n][pos[0]][pos[1]][pos[2]] = 0;
|
|
||||||
vi[n][pos[0]][pos[1]][pos[2]] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (EC_L[n][i]>0)
|
|
||||||
{
|
|
||||||
ii[n][pos[0]][pos[1]][pos[2]] = (1-dT*EC_R[n][i]/2/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
|
||||||
iv[n][pos[0]][pos[1]][pos[2]] = (dT/EC_L[n][i])/(1+dT*EC_R[n][i]/2/EC_L[n][i]);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ii[n][pos[0]][pos[1]][pos[2]] = 0;
|
|
||||||
iv[n][pos[0]][pos[1]][pos[2]] = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Operator_Cylinder::ApplyElectricBC(bool* dirs)
|
void Operator_Cylinder::ApplyElectricBC(bool* dirs)
|
||||||
{
|
{
|
||||||
if (dirs==NULL) return;
|
if (dirs==NULL) return;
|
||||||
|
@ -50,8 +50,6 @@ protected:
|
|||||||
virtual void InitOperator();
|
virtual void InitOperator();
|
||||||
virtual void Reset();
|
virtual void Reset();
|
||||||
|
|
||||||
virtual inline void Calc_ECOperatorPos(int n, unsigned int* pos);
|
|
||||||
|
|
||||||
bool CC_closedAlpha;
|
bool CC_closedAlpha;
|
||||||
bool CC_R0_included;
|
bool CC_R0_included;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user