Does the D_conductivity get ignored when it appears in the Medium(...) in a material_fct?
The h5topng output looks *as if**the material was just transparent* (reflection and transmission) with only an epsilon=10 and no D_conductivity, whereas if I use just a normal Block geometry with the same mp.Medium (and leave away the material_fct), almost no field enters into the material. My material and material_fct look as follows: material = mp.Medium(epsilon=10, D_conductivity=37) def material_fct(p): h_threshold = 2 if (p.z<=h_threshold): return material return mp.air geometry = [mp.Block(mp.Vector3(1e20,1e20, 2), center=mp.Vector3(0,0,geom_center_point), material=material_fct)] _versus leaving away the material_fct and using the material only:_ geometry = [mp.Block(mp.Vector3(1e20,1e20, 2), center=mp.Vector3(0,0,geom_center_point), material=material)] Is this a bug, my mistake, or is this behaviour expected to be this way? Best regards, Hannes On 21.05.19 17:28, Hannes Kohlmann wrote: > Hello, > > I am implementing a terrain model with some conducting ground (soil) by > means of a material_function, which is an interpolation function of > values (height over distance) that I load from a .csv file (this is > similar to the ring_resonator example function in the tutorials), with a > curvature of the material_function being in the range of the resolution > (250). > > I set the material as mp.Medium(epsilon=10, D_conductivity=37), where > D_conductivity should correspond to an E-conductivity of σ = 0.001 S/m > in my simulation. > This material gets returned by the material_fct and the corresponding > geometry is a block: mp.Block(mp.Vector3(1e20,1e20,ground_thickness), > center=mp.Vector3(0,0,geom_center_point), material=material_fct) > > My simulation is cylindrical and the resolution is 250, simulation cell > being 120x14 (yes this takes long :-) > When I perform the simulation, the fields bounce around quite a lot the > farther away I read out the field (from distance >10 on), which appears > to be too extreme to me (almost unstable, but not fully, just large > amplitude swings). Strange thing is, that when I simulate the same > terrain with a mp.perfect_electric_conductor instead, the fields behave > normally. > > What could be the reason? > 1) Is the curvature of my terrain maybe too strong for the higher > frequency components of the transient pulse to be still stable (in other > words, is my resolution still too coarse for the small wavelength > components)? > 2) If I activate the subpixel averaging by material_fct.do_averaging = > True, it doesn't get better. Maybe because σ is not smoothed (as > mentioned in the docs) and contributes to the artifacts more than the > epsilon? > > Thank you for any help! > > Best, > Hannes > > > _______________________________________________ > meep-discuss mailing list > meep-discuss@ab-initio.mit.edu > http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
pEpkey.asc
Description: application/pgp-keys
_______________________________________________ meep-discuss mailing list meep-discuss@ab-initio.mit.edu http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss