help with GetDP needed

Samuel Kvasnica kvasnica at iaee.tuwien.ac.at
Tue Nov 30 12:19:39 CET 1999


This is a multi-part message in MIME format.
--------------82D70A3304E631D20FC21837
Content-Type: text/plain; charset=iso-8859-2
Content-Transfer-Encoding: 7bit

> That's strange. Maybe a bug -> send me the .pro and .msh files.

o.k., I'm sending you .geo and .pro files. If you really want, I'll send you also .msh
but it has 1.9MB gzipped. Hope you'll be able to generate the mesh with gmsh. I'm
having strange segfault problems with it at higher node densities...

Sam

--------------82D70A3304E631D20FC21837
Content-Type: text/plain; charset=iso-8859-2;
 name="electrode.pro"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="electrode.pro"

/* -------------------------------------------------------------------
   File "electrode.pro"

   This file defines the problem dependant data structures for the
   static inductor problem.

   To compute the solution: getdp CoreSta -msh Core.msh -solve MagSta_a_2D
   To compute post-results: getdp CoreSta -msh Core.msh -pos Map_a
                         or getdp CoreSta -msh Core.msh -pos Cutb_a
   ------------------------------------------------------------------- */

Group {

  Air        = # 101 ;
  AirInf     = # 111 ; 
  Core       = #103;
  Ind1       = # 105 ;
  Ind2       = # 106 ;
  Ind3       = # 107 ;
  Ind4       = # 108 ;
  Ind5       = # 109 ;
  Ind6       = # 110 ;

  SurfaceGh0  = # 1100 ;
  SurfaceGInf = # 1102 ;

  DomainCC_Mag = Region[ {Air, AirInf, Ind1,Ind2,Ind3,Ind4,Ind5,Ind6, Core} ] ;
  DomainC_Mag  = Region[ {} ] ;

  DomainS_Mag  = Region[ {Ind1,Ind2,Ind3,Ind4,Ind5,Ind6} ] ;  // Stranded inductor

  DomainInf = Region[ {AirInf} ] ;
  Val_Rint = 350e-3 ;  Val_Rext = 370e-3 ;

  Domain_Mag = Region[ {DomainCC_Mag, DomainC_Mag} ] ;

}

Function {

  mu0 = 4.e-7 * Pi ;
  murCore = 1000.;

  nu [ #{Air, Ind1,Ind2,Ind3,Ind4,Ind5,Ind6, AirInf} ]  = 1. / mu0 ;
  nu [ Core ] = 1./(murCore*mu0);
  Sc[ #{Ind1,Ind2,Ind3,Ind4,Ind5,Ind6} ] = 2.3e-4 ;

}

Constraint {

  { Name MagneticVectorPotential_2D ;
    Case {
/*      { Region SurfaceGe0  ; Value 0. ; }*/
      { Region SurfaceGh0  ; Value 0. ; }
      { Region SurfaceGInf ; Value 0. ; }
    }
  }

  Val_I_1_ = 7 * 150.   ;

  { Name SourceCurrentDensityZ ;
    Case {
      { Region Ind1 ; Value +Val_I_1_/Sc[] ; }
      { Region Ind2 ; Value -Val_I_1_/Sc[] ; }
      { Region Ind3 ; Value +Val_I_1_/Sc[] ; }
      { Region Ind4 ; Value -Val_I_1_/Sc[] ; }
      { Region Ind5 ; Value -Val_I_1_/Sc[] ; }
      { Region Ind6 ; Value +Val_I_1_/Sc[] ; }      
    }
  }

}

Include "Jacobian2_Lib.pro"
Include "Integration_Lib.pro"
Include "MagSta_a_2D.pro"

PostOperation Map_a UsingPost MagSta_a_2D {
  Plot[ az, OnRegion Domain_Mag, File "Electrode_az.pos"] ;
  Plot[ a, OnRegion Domain_Mag, File "Electrode_a.pos"] ;
  Plot[ b, OnRegion Domain_Mag, File "Electrode_b.pos", Depth 0] ;  Plot[ h, OnRegion Domain_Mag, File "Electrode_h.pos", Depth 0] ;
}

e = 1.e-5 ;

PostOperation Cutb_a UsingPost MagSta_a_2D {
  Plot[ az, OnPlane {{0,-100,0}{0,100,0}{100,-100,0}}{200,100} , File "az_a", Format gnuplot2 ];
  Plot[ h, OnPlane {{0,-80,0}{70,-80,0}{0,80,0}}{30,60} , File "h_a", Format gnuplot2] ;
  Plot[ h, OnLine {{17,-160,0}{17,160,0}}{200} , File "bl_a", Format
gnuplot2, Depth 2] ;
}

PostOperation line UsingPost MagSta_a_2D {
  Plot[ b, OnLine {{0.025,-0.160,0}{0.025,0.160,0}}{200} , File "line_b", Format
gnuplot2] ;
}

PostOperation line_r UsingPost MagSta_a_2D {
  Plot[ b, OnLine {{0.017,0,0}{0.1,0,0}}{200} , File "line_r0", Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,0.03,0}{0.1,0.03,0}}{200} , File "line_r1", Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,-0.03,0}{0.1,-0.03,0}}{200} , File "line_r-1",Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,0.06,0}{0.1,0.06,0}}{200} , File "line_r2", Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,-0.06,0}{0.1,-0.06,0}}{200} , File "line_r-2",Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,0.09,0}{0.1,0.09,0}}{200} , File "line_r3", Format gnuplot2] ;
  Plot[ b, OnLine {{0.017,-0.09,0}{0.1,-0.09,0}}{200} , File "line_r-3",Format gnuplot2] ;
}

PostOperation line_z UsingPost MagSta_a_2D {
  Plot[ b, OnLine {{0.022,-0.09,0}{0.022,-0.06,0}}{200} , File "line_z1", Format gnuplot2] ;
  Plot[ b, OnLine {{0.022,-0.06,0}{0.022,-0.03,0}}{200} , File "line_z2", Format gnuplot2] ;
  Plot[ b, OnLine {{0.022,-0.03,0}{0.022,-0.0,0}}{200} , File "line_z3",Format gnuplot2] ;
  Plot[ b, OnLine {{0.022,0.0,0}{0.022,0.03,0}}{200} , File "line_z4", Format gnuplot2] ;
  Plot[ b, OnLine {{0.022,0.03,0}{0.022,0.06,0}}{200} , File "line_z5",Format gnuplot2] ;
  Plot[ b, OnLine {{0.022,0.06,0}{0.022,0.09,0}}{200} , File "line_z6", Format gnuplot2] ;
}


PostOperation field UsingPost MagSta_a_2D {
  Plot[ h, OnPlane {{0.017,0.11,0}{0.017,-0.11,0}{0.11,0.11,0}}{256,128},
        File "field_all", Format gnuplot2] ;
}

PostOperation field2 UsingPost MagSta_a_2D {
  Plot[ b, OnPlane {{0.017,0.11,0}{0.017,-0.11,0}{0.11,0.11,0}}{160,80},
        File "field_all", Format gnuplot2] ;
}

--------------82D70A3304E631D20FC21837
Content-Type: text/plain; charset=iso-8859-2;
 name="electrode.geo"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="electrode.geo"

x0 = 3.5e-3;
/*y0 = 72.5;*/
y0 = -92.5e-3;
tx = 2.5e-3;
ty = 5e-3;
dx = 9.25e-3;
dy = 25e-3;

/*xInt = 250;
xExt = 270;*/

yInt = 350e-3;
yExt = 370e-3;

/* 0.4,5,12,1 */
pCore = 0.5e-3;
/*pInt = 8e-3;*/
pInt=6e-3;
pExt = 10e-3;
pAxis = 0.8e-3;

Point(1) = {x0,y0,0,pCore};
Point(2) = {x0+tx+dx,y0,0,pCore};
Point(3) = {x0+tx+dx,y0+ty,0,pCore};
Point(4) = {x0+tx,y0+ty,0,pCore};
Point(5) = {x0+tx,y0+ty+dy,0,pCore};
Point(6) = {x0+tx+dx,y0+ty+dy,0,pCore};
Point(7) = {x0+tx+dx,y0+2*ty+dy,0,pCore};
Point(8) = {x0+tx,y0+2*ty+dy,0,pCore};
Point(9) = {x0+tx,y0+2*ty+2*dy,0,pCore};
Point(10) = {x0+tx+dx,y0+2*ty+2*dy,0,pCore};
Point(11) = {x0+tx+dx,y0+3*ty+2*dy,0,pCore};
Point(12) = {x0+tx,y0+3*ty+2*dy,0,pCore};
Point(13) = {x0+tx,y0+3*ty+3*dy,0,pCore};
Point(14) = {x0+tx+dx,y0+3*ty+3*dy,0,pCore};
Point(15) = {x0+tx+dx,y0+4*ty+3*dy,0,pCore};
Point(16) = {x0+tx,y0+4*ty+3*dy,0,pCore};
Point(17) = {x0+tx,y0+4*ty+4*dy,0,pCore};
Point(18) = {x0+tx+dx,y0+4*ty+4*dy,0,pCore};
Point(19) = {x0+tx+dx,y0+5*ty+4*dy,0,pCore};
Point(21) = {0,0,0,pAxis};
/*Point(22) = {xInt,0,0,pInt};*/
/*Point(23) = {xExt,-20,0,pExt};*/
/*Point(24) = {xExt,yExt,0,pExt};*/
Point(25) = {0,yExt,0,pExt};
Point(26) = {0,yInt,0,pInt};
/*Point(27) = {xInt,yInt,0,pInt};*/
Point(29) = {0,y0,0,pAxis};
Point(31) = {x0+tx,y0+5*ty+4*dy,0,pCore};
Point(32) = {x0+tx,y0+5*ty+5*dy,0,pCore};
Point(33) = {x0+tx+dx,y0+5*ty+5*dy,0,pCore};
Point(34) = {x0+tx+dx,y0+6*ty+5*dy,0,pCore};
Point(199) = {x0+tx,y0+6*ty+5*dy,0,pCore};
Point(200) = {x0+tx,y0+6*ty+6*dy,0,pCore};
Point(201) = {x0+tx+dx,y0+6*ty+6*dy,0,pCore};
Point(202) = {x0+tx+dx,y0+7*ty+6*dy,0,pCore};
Point(203) = {x0,y0+7*ty+6*dy,0,pCore};
Point(204) = {0,y0+7*ty+6*dy,0,pAxis};

Line(1) = {16,15};
Line(2) = {15,18};
Line(3) = {18,17};
Line(4) = {17,16};
Line Loop(5) = {2,3,4,1};
Plane Surface(6) = {5}; /* ind 1 */
Line(7) = {12,11};
Line(8) = {11,14};
Line(9) = {14,13};
Line(10) = {13,12};
Line Loop(11) = {8,9,10,7};
Plane Surface(12) = {11}; /* ind 2 */
Line(13) = {8,7};
Line(14) = {7,10};
Line(15) = {10,9};
Line(16) = {9,8};
Line Loop(17) = {14,15,16,13}; /* ind 3 */
Plane Surface(18) = {17};
Line(19) = {4,3};
Line(20) = {3,6};
Line(21) = {6,5};
Line(22) = {5,4};
Line Loop(23) = {20,21,22,19}; /*ind 4*/
Plane Surface(24) = {23};
Line(25) = {1,2};
Line(26) = {2,3};
Line(27) = {6,7};
Line(28) = {10,11};
Line(29) = {14,15};
Line(30) = {18,19};
Line(1105) = {29,1};
/*Line(1107) = {25,26};
Line(1108) = {25,24};
Line(1109) = {24,23};
Line(1110) = {23,28};
Line(1111) = {28,21};
Line(1112) = {21,29};
Line(1113) = {21,22};
Line(1114) = {22,27};
Line(1115) = {27,26};*/
/*Line Loop(1120) = {-1107,1108,1109,1110,1111,1113,1114,1115};*/
/*Plane Surface(1121) = {1120};*/ /* infinity */
Line(1122) = {19,31};
Line(1123) = {31,32};
Line(1124) = {32,33};
Line(1125) = {33,34};
Line(1126) = {19,33};
Line Loop(1134) = {-1124,-1123,-1122,1126};
Plane Surface(1135) = {1134}; /* ind 5 */

Point(198)={0,-yInt,0,pInt};
Point(197)={0,-yExt,0,pExt};
Circle(200)={197,21,25}; /*infinity*/
Circle(201)={198,21,26}; /*internal border*/
Line(1138) = {26,25};
Line(1141) = {198,29};
Line(1142) = {197,198};

Line(1143) = {29,21};
Line(1144) = {21,204};
Line(1145) = {204,26};
Line(1146) = {204,203};
Line(1147) = {34,199};
Line(1148) = {199,200};
Line(1149) = {200,201};
Line(1150) = {201,202};
Line(1151) = {202,203};
Line(1152) = {34,201};
Line(1153) = {203,1};
Line Loop(1154) = {-1149,-1148,-1147,1152};
Plane Surface(1155) = {1154}; /* Ind 6 */
Line Loop(1156) = {25,26,-19,-22,-21,27,-13,-16,-15,28,-7,-10,-9,29,-1,-4,-3,30,1122,1123,1124,1125,1147,1148,1149,1150,1151,1153};
Plane Surface(1157) = {1156}; /* Core */
Line Loop(1158) = {1146,1153,-1105,1143,1144};
Plane Surface(1159) = {1158}; /* Air 1 */
Line Loop(1160) = {25,26,20,27,14,28,8,29,2,30,1126,1125,1152,1150,1151,-1146,1145,-201,1141,1105};
Plane Surface(1161) = {1160}; /* Air 2 */
Line Loop(1162) = {1138,-200,1142,201}; /* Infinity */
Plane Surface(1163) = {1162};

Physical Surface(103) = {1157}; /* core */
/*Physical Surface(102) = {6,12,18,24};*/ /* inductor */
Physical Surface(101) = {1159,1161}; /* air */
Physical Surface(111) = {1163}; /* infinity air */
Physical Surface(105) = {6}; /* inductor 1 */
Physical Surface(106) = {12}; /* inductor 2 */
Physical Surface(107) = {18}; /* inductor 3 */
Physical Surface(108) = {24}; /* inductor 4 */
Physical Surface(109) = {1135}; /* inductor 5 */
Physical Surface(110) = {1155}; /* inductor 6 */

/*Physical Line(1102) = {28,23,24,25};*/ /* SurfaceGh0 */
/*Physical Line(1102) = {200,-1138,-1139,-1140,-1141,-1142};*/

/*Physical Line(1102) = {1143,1144,1145,1138,-200,1142,1141};*/

Physical Line(1100) = {1142,1141,1143,1144,1145,1138}; /* SurfaceGh0 */
Physical Line(1102) = {200}; /* SurfaceGInf */



--------------82D70A3304E631D20FC21837--