Sunday, February 27, 2011

FDTD Simulation of a Half Convex Lens


Finite-difference time-domain (FDTD) simulation of a half convex lens when a point source is located at its focal plane in both on-axis (left) and off-axis (right) cases. The points indicated by the small circle are the actual source locations and the third point with the cross sign is the location of symmetry for the off-axis source.

The source locations are located at the focal plane to demonstrate the collimation property of the lenses. Again, to demonstrate the frequency independency of the lens behavior, two short pulses at different central frequencies are fired consecutively and both cases show collimation after exiting the lens.

The lens employed here has a parabolic surface and obviously, it is not perfectly optimized hence the directed signals are not perfectly smooth. For desired far field performance the shape of the lens can be further designed using optimization algorithms integrated with electromagnetic solvers.

Two related papers are:
1) A. V. Boriskin, A. Rolland, R. Sauleau and A. I. Nosich, Assessment of FDTD Accuracy in the Compact Hemielliptic Dielectric Lens Antenna Analysis, IEEE Trans. Antennas and Prop. vol.56, no.3 pp. 758-764, March 2008
2) G. Godi, R. Sauleau and D. Thouroude, Performance of Reduced Size Substrate Lens Antennas for Millimeter-Wave Communications, IEEE Trans. Antennas and Prop. vol.53, no.4 pp. 1278-1286, April 2005

Also see below:
Oblique Plane Wave Reflection From Half Space
Radiation from a Circularly Tapered Dielectric Waveguide
Right Hand Circular Polarization (RHCP) Animation
Linear Polarization Animation
Left Hand Elliptical Polarization (LHEP) Animation
Standing Wave Pattern (SWR) Animation
Electromagnetic Propagation of UWB Short Pulse in Random Medium 
Half Wavelength Dipole Antenna Radiation 
Dipole Antenna Radiation 
Dish Antenna Animation (Parabolic reflector) 
FDTD Simulation of a Half Convex Lens

Thursday, February 24, 2011

MEEP colormap for Matlab

I have been thinking of using the colormap used in the MEEP software (an open source FDTD code) as a nice alternative to the classical Matlab colormap. Here is the short Matlab code to generate it and the resulting images:

mincolor    = [1 0 0]; % red
mediancolor = [1 1 1]; % white   
maxcolor    = [0 0 1]; % blue      

ColorMapSize = 4;
int1 = zeros(ColorMapSize,3); 
int2 = zeros(ColorMapSize,3);
for k=1:3
    int1(:,k) = linspace(mincolor(k), mediancolor(k), ColorMapSize);
    int2(:,k) = linspace(mediancolor(k), maxcolor(k), ColorMapSize);
end
meep = [int1(1:end-1,:); int2];

colormap(meep); 
colorbar
Classical Matlab colormap (jet)
MEEP colormap with ColorMapSize 64
MEEP colormap with ColorMapSize 16
MEEP colormap with ColorMapSize 4

*Images are snapshots from the FDTD simulation of a dish antenna.

caxis and colorbar in Matlab


If colorbar is used before the caxis, the colorbars show the original image limits. Thus, colorbars are not accurate
When the colorbar is used after caxis. This time the colorbars are accurate.

When using caxis with pcolor in Matlab, colorbar does not update if it is defined before caxis is called. The remedy is basically use colorbar whenever a new axis limit is defined by caxis. The sample code given in Matlab's manual is modified as follows to handle the issue of interest.


figure (1); clf; 
load cape
colormap(map)
subplot(2,2,1)
image(X,'CDataMapping','scaled');  
axis image
title('Caxis = [1 192]'); colorbar;
subplot(2,2,2)
image(X,'CDataMapping','scaled')
axis image
title('Caxis = [20 192]');  
caxis([20 192]); 
colorbar;  % Should be introduced after the caxis is employed
subplot(2,2,3)
image(X,'CDataMapping','scaled')
axis image
title('Caxis = [50 192]');  
caxis([50 192]); 
colorbar;
subplot(2,2,4)
image(X,'CDataMapping','scaled')
axis image
title('Caxis = [100 192]');  
caxis([100 192]); colorbar;

Sunday, February 20, 2011

Right Hand Circular Polarization (RHCP) Animation

Radiation from a Circularly Tapered Dielectric Waveguide



Finite-difference time-domain (FDTD) simulation of a dielectric waveguide terminated with a circular tapering. The dielectric permittivity of the waveguide is 2.2 and air is the ambient medium. Such antennas are developed for ground penetrating technology (GPR) technology to reduce the footprint of the antenna.

Also see below:
Oblique Plane Wave Reflection From Half Space
Radiation from a Circularly Tapered Dielectric Waveguide
Right Hand Circular Polarization (RHCP) Animation
Linear Polarization Animation
Left Hand Elliptical Polarization (LHEP) Animation
Standing Wave Pattern (SWR) Animation
Electromagnetic Propagation of UWB Short Pulse in Random Medium 
Half Wavelength Dipole Antenna Radiation 
Dipole Antenna Radiation 
Dish Antenna Animation (Parabolic reflector) 
FDTD Simulation of a Half Convex Lens

Sony GPS-CS3KA Review (Geo-tagging) and Performance in the Airplane


First few minutes of a flight from Long Beach, CA to Portland, OR
Final moments of the same flight while landing to PDX
A successful logging from Paris to Istanbul

I have been using Sony GPS-CS3KA over a year and so far I have been satisfied with it although I wish some of its features were better. One point I would like to note is that it is possible to log your flight routes (of course as well as photos taken along the flight) with this GPS.  It is pretty exciting to see the actual roots taken while flying between cities. However, in my experience, one should sit by the window for satisfactory performance. If the GPS unit is not close to the window, then it is difficult to get connected to the satellites which unfornutaly means no logging. Also, one should make sure that battery employed within the GPS unit is full before the flights (especially the long ones). While airborne, several times I had difficulties in reconnecting to the satellites after I lost connection due to battery change or any other reason.
Flight from Istanbul to Antalya.

For example, in a particular flight from Istanbul (SBH) to Antalya, it was not possible to grab the signal even during the taxiing. However, approximately 20 minutes after getting airborne, the GPS unit was able to connect to the satellites and the resulting route is given in the accompanying figure on the left.

Also, check the below link for two additional international flight:
Geo-tagging two International Flights on April 24, 2010

Saturday, February 19, 2011

Dipole Antenna Radiation



Finite-difference time-domain (FDTD) simulation of a 2 wavelengths long dipole antenna at 400 MHz in free space. The radiation pattern is very different than that of the traditional half-wavelength dipole antenna. Nulls in the broadside and endpoints are clearly visible

Dish Antenna Animation (Parabolic reflector)

Dish Antenna Animation (Parabolic reflector)



Finite-difference time-domain (FDTD) simulation of a parabolic reflector antenna in the transmitting phase. Reflector antennas are frequency-independent antennas and they are highly directive. As long as the source is located at the focal point, the reflected field travels in the broadside direction. In this simulation, two short pulses - first one at central frequency of 100 MHz and the other at 200 MHz are fired from the focal point (VHF regime). f/D (focal length/diameter) ratio is 0.257.

Normally, the feed antenna is also chosen to be directive, but for the purpose of illustration, we have chosen a point source as the feed antenna.

Below, one can see several microwave link stations in the form of dish antennas (Photo captured in Mount Hood in Oregon around 7000 ft).



Also see below for other simulations:

Half Wavelength Dipole Antenna Radiation
Oblique Plane Wave Reflection From Half Space
Radiation from a Circularly Tapered Dielectric Waveguide
Right Hand Circular Polarization (RHCP) Animation
Linear Polarization Animation
Left Hand Elliptical Polarization (LHEP) Animation
Standing Wave Pattern (SWR) Animation
Electromagnetic Propagation of UWB Short Pulse in Random Medium

Backspace not deleting to the left in Vi(m)

While working with vi(m), backspace may not perform as intended. It may print ^? and progress to the right. To alleviate that problem, simply add the following code into ~/.vimrc file:
:set t_kb=^?
:fixdel
:set bs=2 "Fix Backspace in VIM