Web Application for the Dual Web Application for the Dual Web - - PowerPoint PPT Presentation

web application for the dual web application for the dual
SMART_READER_LITE
LIVE PREVIEW

Web Application for the Dual Web Application for the Dual Web - - PowerPoint PPT Presentation

Web Application for the Dual Web Application for the Dual Web Application for the Dual Web Application for the Dual Readout Calorimeter Database Readout Calorimeter Database Readout Calorimeter Database Readout Calorimeter Database Jennifer


slide-1
SLIDE 1

Web Application for the Dual Web Application for the Dual Readout Calorimeter Database Readout Calorimeter Database Web Application for the Dual Web Application for the Dual Readout Calorimeter Database Readout Calorimeter Database

Jennifer Karkoska

Supervisor: Hans Wenzel August 9, 2011

Fermilab SIST 2011

8/09/2011 1

slide-2
SLIDE 2

Contents Contents

  • Motivation
  • Structured Query Language (SQL)
  • Dual Readout Calorimeter Database
  • The Web Application
  • JavaServer Pages (JSP)
  • JavaScript (JS)
  • Example
  • Future Work

8/09/2011 2

  • J. Karkoska

DR Cal Web App

slide-3
SLIDE 3

Motivation: Dual Readout Calorimeter Project Motivation: Dual Readout Calorimeter Project

  • International collaboration trying to improve the models used for a

dual readout calorimeter

  • A dual readout calorimeter measures the energy resolution of

Cherenkov and scintillation light

  • Current goal: find the right materials for the calorimeter so the results

from the Geant4 simulations can be as accurate as possible

  • The data is organized into a database and be easily found and

displayed via a Web application

8/09/2011 3

  • J. Karkoska

DR Cal Web App

slide-4
SLIDE 4

Structured Query Language (SQL) Structured Query Language (SQL)

  • SQL is a computer declarative language that

accesses and modifies a database using a set of statements

  • There are three kinds of SQL statements, but this

database uses prepared statements to insert, update, retrieve, delete, and find specific pieces of data

Example prepared statement: INSERT INTO tags (name,value,iid) VALUES (?,?,?)

8/09/2011 4

  • J. Karkoska

DR Cal Web App

slide-5
SLIDE 5

Dual Readout Calorimeter Database Dual Readout Calorimeter Database

  • All of the data in the database is stored in a series of tables
  • Every plot can be identified by an ID number, category, tag

names, and tag values

Plot ID: 206 Category: SiPM

Tag Name: Detector Date Property Scale Value Ham-025U_4 110103 IV_forw_diode log

8/09/2011 5

  • J. Karkoska

DR Cal Web App

slide-6
SLIDE 6

DR Image Web Application DR Image Web Application

  • Allows a user to find and display plots from the

database, just by interacting with a Web page

  • Originally, this application only allowed the user to select

a plot based on an ID number

  • Crystals
  • SiPM
  • Crystals_2011
  • Detector
  • Mode
  • Crystal_type
  • Sample
  • Date
  • Method
  • Property
  • Scale
  • Compare
  • Ham-025U_4
  • Transmission
  • Emission
  • Excitation
  • BSO
  • F10
  • F19

Tag Values: Tag names: Categories:

  • Full_fit
  • Linear_fit
  • IV_forw_diode
  • Lin
  • Log
  • Vs_sample_10
  • Vs_undoped

Project goal: allow the user to select a plot by category, tags, and values

8/09/2011 6

  • J. Karkoska

DR Cal Web App

slide-7
SLIDE 7

JavaServer Pages (JSP) JavaServer Pages (JSP)

  • JSP: a combination of Java (processes the information) and

HTML (organizes the layout of the Web page)

Client 8/09/2011 7

  • J. Karkoska

DR Cal Web App

slide-8
SLIDE 8

JavaScript (JS) JavaScript (JS)

  • User input
  • Text fields
  • Check boxes
  • Database connection
  • User interaction
  • Tooltips
  • Image pop-ups
  • Dynamic tables
  • Image zooming

JSP: JS:

JSP: useful for collecting user data, but not very user-interactive

  • JS: run on the client's side and allows for more

user interaction than JSP

8/09/2011 8

  • J. Karkoska

DR Cal Web App

slide-9
SLIDE 9

DR ImageDB Home Page DR ImageDB Home Page

8/09/2011 9

  • J. Karkoska

DR Cal Web App

slide-10
SLIDE 10

Example Example

  • Category: Crystals

8/09/2011 10

  • J. Karkoska

DR Cal Web App

slide-11
SLIDE 11

Example Example

  • Category: Crystals
  • Tags: Compare AND

Crystal_type

8/09/2011 11

  • J. Karkoska

DR Cal Web App

slide-12
SLIDE 12

Example Example

  • Category: Crystals
  • Tags: Compare AND

Crystal_type

  • Values: vs_sample_10 AND

BSO

8/09/2011 12

  • J. Karkoska

DR Cal Web App

slide-13
SLIDE 13

Example (cont) Example (cont)

8/09/2011 13

  • J. Karkoska

DR Cal Web App

slide-14
SLIDE 14

Example (cont) Example (cont)

Search all columns: BSO6_A

8/09/2011 14

  • J. Karkoska

DR Cal Web App

slide-15
SLIDE 15

Example (cont) Example (cont)

Sort by (multiple) columns: sort by sample in ascending order

8/09/2011 15

  • J. Karkoska

DR Cal Web App

slide-16
SLIDE 16

Example (cont) Example (cont)

Hover over plot ID number for a preview of the image

8/09/2011 16

  • J. Karkoska

DR Cal Web App

slide-17
SLIDE 17

Final Examples Final Examples

View individual plots with table

  • f tags & values

Open a plot as a pop-up to view multiple plots side-by-side Zoom & pan on an image

8/09/2011 17

  • J. Karkoska

DR Cal Web App

slide-18
SLIDE 18

Conclusion & Future Work Conclusion & Future Work

  • The Dual Readout Calorimeter Project is an international

collaboration trying to find the best materials to use to make the DR Calorimeter as accurate as possible

  • Hundreds of thousands of tests might eventually be run in

Geant4, which will accumulate a great deal of data that needs to be stored

8/09/2011 18

  • J. Karkoska

DR Cal Web App

slide-19
SLIDE 19

Conclusion & Future Work Conclusion & Future Work

  • Ultimate goal: the database will become a knowledge base
  • f information where all of the data collected over the next

few years will be stored.

  • If a physicist wants to use a specific type of crystal or

detector, the knowledge base will know all of the information that needs to be put into a Geant4 simulation

  • Additionally, the Web application is a general tool that can

be used as a framework for other databases

8/09/2011 19

  • J. Karkoska

DR Cal Web App

slide-20
SLIDE 20

Acknowledgements Acknowledgements

  • Supervisor: Hans Wenzel
  • Adam Para and the Simulation of Optical Processes Group
  • Dr. James Davenport
  • Linda Diepholz, Jamieson Olsen, Dianne Engram, and the

entire SIST Committee

  • Mentors: Dave Peterson & Elmie Peoples

8/09/2011 20

  • J. Karkoska

DR Cal Web App

slide-21
SLIDE 21

J a v a S e r v e r P a g e s Geant4 simulations J a v a S c r i p t SQL Databases SELECT * FROM “public”.tags Java Programming Java Servlets SELECT iid FROM public.tags WHERE iid IN (%s) I N S E R T I N T O t a g s ( n a m e , v a l u e , i i d ) V A L U E S ( ? , ? , ? ) ImageServiceAdapter ia = new ImageServiceAdapterImpl(); < s c r i p t t y p e = " t e x t / j a v a s c r i p t " l a n g u a g e = " j a v a s c r i p t " s r c = " / D R I m a g e W e b A p p / j s / T

  • l

T i p . j s " > < / s c r i p t >

Knowledge base

L i s t < I n t e g e r > I m a g e L i s t = n e w A r r a y L i s t < I n t e g e r > ( ) ; <form name="myform" action ="PlotFrame.jsp" method="post" target="_blank">

8/09/2011 21

  • J. Karkoska

DR Cal Web App