, but this code // executes before the first paint, when

°ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Kumar Sinniah | °ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ

°ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ

Skip to main content

Dr. Kumar Sinniah

Professor, Department Co-Chair, chemistry/biochemistry
Pre-Med/Pre-Dent/Pre-PA faculty advisor for chemistry/biochemistry majors

Biography

## ##

text

## ##
##
Undergraduate Students ##
## ##
##
##
Presentations ##
## ##
##
##

Education

  • B.Sc. University of Colombo, Sri-Lanka Chemistry (First-class honors), 1984

  • Ph.D. University of Pittsburgh, Physical Chemistry, 1991

Thesis: Laser induced thermal desorption of molecules from surfaces
Thesis Advisor: Professor Kenneth C. Janda and Professor John T. Yates, Jr.

Professional Experience

  • Professor of Chemistry, °ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼×ÊÁÏ (College) - 1995–present
  • Visiting Professor, University of Michigan, Ann Arbor - 2008–2009
  • Visiting Professor, Department of Chemistry, University of Cambridge, UK - 2001–2002 
  • Visiting Scientist, Department of Chemistry, University of Maryland - Summer 1998 
  • Visiting Scientist, Department of Chemistry, University of Maryland and NIST - Summer 1996
  • Postdoctoral Research Fellow, University of Maryland at College Park, 1992–1995

Academic Interests

The focus of my research group is on single molecule analysis of biomolecular interactions by atomic force microscopy methods. Single molecule analysis provides a unique insight into biological processes that cannot be obtained by conventional methods that provides average measurements from an ensemble of molecules. In our research group, we use single molecule force spectroscopy to study the biophysical interactions between enzymes and inhibitors, and in DNA molecules.

Publications