![]() |
Bsoft 2.1.4
Bernard's software package
|
Simulation of AFM experiments. More...
Functions | |
Bimage * | afm_generate_tip (Vector3< long > size, Vector3< double > sampling, double radius, double angle, double resolution) |
Generates a rounded conical AFM tip. More... | |
Bplot * | afm_simulate (Bimage *ptip, Bimage *p, double spring, double modulus, double thick) |
Simulates and AFM experiment. More... | |
Bimage * | afm_force_to_height (Bimage *pf, double force_step) |
Converts an AFM force map into a set of 2D height images at different constant force values. More... | |
int | main (int argc, char **argv) |
int | afm_simulate_at_xy (Bimage *ptip, Bimage *p, long ii, float *force, double spring, double modulus, double thick) |
Variables | |
int | verbose |
const char * | use [] |
Simulation of AFM experiments.
Converts an AFM force map into a set of 2D height images at different constant force values.
*pf | force map. |
force_step | force intervals for height images |
Bimage * afm_generate_tip | ( | Vector3< long > | size, |
Vector3< double > | sampling, | ||
double | radius, | ||
double | angle, | ||
double | resolution | ||
) |
Generates a rounded conical AFM tip.
size | size of the tip density |
sampling | sampling/spacing (in angstrom/pixel) |
radius | radius of the tip curvature (in angstrom) |
angle | angle of the tip side (in radians) |
resolution | the resolution affects the tip surface softness |
A 2D image of a conical tip is generated, with a 45 degree angle and a rounding tip with the desired radius and softness. The 2D image is then converted to a 3D surface using the function img_to_surface and returned. The density of beta-silicon nitride of 1.925 Da/A3 is used.
Simulates and AFM experiment.
*ptip | AFM tip density map - converted to force map. |
*p | specimen density map. |
spring | AFM cantilever spring constant (N/m). |
modulus | bulk modules (N/m2). |
thick | sample thickness (angstrom). |
The elastic force on an AFM tip is calculated as: F = kt*dz = kb*dV/d where kt is the cantilever spring constant, typically 0.01 - 0.1 N/m. dz is the tip displacement due to specimen interaction. kb is the bulk modulus of the specimen, typically 1e9 N/m2. dV is the volume of the specimen displaced by the tip. This volume is here approximated as the density overlap volume. d is the specimen thickness in angstrom. The tip is positioned at each point (x,y,z) in the density map and the overlap volume calculated (i.e., a type of convolution). This tip position corresponds to a zero displacement. The correct tip position is found by shifting the tip upwards (in the z-direction) until the displacement and elastic forces are approximately equal. The tip displacement is refined by interpolation and the force calculated. The force map is returned in place of the original density map. Forces are calculated in piconewton. The origin of the tip density is taken as nx/2, ny/2, 0.
int afm_simulate_at_xy | ( | Bimage * | ptip, |
Bimage * | p, | ||
long | ii, | ||
float * | force, | ||
double | spring, | ||
double | modulus, | ||
double | thick | ||
) |
int main | ( | int | argc, |
char ** | argv | ||
) |
const char* use[] |
|
extern |