Presentation is loading. Please wait.

Presentation is loading. Please wait.

Geant4 on Web for Education, … - recent updates - Koichi Murakami (KEK/CRC) Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)1.

Similar presentations


Presentation on theme: "Geant4 on Web for Education, … - recent updates - Koichi Murakami (KEK/CRC) Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)1."— Presentation transcript:

1 Geant4 on Web for Education, … - recent updates - Koichi Murakami (KEK/CRC) Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)1

2 Geant4 for Education An educational Courseware for leaning elementary particle physics with Geant4. A hybrid e-learning system of wiki-like online textbooks (course materials) Geant4 Web application a.k.a. Geant4 Virtual Laboratory Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)2

3 Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)3 Hands-on-ware on Web, Geant4 Virtual Laboratory Hands-on-ware on Web, Geant4 Virtual Laboratory Ajax-powered GUI on Web + Python Web framework Ajax-powered GUI on Web + Python Web framework

4 Concerning Issues Contents Educational materials Self-description for Geant4 physics performance Wiki Media Wiki, Confluence Python web framework Turbo Gears, Pylons, Django Web service Multi G4 instance Scalability Deployment Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)4

5 Usecases of Geant4 on Web Geant4 Education Not to teach Geant4 but use Geant4 to teach Physics for HEP experiment, radiological physics and dosimetry,… hyper document with textbook and hands-on work G4 examples on Web with user manual hyper experience with G4 for instant users Explorer inside Geant4 particle, material, cross section, etc. framework of presenting physics performance Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)5

6 G4 Physics Performance Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)6 StandardLowE ClassG4PhotoElectricEffectG4LowEnergyPhotoElectric Subshell StructureG4AtomicShells (material category)${G4LEDATA}/fluor/binding.dat Cross Section Sandia parameterization (G4StaticSandiaData.hh) ${G4LEDATA}/phot/pe-cs-##.dat Photoelectron SpectrumMost inner shell only ${G4LEDATA}/phot/pe-ss-cs- ##.dat Electron Angular Distribution XXXXsimple / XXX / Polarized Local Energy Depositbinding energy Summary Python can access the data inside G4. This kind of table can be generated on-line. An example for Photoelectric

7 Educational Material Michel’s documentations There exists a lot of contents, which can be a good starting point. Documentation about each EM process documents/training/electromagnetic/processes/ in CVS repository similar to Geant4 Physics Reference Manual http://confluence- geant4.kek.jp/display/g4edu/Photoelectric+absorption http://confluence- geant4.kek.jp/display/g4edu/Photoelectric+absorption How about exercise course? for learning Geant4 and/or Physics? Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)7

8 An Example of Media Wiki implementation Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)8 Math expressions can be handled with Latex format Images

9 Confluence Enterprise wiki Better document management access control document structure move, remove, … Better handling images / attached files Support for math formula with LaTex evaluation for jsMath JavaScript for displaying math formula Commercial license (for multi users) Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)9

10 Inside Geant4 on Web Run Geant4 as web service independent of client enviroment Python web application framework TurboGears / Pylons / Django MVC(Model/View/Control) model MVC model Model: Geant4 / Python-interface / document management View: HTMLtemplate(Kids/Genshi/Mako)/ XHTML+CSS Control: URL mapping of Python functions CherryPy, route Rich client Ajax (Javascript) powered Ext, jQuery Koichi Murakami10Geant4 FFJPL Meeting (02/Sep/2008)

11 Structure of Geant4 Virtual Laboratory Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)11 Ajax-powered GUI as Control Panel of G4 applications Job Dispatcher / Load Balancer G4 Application Modules Web Framework URL maper Python Software Bus Client side Server side

12 Python Web Framework Turbo Gears Mega framework. Various functional components are covered. A collection of many python tools Complicated software structure Pylons New framework based on WSGI. Lighter than Turbo Gears Still developing Django Everything in a single package No software dependency Well matured. Easy to use. Many users and information Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)12

13 Django OR mapper automatic mapping from Python class to DB schema DB management tools (admin site) URL configuration based on regular expression Template engine included simple, easy to use, powerful Support for Ajax object serializer with JSON Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)13

14 14 Model histogramming tools Control route URL mapper of Python objects View template engine Kids CSS Genshi.html View on client Rich client using Ajax, Javascript JS libs XMLHTTP Request XML/JSON Server Client MVC model Ajax MVC model Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008) Django

15 Ext 2.0 Ext JS 2.x released matured and more powerful complete widget set some APIs are changed from 1.x need to update for 2.x Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)15

16 How to realize multiple Geant4 instances So far Geant4 instance is stuck to the web server. The process of web server runs Geant4 can handle only single instance cannot work as web service cannot response for multiple requests Web server invokes Geant4 instance in remote hosts. master-worker nodes model Each Geant4 instance runs in a worker node. remote python call with RPyC Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)16

17 Remote Python Call with RPyC The RPyC python module (3.x) can realize remote python call. A forking server runs in worker nodes Geant4 instances are invoked by a forking server. Scalable with # of worker nodes Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)17 Web Server (master) Forking Server G4

18 Working items Design of object model for web application user management Implementation with Django Forking server with RpyC (done) Connection between master (django) and worker (RPyC) servers update for ExtJS 2.x Ajax-based communication Ajax request / JSON object handling handling visualization data Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)18


Download ppt "Geant4 on Web for Education, … - recent updates - Koichi Murakami (KEK/CRC) Koichi MurakamiGeant4 FFJPL Meeting (02/Sep/2008)1."

Similar presentations


Ads by Google