VisLab

Ketan Mehta's Research Blog

Research Blog - Exploring Nematic Liquid Crystal

Now it is time to say goodbye... 
 
Suddently today I realized that it has been nearly two years that I came to Starkville and this Department. Nearly most of the time I have spend in learning about visualization and NLC viz, which has been fun and exicting. 
 
I have only one thing to say - "This IS the most exciting and fun-filled lab in dept /images/emoticons/happy.gif"... seriously, i have found this place to give me time to do research on my own pace and explore areas widely. .. lot more will be posted sooner in my new place.. 
 
My website has moved to http://ketan.imehta.com which I expect to last long. (contact: ketan@imehta.com or my normal gmail id). 
 
bye 
ketan 

Posted by:

I want to thank -- Matt, Chris, Chad, Adam, Huangli, Amit, Kondi, Shensu(?), Lanka, xx, ... --who came and atteneded my talk.  
I am glad to be able to present my work and have great discussion on my talk. 
 
Now, formally thesis is accepted and with few corrections it should be up soon. 
 
thanks / Arigato-gozaimas  
Ketan 

Posted by:

InfoViz.Net: Collection of various InfoViz techniques, approaches and related information. Not exhaustive, but quite a varied and acclectic collection. 
URL: http://www.infovis.net/ 
 
Chart visualization collection by Karl Harting. It has the collection of very nice and intersting examples of chart/data visualization from day-to-day data --US population, Consumer electronic adaptation etc.--. Really nice and excelletn collection , bridges art and science - the way visualization should be. 
URL: http://www.karlhartig.com/ 
 
Graph visualization : Collection of various graph visualization projects. Very diverse and broad collection. 
"...VisualComplexity.com intends to be a unified resource space for anyone interested in the visualization of complex networks. The project's main goal is to leverage a critical understanding of different visualization methods, across a series of disciplines, as diverse as Biology, Social Networks or the World Wide Web. I truly hope this space can inspire, motivate and enlighten any person doing research on this field." 
URL: http://www.visualcomplexity.com/vc/ 
 
People 
Nigel Holmes: Designer, worked at Time and various publications. 
First heard him at Capstone lecture, InfoViz05. 
Conference events blogged by Dr. TJK, here.  
 
I liked his presentation style, use of colors and metaphores. 
URL: http://www.nigelholmes.com 
 
 
BLOG 

A really cool blog about infoviz and design issues. Nice layout, presentation style and lot of usage examples. It seems there is lot more to Information viz happening outside of InfoViz /images/emoticons/happy.gif 
URL: http://infosthetics.com/ 

Posted by:

Hi All, 
 
I would like to cordially invite you to my Masters thesis defense on 
Friday, 5th May in Butler 300. The details are given below: 
 
Title : NLCViz: Tensor Visualization and Defect Detection in Nematic Liquid Crystals. 
 
Time and Date: Friday, May 5th 2006, 2.00 pm 
Location: Room 300, Butler (CSE Dept.) 
 
Abstract: 
Visualization and exploration of nematic liquid crystal (NLC) data is a challenging task due to the multidimensional and multivariate nature of the data. Simulation study of a NLC consists of multiple timesteps, where each timestep computes scalar, vector, and tensor parameters on geometrical 
mesh. Scientists developing an understanding of the liquid crystal interaction and physics require tools and techniques for effective exploration, visualization, and analysis of these data sets. Traditionally, scientists have used combination of different tools and techniques like 2D plots, histograms, cut views, etc. for data visualization and analysis. However, such an environment does not provide the required insight into NLC datasets. 
 
The thesis addresses two areas of the study of NLC data---the 
understanding of the scalar order tensor field (the Q-tensor) and defect detection in this field. Tensor field understanding is enhanced by using a new glyph (NLCGlyph) based on a new design metric which is closely related to the underlying physical properties of an NLC, described using the Q-tensor. A new defect detection algorithm for 3D unstructured grids based on the orientation change of the director is developed. 
This method has been used successfully in detecting defects for both structured and unstructured models with varying grid complexity. 
 
Looking forward to see you, 
Thanks & Regards 
Ketan Mehta 
http://vis.cse.msstate.edu/weblog/km223/ 

Posted by:

Now as I am closing my work here, there are lot of new thoughts and ideas.. I am capturing them apart from my thesis, in hope that someone will come and carry from here.. 
 
First, my personal reflections on the work : detecting defects is exciting and interesting problem and something new compared to other areas of viz work.. infact similar concept of defect structure is used in Physics - string theory and some areas in astrophysics. So it has bigger implications.. /images/emoticons/happy.gif 
 
Secondly, although this problem looks simpler, it has interesting challenges.. as proving and identifying defect in complex geometry is difficult.. since defect definition in crystals is vague and nature do not follow specific rules.. sort of !!... 
 
so few research directions 
1) Integration of the defect detection algorithm with Q-tensor based analysis and NLCGlyph. 
2) Design defect classification scheme as applicable to 3D unstructured topologies. 
3) Use of sampling in NLCGlyph tensor space for computationally efficient visualization. 
4) Exploration of color, texture, or other attributes of NLCGlyph extending visualized parameter space. 
 

Posted by:

My Thesis defense date is fianlized - 5th May 2006 , 2pm @ Butler, so if you are interested then stop by. 
 
I will be talking abt my research in liquid crystal visualization - how can we find defects using new approaches 
 
== Conclusion == 
This thesis has presented novel techniques for visualizing Q-tensor and automatically detecting defects in NLCs. As mentioned in the Chapter~\ref{sec:intro}, defect detection and analysis in 3D unstructured mesh is very critical for modeling and understanding behavior of NLCs. The proposed glyph parameterization metrics and defect detection algorithms are the first such known techniques applied in the study of defect dynamics for 3D unstructured mesh based simulation models.  
 
In the form of NLCGlyph, we have introduced a collection of  
physically-motivated, barycentric metrics to define a superellipsoid parameterization for NLC tensor order parameter or Q-tensors. Through use of these metrics, the salient properties of the system are graphically encoded in a perceptually and mathematically continuous manner. Our contributions demonstrate an approach to visualizing symmetric, traceless tensors without the need to artificially modify the tensor's eigen-representation. Unlike the offset method, our approach does not distort the features of interest. 
 
A new algorithm is proposed for detecting defects in unstructured geometries without performing sampling or simplification of grid or data. The proposed approach identifies actual defect cores at node level without creating any visual clutter. More over, this technique is based on existing research for defect detection and identifies defects in both structured and unstructured geometries.  

Posted by:

Snapshot of defect detection in nematic liquid crystal application. 
 
defect-app  

Posted by:

While loading big grid files with ~0.8 million nodes, my laptop started to choke!! As my memory usage jumped from 40Mb to 280Mb to 400MB !! and will go down to 240 MB.. 
 
This was strange as I was aware that there is no such memory leak. So on investigation I found that culprit is my mis-understanding of STL containers. 
 
I always knew that vector and deque are different and provides roughly array like and linked list functionality respectively. But as many people suggested.. it is always better to use deque rather than vector -- similar speed and faster insertion. But I learned that it is not so always. 
 
Deque is consumes much more memory ( approx 4.3 times ) than vector and releases memory slowly. Performing push_back of 10000000 integer elements on vec and deque gave following timings 
- 47668 KB only vector 
- 208424 KB only deque ( 4.3 times ) 
 
On changing deque to vector cut down my memory usage by half and increased execution speed. 
 
learning: 
1) There is difference between vec and deque. Know your usage. 
2) Know STL containers for actual memory usage and decide tradeoff. 
3) Read docs /images/emoticons/happy.gif 

Posted by:

Completed my thesis proposal defense - well it was nice. 
 
One take away - compare and show to world that it is good. yes, it does not matter if it is new or different or whatever, validation is a must. 
 
keeping my notes, will check later on Monday with Dr. TJK 
 
1) Validation - include this process or be specific in thesis. 
2) No need to include all the work done till now as a thesis work - need to identify subset and focus on it.  
---- two items will be NLCGlyph and DefectDetector. 
3) Use Q-tensor parameter in parallel coordinate view.. study if it throws any pattern 
4) Use volume information somewhere and somehow - write how it differentiates with existing techniques. 
5) Show that current technique can easily help in complex molecules where none of the existing methods may work effectively. 
6) Can we do or show any effect of grid resolution. 
7) If we are going to include alpha, beta then validate why default value is good. 
 
more decision abt what we will do or how we go ahead will coem soon. 

Posted by:

Our simulation data is stored in HDF5 format, which is the most popular scientific data storage format. 
 
I used the C++ API wrapper available from NCSA and after some struggling with format now it is ready. HDF5 is one of the versatile and exhaustive format and hence has extra complexity. 
 
< src code : Pasted as it might be useful to someone > 
// This function is a wrapper around all HDF5 related code which is very specific for 
// out data. 
// Out file name and data tree is as below: 
// file name is - TYPE_hdf5.step 
// / 
// /TYPE/Interval Set 
// /TYPE/data - This is only relevant to us. Read and fill inData. 
// /TYPE/is_stat 
// /TYPE/vec_size 
// Where TYPE can be { sx, sy, sz, sx2, sy2, sz2, q1, q2, q3, q4, q5, q5, s } 
// Input : File name and Data Group path in HDF file, pointer to pointer to float /images/emoticons/happy.gif 
// Note: std::vector or new are avoided as we will be processing and storing again 
// inData into appropriate buffers. So trying to make it light-weight. 
int loadHDF5Data(const std::string fileName, const std::string dataGrp, float **inData) 

hsize_t dims_out[2]; 
// Initialize values 
*inData = NULL; 
 
try  

/* 
* Turn off the auto-printing when failure occurs so that we can 
* handle the errors appropriately 
*/ 
Exception::dontPrint(); 
 
/* 
* Open the specified file and the specified dataset in the file. 
*/ 
H5File *file = new H5File( fileName, H5F_ACC_RDONLY ); 
DataSet *dataset = new DataSet(file->openDataSet( dataGrp )); 
/* 
* Get dataspace of the dataset. 
*/ 
DataSpace *dataspace = new DataSpace(dataset->getSpace()); 
 
/* 
* Get the class of the datatype that is used by the dataset. Verify it is FLOAT 
*/ 
H5T_class_t type_class = dataset->getTypeClass(); 
if ( type_class != H5T_FLOAT ) // Error 

std::cerr << " Expected float data in file " << fileName << " grp " << dataGrp << std::endl; 
std::cerr << " ERROR :: Will terminate program " << std::endl; 
exit(-1); 

 
/* 
* Get the dimension size of each dimension in the dataspace. 
* We have 1D array hence first dimension gives us the size. 
*/ 
dims_out[0] = dims_out[1] = 0; 
int ndims = dataspace->getSimpleExtentDims( dims_out, NULL); 
 
/* 
* Malloc the required space depending on data size and read data space into it. 
*/ 
*inData = (float *)malloc(dataset->getStorageSize()); // Bit ugly! 
// ASSUMPTION: Our data is float. 
dataset->read(*inData,PredType::NATIVE_FLOAT,*dataspace);  
 
/*  
* Clean stuff 
*/ 
delete dataspace; 
delete dataset; 
delete file; 
 

 
catch( FileIException error ) // catch failure caused by the H5File operations 

error.printError(); 
return false; 

catch( DataSetIException error ) // catch failure caused by the DataSet operations 

error.printError(); 
return false; 

catch( DataSpaceIException error ) // catch failure caused by the DataSpace operations 

error.printError(); 
return false; 

catch( DataTypeIException error ) // catch failure caused by the DataType operations 

error.printError(); 
return false; 

 
return dims_out[0]; // return size of buffer 

Posted by:

Today completed my final draft for thesis proposal and now I am ready for my thesis proposal defence. 
 
========================================================= 
Draft can be viewed here
 
Looking forward to feedback from my committee and anyone who 
may have opinion. 
 
Proposal Abstract 
========================================================= 
Visualization and exploration of nematic liquid crystal (NLC) data is a challenging task due to the multidimensional and multivariate nature of the data. A typical simulation 
study of a NLC consists of multiple timesteps where each timestep computes various parameters like scalar, vector and tensor on an unstructured grid. Scientists developing an 
understanding of the liquid crystal interaction and physics require the tools and techniques for effective exploration, visualization and analysis of these data sets. Traditionally scientists have used different tools and techniques like 2D plots, histogram, cut views etc. in conjunction with each other for data visualization and analysis. But such an environment neither scales well, nor provides a comprehensive or contextual information of the data in 3D space. 
 
Specifically, design of a biosensor based on the NLC requires the study and exploration of the topological defects or disclinations induced by the external biological specimen. 
New visualization and framework has been developed to address the absence of any comprehensive technique or tool-chain. This proposed visualization uses scientific and information visualization techniques to design the multitier visualization and analysis framework. Such a system will enable the user to filter and explore the NLC datasets for 
defect analysis. Each level shall provide a more detailed view of the selected region of interest on the basis of the selection in the previous level. The first level uses a timeline based visualization technique for providing an overall view of the dataset and selected timestep's detail are shown in the second level. Third level visualizes tensor glyphs and other details using region of interest selected in the second level. Thus, three level helps user in data mining and visualization at a same time. 
 
 
 
 
bye 
ketan 

Posted by:

Things are moving fast, it was just a year end when we were working on glyph generation and now it is mid-Jan!! Things are moving at steady pace. 
 
Top priorities for this month end 
1) Get proposal finalized 
2) Complete defect detection and show it changing over time. 
3) Document/Paper/ - write things. 
4) Clean and update code base. 

Posted by:

Have got good detection working, atleast it gives approximately same defect core as expected.  
 
2D image currently used for analysis. 
defect 
 
3D image detected using our algorithm. 
- this are images of intermediate steps, showing 2 disclination lines and saturn ring near sphere. 
 
defect 
 
defect 

Posted by:

We have got glyph modeling for traceless tensor for the nematic liquid crystal finalized. It is giving nice and correct results.  
 
Paper Pic 
 
Will wait for more confirmation of this approach /images/emoticons/happy.gif  

Posted by:

Liquid Crystal (Nematics) 
 
1) Molecules in solid exhibits positional and orientational order. Hence they are constrained in space. 
 
2) In Liquid state molecules has no positional or orientational order and thus they move and tumble around. 
 
3) But liquid crystal does not have positional order but retains some orientational order. 
- Hence the need to classify order parameter or order 
- prefered orientation : usage of this term signifies that which direction molecules point on avg. Since molecules have some orientational order they prefer to spend time in certain direction rather than other. 
- Director defines the preferred orientation. 
 
4) Classification  
First proposed by Georges Freidel ( 1922 ) along with Lehmann using the terms nematic ( thread like ), smectic ( soap ) and chiral/cholesteric ( twisted ) based on molecular ordering. 
 
5) Electric and magnetic fields can effect liquid crystals and bring the orientational changes. Similarly temperate brings the phase and orientational changes. 
 
6) Combination of both theoretical and experimental results has concluded that full description of the orientational order present in the LC is quite a complicated task.  
- pg 24, 1st para, LC, Collings 
 
7) Orientational order S as 1/2(3cos^2(theta)-1) was defined during WW and one of the most imp event. (1940) 
 
8) Orientational order imposes the anisotropy. Anisotropy is the most important characterisitcs shared between LC and solids. 
 
9) Deformation in LC can be described using three forms  
- 1) Splay, 2) Twist and 3) Bend. In order to retain deformation we require external force ( electrical/magnetic ) - ( Analogy - compressing spring requires force to retain state ) 
 
10) Response of liquid crystal molecules is very delicate, slight variation will result into changes. 
 
11) Homogeneous texture - form of the LC when internal molecules of LC assume the position such that director is parallel to the plates. External glass plates can force the molecules to 
align in any direction. Simple process like rubbing glass with cloth can force LC molecules near the plate to align in direction of rubbing. 
 
- If electric field is applied to homogeneous texture then only internal molecules can change orientation. 
 
- Homeotropic texture - molecules align perpendicular to the glass plate 
 
12) At top level LC are of two types 
A) Thermotropic - where phase change in LC is controlled with change of temperature and it has similar but opposite effect with change of pressure. ( change due to temp decrease is equ to pressure increase when other is kept constant) 
 
B) Lyotropic - phase change in LC is induced by change in concentration of one component with respect to other. ( eg. "goo" collected at bottom of soap and cell membrance ) 
 
13) First attempt to describe the LC phase was given by Maier and Saupe in 1960, called as Maier-Saupe theory. It introduced the concept of dispersion force between molecules which occurs due to induced charges. It is proportional to the inverse sixth order of the distance. Critical conjecture was that a molecule will experience a force equal to all the molecules in the neighbor of it. i.e. average effect on all molecules must be the same. ( mean field theory ) As this force is strong along the preferred direction it is proportional to S. 
 
Thus change of order parameter due to temperature on one molecule due to others is deduced by them  
as S = (3 cos^2(theta) - 1 ) /2 . 
 
14) Imporatant point ( pg 176 ) - ... abrupt change in the direction of preferred orientation always implies severe distortion of the director configuration in the vicinity of the defect...- 
 
15) Types of defects - point, line etc. 
Line defects are called disclinations - "discontinuity" in the "inclination" of the director. 
 
Classification is done by observing the orientation in the plane perpendicular to the line. (number represents strength and negative sign represents opposite ) 
S = 1/2 
S = - 1/2 
S = 1 
S = -1 
S = 3/2 
S = 2 

Posted by:

Login Information
Username:
Password:

© Ketan Mehta. The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by Mississippi State University.