CTF Simulation

        NOTE: you need to disable pop-up blocking of this site to run the CTF simulation Java applet. You might also need to add a security exception in your Java settings for this site

        Please cite: Web-based Simulation for Contrast Transfer Function and Envelope Functions. Microscopy and Microanalysis 7(4), 329-334, 2001

        Contrast of an ectron image is influenced by the contrast transfer function (CTF) and the envelope functions of the electron microscope. In order to plan an experimental condition for data collection or to interpret the contrast of an electron micrograph, one would often need to know the quantitative values of these functions for a given set of microscope parameters. This simulation program is written in Java applet and JavaScript programming language. The parameters of these functions can be adjusted interactively with slider bars and the plot for the simulated function would be updated instantaneously.

        This applet is known to run on Windows (Netscape and Internet Explorer), Linux (i386) (Netscape), SGI IRIX (Netscape), OS/2 Warp and MacOS X. Please inform me if you found that this applet runs or has problems to run on other platforms.
 
        The following is the detailed descriptions for some aspects of the applet page.

List of the special symbols/functions used in the applet

 Term  Unit  Description
 s  1/Å  resolution
 v  keV  accelerating voltage
 Cs  mm  spherical aberration
 Cc  mm  chromatic abbe ration
 Q  amplitude contrast [0-1]
 dE  eV  time variation of electron beam energy from the average
 dI  ppm  time variation of object lens current from the average
 dF  Å  vertical sinusoidal motion amplitude
 dR  Å  horizontal drift amplitude
 dZ  Å  defocus, positive for under-focus
 B  Å2  envelope decay parameter, exp(-B*s^2)
 a  mrad  illumination angle
 lambda(v)  Å  electron wavelength, automatically computed from voltage
 gamma(s,v,Cs,dZ)  2*pi*(2.5e6*Cs*lambda(v)^3*s^4-dZ*lambda(v)*s^2/2)
 ctf(s,v,Cs,dZ,Q)  sqrt(1-Q*Q)*sin(gamma(s,v,Cs,dZ))-Q*cos(gamma(s,v,Cs,dZ))
 Gsc(s,v,Cs,dZ,a)  spatial coherence decay: exp(-(pi*a*(1.0e7*Cs*lambda(v)^2*s^3-dZ*s))^2/1e6)
 Gtc(s,v,Cc,dE)  temporal energy spread decay: exp(-1.0e8*(pi*Cc*lambda(v)*s^2*dE/v)^2/(16*ln(2)))
 Gol(s,v,Cc,dE)  temporal lens current spread decay: exp(-1.0e2*(pi*Cc*lambda(v)*s^2*dI)^2/(4*ln(2)))
 Glm(s,v,dF)  vertical motion decay: j0(pi*dF*lambda(v)*s*s)
 Gtm(s,dR)  horizontal drift decay: sinc(pi*s*dR)
 sinc(s)  sinc function: sin(s)/s
 j0(s)  Bessel function of the first kind, order 0: (57568490574.0+s*s*(-13362590354.0+s*s*(651619640.7+s*s*(-11214424.18+s*s*(77392.33017+s*s*(-184.9052456)))))) /(57568490411.0+s*s*(1029532 985.0+s*s*(9494680.718+s*s*(59272.64853+s*s*(267.8532712+s*s*1.0)))))

In addition to the symbols mentioned above, almost all the common function, operators, constants could be used in the function definition if you choose to plot you own function

sin
cos
tan
cot
sec
csc
arcsin
arccos
arctan
abs
sqrt
cubert
exp
ln
log2
log10
trunc
round
floor
ceiling
+
-
*
/
^
**
!
?:
<
<=
=
>
>=
<>
and
or
 not
sum(sumationVariable, start, end, expression)
pi
e

This ctf simulation applet is written by Wen Jiang with help of the excellent Java Components for Mathematics.