Skip to content
Snippets Groups Projects
Commit f665f33f authored by Ludovic Noels's avatar Ludovic Noels
Browse files

Merge branch 'vinayak' into 'master'

Merge branch vinayak into master

See merge request !435
parents 02d66572 76cc588d
No related branches found
No related tags found
1 merge request!435Merge branch vinayak into master
......@@ -87,8 +87,8 @@ magpot0_y_vac, magpot0_z_vac, Irms, freq, nTurnsCoil, coilLx, coilLy, coilLz, co
# creation of ElasticField
SMPfield = 10 # number of the field (physical number of SMP region)
Vacfield = 20 # number of the field (physical number of Vacuum)
SurfSMPStart = 6 # delta voltage surface
SurfSMPEnd = 5 # ground voltage surface
SurfSMPStart = 3 # delta voltage surface
SurfSMPEnd = 4 # ground voltage surface
space1 = 0 # function space (Lagrange=0)
......@@ -146,7 +146,7 @@ mysolver.displacementBC("Volume",Vacfield,2,0.0)
cyclicFunctionTemp1=cycleFunctionTime(0., tinitial,ftime,tinitial);
mysolver.initialBC("Volume","Position",SMPfield,3,tinitial)
mysolver.initialBC("Volume","Position",Vacfield,3,tinitial)
mysolver.displacementBC("Face",7,3,cyclicFunctionTemp1)
mysolver.displacementBC("Face",8,3,cyclicFunctionTemp1)
#mysolver.displacementBC("Face",5,3,cyclicFunctionTemp1)
#mysolver.displacementBC("Face",6,3,cyclicFunctionTemp1)
#mysolver.displacementBC("Face",SurfSMPStart,3,cyclicFunctionTemp1)
......@@ -165,12 +165,12 @@ mysolver.displacementBC("Face",SurfSMPEnd,4,cyclicFunctionvolt2)
#magentic
mysolver.curlDisplacementBC("Face",SurfSMPStart,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",SurfSMPEnd,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",3,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",4,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",7,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",5,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",6,5,0.0) # comp may also be 5
mysolver.curlDisplacementBC("Face",8,5,0.0) # comp may also be 5
#Gauging the edges using tree-cotree method
PhysicalCurves = "" # input required as a string of comma separated ints
PhysicalSurfaces = "3,4,5,6,7" # input required as a string of comma separated ints
PhysicalSurfaces = "3,4,5,6,8" # input required as a string of comma separated ints
PhysicalVolumes = "10,20" # input required as a string of comma separated ints
OutputPhysical = 55 # input required as a int
mysolver.createTreeForBC(PhysicalCurves,PhysicalSurfaces,PhysicalVolumes,OutputPhysical)
......@@ -206,9 +206,9 @@ mysolver.archivingForceOnPhysicalGroup("Face", 7, 5, 1);
mysolver.solve()
check = TestCheck()
check.equal(2.200194e+09,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPStart, 3),1.e-5)
check.equal(-1.232263e+09,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPStart, 4),1.e-5)
check.equal(1.232263e+09,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPEnd, 4),1.e-5)
check.equal(4838094703.964682,mysolver.getArchivedForceOnPhysicalGroup("Face", 7, 5),1.e-5)
check.equal(0.000000e+00,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPStart, 3),1.e-5)
check.equal(-1.273695e+09,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPStart, 4),1.e-5)
check.equal(1.273695e+09,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSMPEnd, 4),1.e-5)
check.equal(1.387338e+08,mysolver.getArchivedForceOnPhysicalGroup("Face", 7, 5),1.e-5)
......@@ -302,8 +302,8 @@ mysolver.archivingNodeDisplacement(SmpRefPoint,4,1);
mysolver.solve()
check = TestCheck()
check.equal(0.000000e+00,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 3),1.e-5)
check.equal(-9.427355e-10,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 4),1.e1)
check.equal(9.484542e-05,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfInd, 4),1.e1)
check.equal(-7.110362e-08,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfVacOut, 4),1.e-1)
check.equal(-4.393794e-01,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 5),1.e-4)
check.equal(-3.599847e-08,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 4),1.e1)
check.equal(-3.318414e-05,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfInd, 4),1.e1)
check.equal(1.0116289e-07,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfVacOut, 4),1.e-1)
check.equal(0.1130046,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 5),1.e-5)
......@@ -48,9 +48,9 @@ BooleanFragments{ Volume{vAir(), vCoreE(), vCoil()}; Delete; }{} // This needs t
// Adapting mesh size
// characteristic lengths
lc0 = Pi*Rint/3; // /10; // air
lc1 = wcoil/2; /// /3; // coil
lc2 = R/3; ////6; // smp
lc0 = Pi*Rint/5; // air
lc1 = wcoil/3; // coil
lc2 = R/2; // smp
Characteristic Length { PointsOf{ Volume{vAir(0)}; } } = lc0;
Characteristic Length { PointsOf{ Volume{vCoil()}; } } = lc1;
......
This diff is collapsed.
......@@ -304,12 +304,12 @@ mysolver.solve()
check = TestCheck()
check.equal(0.000000e+00,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 3),1.e-5)
check.equal(-3.650220e-08,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 4),1.e-2)
check.equal(-3.588918e-08,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 4),1.e-2)
check.equal(-3.318414e-05,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfInd, 4),1.e-5)
check.equal(1.011629e-07,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfVacOut, 4),1.e-5)
check.equal(3.547468e+01,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 5),1.e-5)
check.equal(-8.683505e+01,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfInd, 5),1.e-5)
check.equal(-1.150760e+02,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfVacOut, 5),1.e-5)
check.equal(2.429194e+01,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfSmp, 5),1.e-5)
check.equal(-8.91641e+01,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfInd, 5),1.e-5)
check.equal(-1.15082e+02,mysolver.getArchivedForceOnPhysicalGroup("Face", SurfVacOut, 5),1.e-5)
check.equal(0.0,mysolver.getArchivedNodalValue(SmpRefPoint,0,mysolver.displacement),1.e-3)
check.equal(0.0,mysolver.getArchivedNodalValue(SmpRefPoint,1,mysolver.displacement),1.e-3)
check.equal(0.0,mysolver.getArchivedNodalValue(SmpRefPoint,2,mysolver.displacement),1.e-3)
......
......@@ -260,7 +260,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
{
ipvcur->getConstRefToDLocalVariableDStrain()[k].print("dpdE Analyique");
}
/*if (this->getMacroSolver() != NULL)
if (this->getMacroSolver() != NULL)
{
if (this->getMacroSolver()!=NULL)
{
......@@ -268,7 +268,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
ipvcur->getConstRefToDIrreversibleEnergyDDeformationGradient().print("dEnedE Analytique");
}
}
}*/
}
for (int i=0; i< numNonLocalVars; i++)
{
for (int j=0; j< numNonLocalVars; j++)
......@@ -276,9 +276,9 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
Msg::Info("dpdp Analytique: %e",ipvcur->getConstRefToDLocalVariableDNonLocalVariable()(j,i));
}
ipvcur->getConstRefToDStressDNonLocalVariable()[i].print("dPdp Analytique");
//Msg::Info("dEnedp Analytique: %e",ipvcur->getConstRefToDIrreversibleEnergyDNonLocalVariable(i));
Msg::Info("dEnedp Analytique: %e",ipvcur->getConstRefToDIrreversibleEnergyDNonLocalVariable(i));
 
/*for (unsigned int j = 0; j < numCurlDof; ++j)
for (unsigned int j = 0; j < numCurlDof; ++j)
{
ipvcur->getConstRefTodVectorFielddNonLocalVariable()[j][i].print("dMagneticVectorField dp Analytique");
ipvcur->getConstRefTodSourceVectorFielddNonLocalVariable()[j][i].print("dSourceVectorField dp Analytique");
......@@ -292,11 +292,12 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
Msg::Info("d Mechanical source dp Analytique: %e", ipvcur->getRefTodMechanicalSourcedNonLocalVariable()(j,i));
Msg::Info("dEMFieldSource dp Analytique: %e",ipvcur->getConstRefTodEMFieldSourcedNonLocalVariable()(j,i));
ipvcur->getConstRefTodElecDisplacementdNonLocalVariable()[j][i].print("dElecDisplacement dp Analytique");
}*/
}
/*for (int i=0; i< numExtraDof; i++)
}
for (int i=0; i< numExtraDof; i++)
{
Msg::Info("Field Analytique: %e",ipvcur->getConstRefToField(i)); // FLE
ipvcur->getConstRefToGradField()[i].print("GradField Analytique");
ipvcur->getConstRefToFlux()[i].print("Flux Analytique"); // FLE
ipvcur->getConstRefToElectricDisplacement()[i].print("ElecDisplacement Analytique");
Msg::Info("ThermSource Analytique: %e",ipvcur->getConstRefToFieldSource()(i)); // FLE
......@@ -343,6 +344,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
}
for (unsigned int i = 0; i < numCurlDof; ++i)
{
ipvcur->getConstRefToSourceVectorField(i).print("SourceVectorField Analytique");
ipvcur->getConstRefTodPdVectorPotential()[i].print("dPdMagneticVectorPotential Analytique");
ipvcur->getConstRefTodPdVectorCurl()[i].print("dPdMagneticVectorCurl Analytique");
ipvcur->getConstRefTodVectorFielddF()[i].print("dMagneticVectorField dF Analytique");
......@@ -374,7 +376,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
ipvcur->getRefTodLocalVariabledVectorPotential()[k][i].print("dp dMagneticVectorPotential Analytique");
ipvcur->getRefTodLocalVariabledVectorCurl()[k][i].print("dp dMagneticVectorCurl Analytique");
}
}*/
}
 
#endif
if (stiff)
......@@ -634,12 +636,12 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
{
ipvcur->getConstRefToDLocalVariableDStrain()[k].print("dpdE Numerique");
}
/*if (this->getMacroSolver() != NULL)
if (this->getMacroSolver() != NULL)
{
if (this->getMacroSolver()->withPathFollowing() and this->getMacroSolver()->getPathFollowingMethod() == pathFollowingManager::LOCAL_BASED){
ipvcur->getConstRefToDIrreversibleEnergyDDeformationGradient().print("dEnedE Numerique");
}
}*/
}
for (int i=0; i< numNonLocalVars; i++)
{
for (int j=0; j< numNonLocalVars; j++)
......@@ -647,9 +649,9 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
Msg::Info("dpdp Numerique: %e",ipvcur->getConstRefToDLocalVariableDNonLocalVariable()(j,i));
}
ipvcur->getConstRefToDStressDNonLocalVariable()[i].print("dPdp Numerique");
//Msg::Info("dEnedp Numerique: %e",ipvcur->getConstRefToDIrreversibleEnergyDNonLocalVariable(i));
Msg::Info("dEnedp Numerique: %e",ipvcur->getConstRefToDIrreversibleEnergyDNonLocalVariable(i));
 
/*const unsigned int extradof_T = 0; // Thermal field EM source
const unsigned int extradof_T = 0; // Thermal field EM source
for (unsigned int j = 0; j < numCurlDof; ++j)
{
ipvcur->getConstRefTodVectorFielddNonLocalVariable()[j][i].print("dMagneticVectorField dp Numerique");
......@@ -664,11 +666,12 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
Msg::Info("d Mechanical source dp Numerique: %e", ipvcur->getRefTodMechanicalSourcedNonLocalVariable()(j,i));
Msg::Info("dEMFieldSource dp Numerique: %e",ipvcur->getConstRefTodEMFieldSourcedNonLocalVariable()(j,i));
ipvcur->getConstRefTodElecDisplacementdNonLocalVariable()[j][i].print("dElecDisplacement dp Numerique");
}*/
}
/*for (int i=0; i< numExtraDof; i++)
}
for (int i=0; i< numExtraDof; i++)
{
Msg::Info("Field Numerique: %e",ipvcur->getConstRefToField(i)); // FLE
ipvcur->getConstRefToGradField()[i].print("GradField Numerique");
ipvcur->getConstRefToFlux()[i].print("Flux Numerique"); // FLE
ipvcur->getConstRefToElectricDisplacement()[i].print("ElecDisplacement Numerique");
Msg::Info("ThermSource Numerique: %e",ipvcur->getConstRefToFieldSource()(i)); // FLE
......@@ -715,6 +718,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
for (unsigned int i = 0; i < numCurlDof; ++i)
{
const unsigned int extradof_T = 0; // Thermal field EM source
ipvcur->getConstRefToSourceVectorField(i).print("SourceVectorField Numerique");
ipvcur->getConstRefTodPdVectorPotential()[i].print("dPdMagneticVectorPotential Numerique");
ipvcur->getConstRefTodPdVectorCurl()[i].print("dPdMagneticVectorCurl Numerique");
ipvcur->getConstRefTodVectorFielddF()[i].print("dMagneticVectorField dF Numerique");
......@@ -746,7 +750,7 @@ void dG3DMaterialLawWithTangentByPerturbation::stress(IPVariable* ipv, const IPV
ipvcur->getRefTodLocalVariabledVectorPotential()[k][i].print("dp dMagneticVectorPotential Numerique");
ipvcur->getRefTodLocalVariabledVectorCurl()[k][i].print("dp dMagneticVectorCurl Numerique");
}
}*/
}
#endif
}
}
......@@ -11133,10 +11137,10 @@ const bool checkfrac, const bool dTangent)
double &dw_TdV = ipvcur->getRefTodThermalSourcedV();
STensor3& dw_TdF = ipvcur->getRefTodThermalSourcedF();
 
double &w_V = ipvcur->getRefToThermalSource();
double &dw_VdT = ipvcur->getRefTodThermalSourcedT();
double &dw_VdV = ipvcur->getRefTodThermalSourcedV();
STensor3& dw_VdF = ipvcur->getRefTodThermalSourcedF();
double &w_V = ipvcur->getRefToVoltageSource();
double &dw_VdT = ipvcur->getRefTodVoltageSourcedT();
double &dw_VdV = ipvcur->getRefTodVoltageSourcedV();
STensor3& dw_VdF = ipvcur->getRefTodVoltageSourcedF();
 
ipvcur->setRefToTherConductivity(this->lineark10);
ipvcur->setRefToCrossTherConductivity(this->lineark20);
......@@ -11447,10 +11451,10 @@ const bool checkfrac, const bool dTangent)
double &dw_TdV = ipvcur->getRefTodThermalSourcedV();
STensor3& dw_TdF = ipvcur->getRefTodThermalSourcedF();
 
double &w_V = ipvcur->getRefToThermalSource();
double &dw_VdT = ipvcur->getRefTodThermalSourcedT();
double &dw_VdV = ipvcur->getRefTodThermalSourcedV();
STensor3& dw_VdF = ipvcur->getRefTodThermalSourcedF();
double &w_V = ipvcur->getRefToVoltageSource();
double &dw_VdT = ipvcur->getRefTodVoltageSourcedT();
double &dw_VdV = ipvcur->getRefTodVoltageSourcedV();
STensor3& dw_VdF = ipvcur->getRefTodVoltageSourcedF();
 
ipvcur->setRefToTherConductivity(this->lineark10);
ipvcur->setRefToCrossTherConductivity(this->lineark20);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment