Next: Model development in Alamode
Up: Alamode: A LAyered MOdel
Previous: Alamode: A LAyered MOdel
Alamode (A LAyered Model Development Environment) is a program
which solves systems of partial differential equations (PDEs) that
are described using a dial-an-operator paradigm. Its purpose is to
allow quick prototyping of PDE-based models for thermal diffusion in
semiconductors, and also provides a framework for evaluating new
numerical techniques to discretize and solve these equations. The
emphasis in the user interface is to provide for complete
specification of the equations and boundary conditions comprising
the model, while eventually providing additional layers of access to
the discretization and numerical techniques used to solve the
equations.
Unlike SUPREM, which is designed to be a process simulator,
Alamode is only a PDE solver. This difference is reflected
strongly in the user interface. Whereas SUPREM has reasonable
defaults for models and parameters, Alamode requires the complete
specification of all terms, parameters, and boundary/interface
constraints for a model as applicable to the specific device
structure being simulated. While this may initially seem excessive,
this enables more flexibility in model description than SUPREM
allows and ensures that there are no hidden features of any model.
Everything described in this manual is subject to change, and
backward compatibility to prior versions will be attempted, but is
not guaranteed. Currently available features will probably not be
deleted, but they may be significantly changed. User feedback is
important to help mold future changes. Send suggestions to
alamode@gloworm.Stanford.EDU.
This manual corresponds to release 97.06.18 of Alamode. The most
recent version of the documentation is available on the WWW from
http://WWW-TCAD.Stanford.EDU/tcad/programs/alamode.html.
The first widely distributed release was 96.11.07. Changes made
since 96.11.07 include:
- Added profile function and command.
- Added box function.
- Added erfc function.
- Added sqrt function.
- Added fermi_nnp function.
- Added min function.
- Added max function.
- Added arcsinh function.
- TCL variables should now be accepted in all slots that
used to require fields or functions.
- Nodal weighting for triangle elements is based on the
intersection of the voronoi cell with the element instead of a
row-sum lumped mass matrix. This seems to be a better estimate of
the area for nodal lumping and preserves symmetry in meshes derived from
a tessellation of rectangles.
- Implemented a primitive estimate for the initial time step
(-estimateFirstTimeStep).
- Added ``field -linkVariableAtPoint'' which links a TCL variable
to a field value nearest a given point. This is useful for
monitoring concentrations at a specific point.
- Replaced the quasiFermiEField operator with
quasiNeutralEField. In addition to being incorrect from a model
perspective, the quasiFermiEField usually had slow nonlinear
convergence. Another alternative for electric field enhancements is
to add a Poisson equation to your model to solve for and use
the diffusion operator with the diffusivity concentration product in
the diffusivity slot (i.e. ).
- Changed the default diffusion operator to a more efficient
geometric diffusion operator. This may produce slightly different
results than older releases, but they are just as accurate. The old
diffusion operator is still available as ``cdiffusion''.
- Timestepping error control, update norm convergence, and
threshold detection/reporting criteria and are now specified for
each field instead of for each model.
- Restructured the code to support nodal assembly and eliminate
duplicated evaluation during assembly. The result has been speedups
ranging from 2 to 20.
- Error-driven timestep estimation has been added to the
generalized trapezoid family of integration algorithms. This has
not been well-tested.
Next: Model development in Alamode
Up: Alamode: A LAyered MOdel
Previous: Alamode: A LAyered MOdel
Dan Yergeau
Wed Jun 18 19:17:04 PDT 1997