Work-Function Difference
This procedure takes a contact name (Contact, eg. Top), and the material the contact is made out of (Mat, e.g. Aluminum). It sets a contact equation in the pdb.
model
proc MetalContact {Contact Mat} { set WFN [pdbGetDouble $Mat WFN] pdbSetBoolean $Contact DevPsi Flux 1 pdbSetBoolean $Contact DevPsi Fixed 1 pdbSetString $Contact DevPsi Equation "DevPsi + $WFN - $Contact";# Efm+WFN=El=-DevPsi, Efm=-$Contact } #Example: MetalContact Top Aluminum
warnings
You need to define a work-function for the material that your contact is made of, e.g.:
pdbSetDouble Aluminum 4.1