1 / 18

Geant4 on Web for Education, … - recent updates -

Learn elementary particle physics using Geant4 through a hybrid e-learning system consisting of wiki-like online textbooks and a virtual laboratory. Explore physics performance and access educational materials.

pkeith
Download Presentation

Geant4 on Web for Education, … - recent updates -

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  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 Geant4 FFJPL Meeting (02/Sep/2008)

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

  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 Geant4 FFJPL Meeting (02/Sep/2008)

  5. Usecasesof 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 Geant4 FFJPL Meeting (02/Sep/2008)

  6. Summary G4 Physics Performance An example for Photoelectric Python can access the data inside G4. This kind of table can be generated on-line. Geant4 FFJPL Meeting (02/Sep/2008)

  7. EducationalMaterial • 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 • How about exercise course? • for learning Geant4 and/or Physics? Geant4 FFJPL Meeting (02/Sep/2008)

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

  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) Geant4 FFJPL Meeting (02/Sep/2008)

  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 Geant4 FFJPL Meeting (02/Sep/2008)

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

  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 Geant4 FFJPL Meeting (02/Sep/2008)

  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 Geant4 FFJPL Meeting (02/Sep/2008)

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

  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 Geant4 FFJPL Meeting (02/Sep/2008)

  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 Geant4 FFJPL Meeting (02/Sep/2008)

  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 Web Server (master) Forking Server Forking Server Forking Server G4 G4 G4 G4 G4 G4 G4 G4 G4 G4 G4 G4 Geant4 FFJPL Meeting (02/Sep/2008)

  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 Geant4 FFJPL Meeting (02/Sep/2008)

More Related