Showing posts with label fdtd. Show all posts
Showing posts with label fdtd. Show all posts

Sunday, April 1, 2012

Locating scattering centers with FDTD

We are so stuck up with visible light and ray tracing where the path of a photon is a straight line that our minds reel at the thought of full-wave simulations and wave based solutions to Maxwell's equations. After all Maxwell believed in the luminiferous aether is required for the waves to propagate.

I have written before on how useful FDTD based methods are for getting an intuitive understanding of electromagnetic propagation, especially through optically complex objects such as forests. For the last few months as part of my PhD work I have been developing simple scheme based representations of vegetation structures in 2-dimensions to solve the wave propagation problem using FDTD. During my research I came across a trilogy popular science books, Branches, Shapes and Flow, describing how simple physical processes lead to the formation of all the complex natural shapes we see.

In a stationery wave field set-up in an FDTD simulation scattering centers appear as point sources similar to the radiation source. To locate these scattering centers accurately without visualising the time-slices, one can apply the Huygens-Fresnel principle. Simply use some image processing tricks  e.g. Generalised Hough, grab some time slices and locate centres of the circular field intensity patterns. To complete the analysis chain up the HDF output from MEEP to OpenCV Hough and you have instant location of scattering centers for fairly complicated scattering problems. The plant material is composed of microwave water, i.e. water with conductivity, permeability and permittivity it shows at microwave frequencies. If water had higher conductivity, we could have used MoM to model forests.

This analysis generates interesting questions about life and what we consider organic shapes vs inorganic(read crystalline) shapes. Under detailed analysis at the right wavelength (DNA capitulated to X-ray crystallography), organic shapes turn out to be formed out of crystalline shapes at multiple scales. What we consider inorganic is just the same material as organic, except it has not gone through sufficient iterations in the fractal generation process. The human mind is predisposed to seeing patterns amid chaos - The Grand Design, and an engineer loves to take the hood off and work out the forces at play which create the finished product. Only then can we assess the strengths and flaws of what we have at hand, and guide the forces to create new products following our own grand design. A lot of cosmetic products use crystalline structures to overlay the naturally evolved organic structures, this fools our heuristics of age determination. Beauty is heuristics anyway, harm will only come if the manipulation of heuristics pauses the continuity of the species.

Monday, September 6, 2010

Waving around in MEEP - Scheme and Python

crops_2d
I finally get to learn some proper functional programming with MEEP and its Scheme based interface. MEEP is an FDTD - Finite Difference Time domain based simulator for electromagnetic waves, something I am trying to shoehorn into vegetation simulation. There is thankfully prebuilt cylinder primitives I can use to generate stems. So far I have managed put them in the Z and X axis and not in the Y axis which is of interest to me. The ring demo runs fine with some modifications and produces some nice and weird looking waves. Scheme is pretty easy to get around as a scripting interface, in spite of some polish math notation ( + (+ (+ (air water) earth ) fire ) = hooray !!)


I also got the Python bindings up and running. Time to see if my Python generated plant geometries and soil surfaces can be plugged straight into a 2D MEEP run. MEEP supports cylinder, ellipse, cone and block primitives. Making plants will be fairly easy, may be I can make the soil surface with dielectric blocks of random size.