Geometry descriptions in buff-em
Geometries in buff-em are described by simple text files
that are conventionally given the file extension .buffgeo
.
1. Syntax of the .buffgeo
file
The .buffgeo
file consists of one or more sections,
delineated by the keywords OBJECT...ENDOBJECT.
Each section defines a single compact object in a scattering
geometry and takes the form
OBJECT Label
KEYWORD argument
KEYWORD argument
...
ENDOBJECT
where the various possible KEYWORD argument
pairs are
detailed below.
MESHFILE MyMeshFile.vmsh
Specifies the 3D (tetrahedra) volume mesh defining the object.
The file should be present either in the current working
directory or in the search path specified by the environment
variable BUFF_MESH_PATH
.
3D volume meshes are generated from a gmsh geometry
file by running %gmsh -3 MyObject.geo
; this will produce a
file named MyObject.msh
, which I typically rename to
MyObject.vmsh
to indicate that it is a volume mesh
as opposed to the surface mesh files used by scuff-em.
MATERIAL GOLD
SVTENSOR MyMaterial.SVTensor
Specifies the material properties of the object.
The MATERIAL
keyword is used for homogeneous isotropic
bodies. In this case, GOLD
should be a
scuff-em material designation.
This may be defined either in a database file (such as the
file ${HOME}/.matprop.dat
or ./matprop.dat
) or on the fly
in your .buffgeo
file by including a MATERIAL...ENDMATERIAL
section before your object definition.
The alternative SVTENSOR
keyword is used for inhomogeneous
and/or anisotropic materials. (It stands for "spatially-varying
tensor.") In this case, MyMaterial.SVTensor
should be a
buff-em spatially-varying tensor file
present either in the current working directory or in the search
path defined by the environment variable BUFF_SVTENSOR_PATH
.
DISPLACED 2.3 4.5 6.7
ROTATED 90 ABOUT 0 0 1
These options specify geometrical transformations to be
performed on the object after it has been read in from the
.vmsh
file.
2. Examples of buff-em geometries
a. An SiO2 sphere coated with a layer of gold
OBJECT CoatedSphere
MESHFILE CoatedSphere_4017.vmsh
SVTENSOR CoatedSphere.SVTensor
ENDOBJECT
The file CoatedSphere.SVTensor
is described here.
b. Two gold spheres, described by the same volume mesh but separated 3 length units in the z direction
MATERIAL GOLD
wp = 1.37e16;
gamma = 5.32e13;
Eps(w) = 1 - wp^2 / (w * (w + i*gamma));
ENDMATERIAL
OBJECT UpperSphere
MESHFILE Sphere_677.vmsh
MATERIAL Gold
ENDOBJECT
OBJECT LowerSphere
MESHFILE Sphere_677.vmsh
MATERIAL Gold
DISPLACED 0 0 3
ENDOBJECT