微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > 电磁仿真讨论 > fdtd far field

fdtd far field

时间:03-24 整理:3721RD 点击:
Hi everyone,
I'm bit a of a beginner with FDTD and i'm looking for some examples of far field implementation (near 2 far transformation). Anyone could help me? I'd appreciate it.

Hi mojtaba,

I have a Python script/code for NF to FF implementation in FDTD (a dipole simulation). It is in working condition. To compile it you need a Python compiler.
You can use the Active State Active Python Compiler (Available for free - get it from internet). You may need the Numeric Python (NumPy) library also (free - internet). Install both and compile. It will work.
Conversion from python to MATLAB is not difficult. You need not know Python for the conversion. You may have to refer the internet for understanding the functionality of certain functions like 'add.reduce()', 'ravel()' etc and for understanding some statement formats/syntax.

The skeleton of the code is that of ToyFDTD. It uses Uniaxial PML (UPML) for terminating the domain.

Hope that this will help you.

Best Regards
Jithesh

I finally find this post!

a very important question jithesh, do you know how to use animabob or viz in windows?

do you know any un-dead link which I can download viz rendering tool? I know this one, but the page can not be dispalyed anymore!
ftp://ftp.ffi.no/spub/stsk/viz/index.html

and another question! have you ever used animabob or viz to visualize the toyfdtd program as they explaind in this link?
http://www.cemtach.com/reference/sof...DTD/RandR.html

Hi

I haven't used either viz or animabob.

Viz can be downloaded from the following link (working):
ftp://ftp.ffi.no/spub/stsk/viz/index.html (exact link for win 98 version is ftp://ftp.ffi.no/spub/stsk/viz/dist/dist_bin_win98.zip)
It supports platforms: SGI(IRIX), HP(HPUX), DEC(OSF1), SUN(Solaris) and PC(Linux,Win98,WinNT).

Best Regards
Jithesh

Hi

thank you very much jithesh for your help, but I don't really know why I couldn't open those links:(

the page cannot be displayed... this is the message every time I try to access this site,

could you really access that sit "ftp.ffi.no"?

Hi

I could access the ftp site, but one problem: The link ftp://ftp.ffi.no/spub/stsk/viz/dist/dist_bin_win98.zip is not working.
But you can download the source and documentation from
ftp://ftp.ffi.no/spub/stsk/viz/dist/Viz-1.11.2.tar.gz
It is Unix/Linux version (I think)
This link is working.

Best Regards
Jithesh

Hi.
In xyzdipole acording to the source the antenna is in y coordination.
Ey[23,11:22,23]=0
Ey[23,24:35,23]=0

Ey[23,23,23]=stimulus

when I change the antenna in z direction like below the far field pattern changes a lot.
Ez[23,11:22,23]=0
Ez[23,24:35,23]=0

Ez[23,23,23]=stimulus

and there is another problem .there is no relationship between dx,dy,dz and frequency or lambda.
can any one help me?

Regards

Hi,

From a first look I could find a problem in your modified code.
Setting
Ez[23,11:22,23]=0
Ez[23,24:35,23]=0
will not change the orientation of the dipole. It is still in y-direction only, since the variation is in y co-ordinate.
You should change it like:
Ez[23,23,11:22]=0
Ez[23,23,24:35]=0
That is the z co-ordinate has to be varied (instead of y co-ordinate).

The second question:
You can very well set dx, dy dz depending on the <= lambda / 10 criterion.
First define dx, dy dz values obeying the above criterion.
Then compute nx, ny & nz using the formulae:
nx= GUIDE_LENGTH/dx
ny= GUIDE_LENGTH/dy
nz= GUIDE_LENGTH/dz

Hope this will work.

Best Regards
Jithesh

Hi
thanks for your help. I changed the code and I tried to plot the pattern base on theta variation but the pattern is wrong. I checked the code base on Advanced Engineering Electromagnetics, Balanis , all the formulas were correct but I could not get correct pattern .
can anyone help me?

I tried to plot the output of the xyzdipole.py with matlab; so with RaddPatt.m you can plot 3D radiation pattern of an antenna with FDTD and you can compare the results with RaddPattReady.m which show the radiation pattern of 0.47*lambda dipole (z-directed). I also attached some of the results of xyzdiple.py to compare:

out1: this file is a simple sin source in Ez= stimulus UPML, source: sin, I used Phi for NFFF back plane (I had forgotten to change it to PHi + pi) the primarily conditions for UPML coeff

out2: this file is y-directed dipole UPML, source: sin, I used Phi for NFFF back plane (I had forgotten to change it to PHi + pi) the new conditions for UPML coeff

out3: this file is z-directed dipole UPML, source: sin, I used Phi for NFFF back plane (I had forgotten to change it to PHi + pi) the new conditions for UPML coeff

out4: this file is z-directed dipole UPML, source: sin, I used Phi+pi for NFFF back plane; the new conditions for UPML coeff

out5: this file is z-directed dipole non-UPML ((I turned off UPML)) source: sin, I used Phi+pi for NFFF back plane; the new conditions for UPML coeff;

out6: this file is z-directed dipole non-UPML (( turned off UPML)) source: sin, I used Phi+pi for NFFF back plane; the previous conditions for UPML coeff;

for example compare the out6 result (you should use find and replace all of out6 to any other ones in the mfile) as output of RaddPatt.m with RaddPattReady.m.

the comarison is really awfull, I couldn't find the problem, any idea?

or any way to find the problem? (for example, how can I realize the NFFF is ok?)

or may anyone who can download viz, send it to me to compare it; as I think maybe there is any problem with my mfile, I think they could plot the output of python with viz better than me, or... I don't know, any idea to help?

you know I used my different suggestions in these 6 out-files; for example in non-UPML I completely disabled the UPML coefficients and in non-Phi+pi I used the other commented instructions to plot the code, about new UPML conditions I corrected a very big difference between the xyzdipole.py code and the instructions in Taflove's book (do you have Taflove's book? Computational Electrodynamics: The Finite Difference Time Domain method) if you don't have it, tell me to send it to you, as it is very important in this simulation, so I attached the differences too (C_UPML_new.py), so you can compare it with xyzdipole.py!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top