HSCTechnicalWiki


view edit history print Talk subscribe
SearchWiki
Inspired by: Support Wikipedia

Views: 28

Full site statistics

Authors:

edit SideBar

Main » Surface annealing

PageList

Papers

Tutorials

HSC welcomes all external visitors to this site, especially students and members of the academic community. Please use the comments box at the bottom of each page to record any comments or suggestions for improvement.

Objective of program

This code is an implementation of the surface annealing simulation based on Shankar's dual stage optimization algorithm. The code runs on a beowulf cluster: the master reads the input membrane and passes small slices of membrane to the slaves. The slaves run surface annealing algo on the slice received from the master and send back the optimised membrane. Master also provides a graphical interface for original membrane and subsequent alterations in membrane as the program progresses.

Source code

sfile.c : Contains the main function, reads the input membrane, initalizes associated libraries and calls surface annealing algo. sfile:dual.c : Contains the master function for surface annealing and beowulf work distribution logic sfile:siman.c : Contains implementation of a basic simulated annealing algorithm, this code is borrowed from open source sfile:mfit.c : Contains front-end for the gsl least mean square error curve fitter sfile:wulf.c : Contains functions specific to sending slices from master to slaves sfile:membrane.c : Contains membrane and membrane slice creation, alteration and destroy functions sfile:parg.c : Contains functions for handling arguments to program sfile:plot.c : Contains functions for plotting of the membrane (uses plplot library (version 5.7.1))

Corresponding headar files: sfile:membrane.h sfile:parg.h sfile:wulf.h sfile:plot.h sfile:plane.h

Output samples

The following images are output samples of the program. The membrane is altered with an aim of minimizing the energy of membrane. The membrane is optimised over multiple iterations of increasing slice size.

Case 1: starting with slice size 8 and increasing upto the complete membrane

Figure 1.1: Initial membrane. Energy: 168.1
Figure 1.2: First iteration in progress.
Figure 1.3: First iteration completed. Energy: 119.6
Figure 1.4: Second iteration completed. Energy: 103.5
Figure 1.5: Final output. Energy: 103.5

Case 2: starting with slice size 16 and increasing upto the complete membrane

Figure 2.1: Initial membrane. Energy: 168.1
Figure 2.2: First iteration completed. Energy: 117.3
Figure 2.3: Final output. Energy: 117.3

Case 3: starting with slice size 48(full membrane)

Figure 3.1: Initial membrane. Energy: 168.1
Figure 3.2: Final output. Energy: 132.6

Comments

Add Comment 
Email address(will be kept hidden) 
Enter code:

Page last modified on December 16, 2011, at 03:49 AM