FastFieldSolvers Forum
FastFieldSolvers Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 FastFieldSolvers
 FastHenry2
 get_new_x_y: Vector never hits edge of box?

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Screensize:
UserName:
Password:
Antispam question: What do MOONwalk and MOONdance have in common?
Answer:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON

 
   

T O P I C    R E V I E W
dnl Posted - Sep 12 2007 : 12:09:31
When using a non-uniform ground plane and "contact connection", I have sometimes had the error message:

Internal error in nonuniform plane code: get_new_x_y: Vector never hits edge of box?

Changing the "contact initial_mesh_grid" does get round the problem but there is little in the error message, or the changes required to solve the problem that explains why it is occuring.

I initially used "contact equiv_rect" instead of "contact connection" to get fasthenry to run, proving the rest of my input stack, and then changed it back, and adjusted the initial grid setting. However, "contact equiv_rect" is not supported by the visualisation routines (as noted in seperate post in that forum)

I have, by mistake, used "contact initial_mesh_grid" istead of "contact initial_grid", which may have made this problem worse!



David Lee
Power Electronics, UK
5   L A T E S T    R E P L I E S    (Newest First)
schaper Posted - Aug 01 2010 : 12:28:43
quote:
Originally posted by Enrico

1. The "Internal error in nonuniform plane code: get_new_x_y: Vector never hits edge of box?" bug is under analysis, I'll let you know the result.

2. Regarding MatLab zbuf output, this is not a much used feature, since people usually rely on FastModel for visualization. It might be that is buggish; did you EVER get a valid MatLab file in this way?

3. Let's not confuse things together. The '-f' option, together with zbuf program, are for geometrical visualization only, not to show current distributions. Current distributions can be output with '-d grids' option in FastHenry, and then visualized loading the output files in MatLab. This feature has been tested, is used and should work. Examples are described in FastHenry's user manual, paragraph 4

Enrico





Has the "Internal error in nonuniform plane code: get_new_x_y: Vector never hits edge of box?" bug been resolved? I am getting this error with a very simple file:

* Plane with multiple ports
*
.units mils
.default sigma=1470
*
*
gplane x1=0 y1=0 z1=0 x2=1000 y2=0 z2=0 x3=1000 y3=1200 z3=0 thick=20 file=NONE
+ contact connection nb1 (500,100,20,800,50, 2.5)
+ contact connection nb2 (200,1100,20,200,50, 2.5)
+ contact connection nb3 (800,1100,20,200,50, 2.5)
+ contact initial_grid (4,5)
*
.external nb1 nb2
.external nb1 nb3
*
.freq fmin=1e3 fmax=1e6 ndec=1
.end


I get this error many times on several different cases. Sometimes adjusting the initial grid parameters removes it. On one case I commented out the initial grid line and it worked.

I can provide other simple examples, if that would help.
Enrico Posted - Sep 25 2007 : 17:47:12
1. The "Internal error in nonuniform plane code: get_new_x_y: Vector never hits edge of box?" bug is under analysis, I'll let you know the result.

2. Regarding MatLab zbuf output, this is not a much used feature, since people usually rely on FastModel for visualization. It might be that is buggish; did you EVER get a valid MatLab file in this way?

3. Let's not confuse things together. The '-f' option, together with zbuf program, are for geometrical visualization only, not to show current distributions. Current distributions can be output with '-d grids' option in FastHenry, and then visualized loading the output files in MatLab. This feature has been tested, is used and should work. Examples are described in FastHenry's user manual, paragraph 4

Enrico

dnl Posted - Sep 14 2007 : 15:34:33
I have also tried running the same file with the "-f hierarchy" option, generating a heir.qui file, and then feeding that through zbuf -m to get heir.mat. However, this file is then not readable in Matlab.
On slightly more complex files, the "-f both", "zbuf -m" sequence also creates files that Matlab can not read.

Ideally, I would like to be able to select a file in Matlab, and have Matlab plot the current densities. I think the raw components are present to do this, but it is probably a bigger project than I can take on right now. Has anyone else done any work along this line?


David Lee
Power Electronics, UK
dnl Posted - Sep 14 2007 : 11:18:33
quote:
Originally posted by Enrico

Can you provide a simple offending input file?

Enrico



As follows - change the grid in plane G1a to remove error:

*Gate drive printed circuit board
* September 2007 David Lee
.units MM
.default z=0 sigma=5.8e4
* 3 ounce copper is 105um thich
* multi layer board with overall thichness of 1.6mm gives insulatation thickness as about 0.2mm
*Layers:
* Main power
* Ov earth plane

*Layer 2 earth plane - model as simple plane with holes in it
Glayer2 x1=0 x2=41 x3=41 y1=24.3 y2=24.3 y3=-24.3 z1=-0.3 z2=-0.3 z3=-0.3 thick=0.105
+ seg1 = 30 seg2 = 40
+ hole circle (24.5,0,-0.3,5)
+ hole rect (0,4,-0.3,16.4,5.5,-0.3)
+ hole rect (0,-4,-0.3,16.4,-5.5,-0.3)
+ hole circle (11.4,11.8,-0.3,1.5)
+ hole circle (11.4,-11.8,-0.3,1.5)
+ hole circle (40,11.8,-0.3,1.5)
+ hole circle (40,-11.8,-0.3,1.5)
* connection points to plane
+NVEA (11,-21,-0.3)
+NVEB (13.85,-21,-0.3)
+NVEC (16.7,-21,-0.3)
+NVED (19.55,-21,-0.3)
+NVEE (22.4,-21,-0.3)
+NVEF (25.25,-21,-0.3)
+NVEG (28.1,-21,-0.3)
+NVEH (30.95,-21,-0.3)
+NVEI (33.8,-21,-0.3)
+NVEJ (36.65,-21,-0.3)
+NEVA (11,21,-0.3)
+NEVB (13.85,21,-0.3)
+NEVC (16.7,21,-0.3)
+NEVD (19.55,21,-0.3)
+NEVE (22.4,21,-0.3)
+NEVF (25.25,21,-0.3)
+NEVG (28.1,21,-0.3)
+NEVH (30.95,21,-0.3)
+NEVI (33.8,21,-0.3)
+NEVJ (36.65,21,-0.3)
+NETA (8,0,-0.3)
+NETB (14,0,-0.3)
+NETC (11,-3,-0.3)
+NETD (11,3,-0.3)
+NETE (8.9,-2.1,-0.3)
+NETF (8.9,2.1,-0.3)
+NETG (13.1,-2.1,-0.3)
+NETH (13.1,2.1,-0.3)
+NETI (6.5,0,-0.3)
+NETJ (4,0,-0.3)
+NETK (1.5,0,-0.3)
+NETL (6.5,2.5,-0.3)
+NETM (4,2.5,-0.3)
+NETN (1.5,2.5,-0.3)
+NETO (6.5,-2.5,-0.3)
+NETP (4,-2.5,-0.3)
+NETQ (1.5,-2.5,-0.3)
+NTEST (34.1,0,-0.3)

*top surface connection to cathode
G1a x1=0 x2=14.7 x3=14.7 y1=-4 y2=-4 y3=4 z1=0 z2=0 z3=0 thick=0.105
+NETA1 (8,0,0)
+NETB1 (14,0,0)
+NETC1 (11,-3,0)
+NETD1 (11,3,0)
+NETE1 (8.9,-2.1,0)
+NETF1 (8.9,2.1,0)
+NETG1 (13.1,-2.1,0)
+NETH1 (13.1,2.1,0)
+NETI1 (6.5,0,0)
+NETJ1 (4,0,0)
+NETK1 (1.5,0,0)
+NETL1 (6.5,2.5,0)
+NETM1 (4,2.5,0)
+NETN1 (1.5,2.5,0)
+NETO1 (6.5,-2.5,0)
+NETP1 (4,-2.5,0)
+NETQ1 (1.5,-2.5,0)
+ file=NONE
+ contact initial_grid (10, 10)
*+ contact equiv_rect n_kathode (3,-1,0,2,4)
+contact connection n_kathode (9.5,-1,0,2,2,2)

*Vias to the output earth tab
*need equivs only on old style earth plane
NETA2 y=0 X=8 Z=-0.3
EETA NETA1 NETA2 W=0.7 H=0.7
.Equiv NETA NETA2
NETB2 y=0 X=14 Z=-0.3
EETB NETB1 NETB2 W=0.7 H=0.7
.Equiv NETB NETB2
NETC2 y=-3 X=11 Z=-0.3
EETC NETC1 NETC2 W=0.7 H=0.7
.Equiv NETC NETC2
NETD2 y=3 X=11 Z=-0.3
EETD NETD1 NETD2 W=0.7 H=0.7
.Equiv NETD NETD2
NETE2 y=-2.1 X=8.9 Z=-0.3
EETE NETE1 NETE2 W=0.7 H=0.7
.Equiv NETE NETE2
NETF2 y=2.1 X=8.9 Z=-0.3
EETF NETF1 NETF2 W=0.7 H=0.7
.Equiv NETF NETF2
NETG2 y=-2.1 X=13.1 Z=-0.3
EETG NETG1 NETG2 W=0.7 H=0.7
.Equiv NETG NETG2
NETH2 y=2.1 X=13.1 Z=-0.3
EETH NETH1 NETH2 W=0.7 H=0.7
.Equiv NETH NETH2
NETI2 y=0 X=6.5 Z=-0.3
EETI NETI1 NETI2 W=0.7 H=0.7
.Equiv NETI NETI2
NETJ2 y=0 X=4 Z=-0.3
EETJ NETJ1 NETJ2 W=0.7 H=0.7
.Equiv NETJ NETJ2
NETK2 y=0 X=1.5 Z=-0.3
EETK NETK1 NETK2 W=0.7 H=0.7
.Equiv NETK NETK2
NETL2 y=2.5 X=6.5 Z=-0.3
EETL NETL1 NETL2 W=0.7 H=0.7
.Equiv NETL NETL2
NETM2 y=2.5 X=4 Z=-0.3
EETM NETM1 NETM2 W=0.7 H=0.7
.Equiv NETM NETM2
NETN2 y=2.5 X=1.5 Z=-0.3
EETN NETN1 NETN2 W=0.7 H=0.7
.Equiv NETN NETN2
NETo2 y=-2.5 X=6.5 Z=-0.3
EETo NETo1 NETo2 W=0.7 H=0.7
.Equiv NETo NETo2
NETP2 y=-2.5 X=4 Z=-0.3
EETP NETP1 NETP2 W=0.7 H=0.7
.Equiv NETP NETP2
NETQ2 y=-2.5 X=1.5 Z=-0.3
EETQ NETQ1 NETQ2 W=0.7 H=0.7
.Equiv NETQ NETQ2


*gate connection
G1b x1=15.2 x2=34.1 x3=34.1 y1=-10 y2=-10 y3=10 z1=0 z2=0 z3=0 thick=0.105 file=NONE
+ contact initial_grid (21, 22)
*+contact connection nx_g1b_1 (20,-2,0,1,1,4)
*+contact connection nx_g1b_2 (30,-2,0,1,1,4)
*+ contact equiv_rect n_gate (20,-2,0,1,4)
+ contact connection n_gate (23,-1,0,2,2,2)
*Translating contact connection nx_g1b_2 into:
*contact decay_rect (30,0,0,1,1,0.5,0.5,-1,-1)
*+ contact equiv_rect nx_g1b_2 (30,-2,0,1,4)
+ contact connection nx_g1b_2 (30,-1,0,2,2,2)
+NVGA1 (21.0,0,0)
* above contact out of place to be unique location
+NVGB1 (27.5,0,0)
+NVGC1 (24.5,-3,0)
+NVGD1 (24.5,3,0)
+NVGE1 (22.4,-2.1,0)
+NVGF1 (22.4,2.1,0)
+NVGG1 (26.6,-2.1,0)
+NVGH1 (26.6,2.1,0)


n_earth x=34.1 y=0 z=-0.3
.equiv ntest n_earth

.equiv n_gate n_kathode

.external nx_g1b_2 n_earth
.freq fmin=1e-1 fmax=1e8 ndec=0.5
.end



David Lee
Power Electronics, UK
Enrico Posted - Sep 12 2007 : 17:13:02
Can you provide a simple offending input file?

Enrico

FastFieldSolvers Forum © 2020 FastFieldSolvers S.R.L. Go To Top Of Page
Powered By: Snitz Forums 2000 Version 3.4.06