CINXE.COM
ProShell – The MedAustron Accelerator Control Procedure Framework - CERN Document Server
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!--[if IEMobile 7]><html class="iem7" xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if lte IE 6]><html class="ie6 ie6-7 ie6-8" xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if (IE 7)&(!IEMobile)]><html class="ie7 ie6-7 ie6-8" xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if IE 8]><html class="ie8 ie6-8" xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if (gte IE 9)|(gt IEMobile 7)]><!--><html xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><!--<![endif]--> <head> <title>ProShell – The MedAustron Accelerator Control Procedure Framework - CERN Document Server</title> <link href='https://framework.web.cern.ch/framework/2.0/fonts/PTSansWeb/PTSansWeb.css' rel='stylesheet' type='text/css' /> <link rel="stylesheet" href="https://cds.cern.ch/img/invenio.css?v=20141127" type="text/css" /> <link rel="stylesheet" href="https://cds.cern.ch/img/cern_theme/css/cern_theme.css?v=20141127" type="text/css" /> <link rel="stylesheet"href="/css/font-awesome.min.css"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"/> <link rel="stylesheet" href="https://cds.cern.ch/img/cern_toolbar/css/toolbar.css" type="text/css" /> <!--[if lt IE 8]> <link href="https://cds.cern.ch/img/cern_toolbar/css/toolbar-ie.css" rel="stylesheet" type="text/css"> <![endif]--> <!--[if lt IE 8]> <link rel="stylesheet" type="text/css" href="https://cds.cern.ch/img/invenio-ie7.css" /> <![endif]--> <!--[if gt IE 8]> <style type="text/css">div.restrictedflag {filter:none;}</style> <![endif]--> <link rel="canonical" href="https://cds.cern.ch/record/1564286" /> <link rel="alternate" hreflang="el" href="https://cds.cern.ch/record/1564286?ln=el" /> <link rel="alternate" hreflang="fr" href="https://cds.cern.ch/record/1564286?ln=fr" /> <link rel="alternate" hreflang="bg" href="https://cds.cern.ch/record/1564286?ln=bg" /> <link rel="alternate" hreflang="zh-TW" href="https://cds.cern.ch/record/1564286?ln=zh_TW" /> <link rel="alternate" hreflang="pt" href="https://cds.cern.ch/record/1564286?ln=pt" /> <link rel="alternate" hreflang="no" href="https://cds.cern.ch/record/1564286?ln=no" /> <link rel="alternate" hreflang="hr" href="https://cds.cern.ch/record/1564286?ln=hr" /> <link rel="alternate" hreflang="ca" href="https://cds.cern.ch/record/1564286?ln=ca" /> <link rel="alternate" hreflang="de" href="https://cds.cern.ch/record/1564286?ln=de" /> <link rel="alternate" hreflang="it" href="https://cds.cern.ch/record/1564286?ln=it" /> <link rel="alternate" hreflang="zh-CN" href="https://cds.cern.ch/record/1564286?ln=zh_CN" /> <link rel="alternate" hreflang="sv" href="https://cds.cern.ch/record/1564286?ln=sv" /> <link rel="alternate" hreflang="sk" href="https://cds.cern.ch/record/1564286?ln=sk" /> <link rel="alternate" hreflang="en" href="https://cds.cern.ch/record/1564286?ln=en" /> <link rel="alternate" hreflang="pl" href="https://cds.cern.ch/record/1564286?ln=pl" /> <link rel="alternate" hreflang="ru" href="https://cds.cern.ch/record/1564286?ln=ru" /> <link rel="alternate" hreflang="ka" href="https://cds.cern.ch/record/1564286?ln=ka" /> <link rel="alternate" hreflang="ja" href="https://cds.cern.ch/record/1564286?ln=ja" /> <link rel="alternate" hreflang="es" href="https://cds.cern.ch/record/1564286?ln=es" /> <link rel="alternate" type="application/rss+xml" title="CERN Document Server RSS" href="/rss?ln=zh_TW" /> <link rel="search" type="application/opensearchdescription+xml" href="https://cds.cern.ch/opensearchdescription" title="CERN Document Server" /> <link rel="unapi-server" type="application/xml" title="unAPI" href="https://cds.cern.ch/unapi" /> <link rel="apple-touch-icon" href="/apple-touch-icon.png"/> <link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-precomposed.png"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Language" content="zh_TW" /> <meta name="description" content="MedAustron is a centre for ion-therapy and research in currently under construction in Austria. It features a synchrotron particle accelerator for proton and carbon-ion beams. This paper presents the architecture and concepts for implementing a procedure framework called ProShell. Procedures to automate high level control and analysis tasks for commissioning and during operation modelled with Petri-Nets and user code is implemented with C#. It must be possible to execute procedures and monitor their execution progress remotely. Procedures include starting up devices and subsystems in a controlled manner, configuring, operating O(1000) devices and tuning their operational settings using iterative optimization algorithms. Device interfaces must be extensible to accommodate yet unanticipated functionalities. The framework implements a template for procedure specific graphical interfaces to access device specific information such as monitoring data. Procedures interact with physical devices through adapter software components that implement one of the following interfaces: (1) state-less or (2) state-driven device interface. Components can extend these device interfaces following an objectoriented single inheritance scheme to provide augmented, device-specific interfaces. As only two basic device interfaces need to be defined at an early project stage, devices can be integrated gradually as commissioning progresses. We present the architecture and design of ProShell and explain the programming model by giving the simple example of the ion source spectrum analysis procedure. Moser, R; Brett, A B; Marchhart, M; Torcato de Matos, C; Gutleber, J; Dedič, J; Sah, S" /> <meta name="keywords" content="CERN Document Server, WebSearch, CERN Document Server" /> <script type="text/javascript" src="https://cds.cern.ch/js/jquery.min.js"></script> <!-- WebNews CSS library --> <link rel="stylesheet" href="https://cds.cern.ch/img/webnews.css" type="text/css" /> <!-- WebNews JS library --> <script type="text/javascript" src="https://cds.cern.ch/js/webnews.js?v=20131009"></script> <meta property="fb:app_id" content="137353533001720"/> <script type="text/x-mathjax-config"> MathJax.Hub.Config({ tex2jax: {inlineMath: [['$','$']], processEscapes: true}, showProcessingMessages: false, messageStyle: "none" }); </script> <script src="/MathJax/MathJax.js?config=TeX-AMS_CHTML" type="text/javascript"> </script> <!-- GoogleScholar --> <meta content="ProShell – The MedAustron Accelerator Control Procedure Framework" name="citation_title" /> <meta content="Moser, R" name="citation_author" /> <meta content="Gutleber, J" name="citation_author" /> <meta content="Torcato de Matos, C" name="citation_author" /> <meta content="Brett, A B" name="citation_author" /> <meta content="Dedič, J" name="citation_author" /> <meta content="Sah, S" name="citation_author" /> <meta content="Marchhart, M" name="citation_author" /> <meta content="Conf. Proc." name="citation_journal_title" /> <meta content="C111010" name="citation_volume" /> <meta content="MOPMN005" name="citation_firstpage" /> <meta content="2011" name="citation_publication_date" /> <meta name="citation_online_date" content="2013/07/24"> <meta name="citation_pdf_url" content="https://accelconf.web.cern.ch/icalepcs2011/papers/mopmn005.pdf" /> <!-- OpenGraph --> <meta content="ProShell – The MedAustron Accelerator Control Procedure Framework" property="og:title" /> <meta content="website" property="og:type" /> <meta content="website" property="og:type" /> <meta content="https://cds.cern.ch/record/1564286" property="og:url" /> <meta content="CERN Document Server" property="og:site_name" /> <meta content="MedAustron is a centre for ion-therapy and research in currently under construction in Austria. It features a synchrotron particle accelerator for proton and carbon-ion beams. This paper presents the architecture and concepts for implementing a procedure framework called ProShell. Procedures to automate high level control and analysis tasks for commissioning and during operation modelled with Petri-Nets and user code is implemented with C#. It must be possible to execute procedures and monitor their execution progress remotely. Procedures include starting up devices and subsystems in a controlled manner, configuring, operating O(1000) devices and tuning their operational settings using iterative optimization algorithms. Device interfaces must be extensible to accommodate yet unanticipated functionalities. The framework implements a template for procedure specific graphical interfaces to access device specific information such as monitoring data. Procedures interact with physical devices through adapter software components that implement one of the following interfaces: (1) state-less or (2) state-driven device interface. Components can extend these device interfaces following an objectoriented single inheritance scheme to provide augmented, device-specific interfaces. As only two basic device interfaces need to be defined at an early project stage, devices can be integrated gradually as commissioning progresses. We present the architecture and design of ProShell and explain the programming model by giving the simple example of the ion source spectrum analysis procedure." property="og:description" /> <!-- Twitter Card --> <meta content="summary" name="twitter:card" /> <meta content="summary" name="twitter:card" /> <style></style> </head> <body class="CERN32Document32Server search" lang="zh"> <!-- toolbar starts --> <div id="cern-toolbar"> <h1><a href="http://cern.ch" title="CERN">CERN <span>Accelerating science</span></a></h1> <ul> <li class="cern-accountlinks"><a class="cern-account" href="https://cds.cern.ch/youraccount/login?ln=zh_TW&referer=https%3A//cds.cern.ch/record/1564286%3Fln%3Dzh_TW" title="Sign in to your CERN account">Sign in</a></li> <li><a class="cern-directory" href="http://cern.ch/directory" title="Search CERN resources and browse the directory">Directory</a></li> </ul> </div> <!-- toolbar ends --> <!-- Nav header starts--> <div role="banner" class="clearfix" id="header"> <div class="header-inner inner"> <hgroup class="clearfix"> <h2 id="site-name"> <a rel="home" title="Home" href="/"><span>CERN Document Server</span></a> </h2> <h3 id="site-slogan">Access articles, reports and multimedia content in HEP</h3> </hgroup><!-- /#name-and-slogan --> <div role="navigation" id="main-navigation" class="cdsmenu"> <h2 class="element-invisible">Main menu</h2><ul class="links inline clearfix"> <li class="menu-386 first active-trail"><a class="active-trail" href="https://cds.cern.ch/?ln=zh_TW">搜尋</a></li> <li class="menu-444 "><a class="" title="" href="https://cds.cern.ch/submit?ln=zh_TW">提交</a></li> <li class="menu-426 "><a class="" href="https://cds.cern.ch/help/?ln=zh_TW">幫助</a></li> <li class="leaf hassubcdsmenu"> <a hreflang="en" class="header" href="https://cds.cern.ch/youraccount/display?ln=zh_TW">個人化</a> <ul class="subsubcdsmenu"><li><a href="https://cds.cern.ch/youralerts/list?ln=zh_TW">Your alerts</a></li><li><a href="https://cds.cern.ch/yourbaskets/display?ln=zh_TW">Your baskets</a></li><li><a href="https://cds.cern.ch/yourcomments?ln=zh_TW">Your comments</a></li><li><a href="https://cds.cern.ch/youralerts/display?ln=zh_TW">Your searches</a></li></ul></li> </ul> </div> </div> </div> <!-- Nav header ends--> <table class="navtrailbox"> <tr> <td class="navtrailboxbody"> <a href="/?ln=zh_TW" class="navtrail">主頁</a> > ProShell – The MedAustron Accelerator Control Procedure Framework </td> </tr> </table> </div> <div class="pagebody"><div class="pagebodystripemiddle"> <div class="detailedrecordbox"> <div class="detailedrecordtabs"> <div> <ul class="detailedrecordtabs"><li class="on first"><a href="/record/1564286/?ln=zh_TW">Information </a></li><li class="disabled"><a>Files </a></li></ul> <div id="tabsSpacer" style="clear:both;height:0px"> </div></div> </div> <div class="detailedrecordboxcontent"> <div class="top-left-folded"></div> <div class="top-right-folded"></div> <div class="inside"> <!--<div style="height:0.1em;"> </div> <p class="notopgap"> </p>--> <abbr class="unapi-id" title="1564286"></abbr> <style type="text/css"> <!-- ul.detailedrecordtabs li.on a{background-color:#4D94CC;color:#fff !important;border-bottom:1px solid #4D94CC!important;} div.detailedrecordboxcontent {padding-top:0px !important;} --> </style> <table class="formatRecordTableFullWidth" > <tr> <td class="formatRecordHeader" style="background-image: url('https://cds.cern.ch/img/journals.jpg');" colspan="2"> <!--YTD: record may have more than one 690C.a tag--> Article </td> </tr> <script type="text/javascript"> $( document ).ready(function() { $('.showAuthor').on('click', function() { var author = '<p>' + $(this).data('name') + '</p>'; var affiliation = $(this).data('affiliation') + '</br>'; var contribution = $(this).data('contribution') + '</br>'; $.magnificPopup.open({ items: { src: '<div id="ovelary-mathjax" class="overlay-white oc-content overlay-white-500">' + author + affiliation + contribution + '</div>', type: 'inline' }, callbacks: { open: function() { var div = document.getElementById("overlay-mathjax") MathJax.Hub.Queue(["Typeset", MathJax.Hub, div]); }, } }) }) }); </script> <tr><td class="formatRecordLabel"> Title </td><td style="padding-left:5px;"><b>ProShell – The MedAustron Accelerator Control Procedure Framework</b></td></tr> <tr><td class="formatRecordLabel"><span style="white-space:nowrap;"> Author(s) </span> </td><td style="padding-left:5px;"><a href="https://cds.cern.ch/search?f=author&p=Moser%2C%20R&ln=zh_TW">Moser, R</a> (CERN ; EBG MedAustron) ; <a href="https://cds.cern.ch/search?f=author&p=Brett%2C%20A%20B&ln=zh_TW">Brett, A B</a> (CERN ; EBG MedAustron) ; <a href="https://cds.cern.ch/search?f=author&p=Marchhart%2C%20M&ln=zh_TW">Marchhart, M</a> (CERN ; EBG MedAustron) ; <a href="https://cds.cern.ch/search?f=author&p=Torcato%20de%20Matos%2C%20C&ln=zh_TW">Torcato de Matos, C</a> (CERN ; EBG MedAustron) ; <a href="https://cds.cern.ch/search?f=author&p=Gutleber%2C%20J&ln=zh_TW">Gutleber, J</a> (CERN) ; <a href="https://cds.cern.ch/search?f=author&p=Dedi%C4%8D%2C%20J&ln=zh_TW">Dedič, J</a> (Cosylab, Ljubljana) ; <a href="https://cds.cern.ch/search?f=author&p=Sah%2C%20S&ln=zh_TW">Sah, S</a> (Cosylab, Ljubljana)</td></tr> <tr><td class="formatRecordLabel"> Publication </td><td style="padding-left:5px;">2011</td></tr> <tr><td class="formatRecordLabel"> Number of pages </td><td style="padding-left:5px;">4</td></tr> <tr><td class="formatRecordLabel"> In: </td><td style="padding-left:5px;"><i>Conf. Proc.</i> C111010 (2011) pp.MOPMN005</td></tr> <tr><td class="formatRecordLabel"> In: </td><td style="padding-left:5px;"><a href="https://cds.cern.ch/record/1370464">13th International Conference on Accelerator and Large Experimental Physics Control Systems</a>, Grenoble, France, 10 - 14 Oct 2011, pp.246-249</td></tr> <tr><td class="formatRecordLabel"> Abstract </td><td style="padding-left:5px;">MedAustron is a centre for ion-therapy and research in currently under construction in Austria. It features a synchrotron particle accelerator for proton and carbon-ion beams. This paper presents the architecture and concepts for implementing a procedure framework called ProShell. Procedures to automate high level control and analysis tasks for commissioning and during operation modelled with Petri-Nets and user code is implemented with C#. It must be possible to execute procedures and monitor their execution progress remotely. Procedures include starting up devices and subsystems in a controlled manner, configuring, operating O(1000) devices and tuning their operational settings using iterative optimization algorithms. Device interfaces must be extensible to accommodate yet unanticipated functionalities. The framework implements a template for procedure specific graphical interfaces to access device specific information such as monitoring data. Procedures interact with physical devices through adapter software components that implement one of the following interfaces: (1) state-less or (2) state-driven device interface. Components can extend these device interfaces following an objectoriented single inheritance scheme to provide augmented, device-specific interfaces. As only two basic device interfaces need to be defined at an early project stage, devices can be integrated gradually as commissioning progresses. We present the architecture and design of ProShell and explain the programming model by giving the simple example of the ion source spectrum analysis procedure.</td></tr> <tr><td class="formatRecordLabel"> Copyright/License </td><td style="padding-left:5px;">publication: (License: CC-BY)</td></tr> </table> <small> </small> <br/> <br/><br/><div align="right"><div style="padding-bottom:2px;padding-top:30px;"><span class="moreinfo" style="margin-right:10px;"> <a href="" class="moreinfo">Back to search</a> </span></div></div> <div class="bottom-left-folded"><div class="recordlastmodifiedbox" style="position:relative;margin-left:1px"> 記錄創建於2013-07-24,最後更新在2024-02-23</div></div> <div class="bottom-right-folded" style="text-align:right;padding-bottom:2px;"> <span class="moreinfo" style="margin-right:10px;"><a href="/search?ln=zh_TW&p=recid%3A1564286&rm=wrd" class="moreinfo">相似記錄</a></span></div> </div> </div> </div> <br/> <br /> <div class="detailedrecordminipanel"> <div class="top-left"></div><div class="top-right"></div> <div class="inside"> <div id="detailedrecordminipanelfile" style="width:33%;float:left;text-align:center;margin-top:0"> <small class="detailedRecordActions">External link:</small><br /><small><a href="https://accelconf.web.cern.ch/icalepcs2011/papers/mopmn005.pdf"><img style="border:none" src="/img/file-icon-text-34x48.gif" alt="Download fulltext" /><br />Published version from JaCoW</a></small> </div> <div id="detailedrecordminipanelreview" style="width:30%;float:left;text-align:center"> </div> <div id="detailedrecordminipanelactions" style="width:36%;float:right;text-align:right;"> <ul class="detailedrecordactions"> <li><a href="/yourbaskets/add?ln=zh_TW&recid=1564286">Add to personal basket</a></li> <li>Export as <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/hx?ln=zh_TW">BibTeX</a>, <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/hm?ln=zh_TW">MARC</a>, <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xm?ln=zh_TW">MARCXML</a>, <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xd?ln=zh_TW">DC</a>, <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xe?ln=zh_TW">EndNote</a>, <!-- <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xe8x?ln=zh_TW">EndNote (8-X)</a>,--> <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xn?ln=zh_TW">NLM</a>, <a style="text-decoration:underline;font-weight:normal" href="/record/1564286/export/xw?ln=zh_TW">RefWorks</a> </li> </ul> <div style='padding-left: 13px;'> <!-- JQuery Bookmark Button BEGIN --> <div id="bookmark"></div> <div id="bookmark_sciencewise"></div> <style type="text/css"> #bookmark_sciencewise, #bookmark {float: left;} #bookmark_sciencewise li {padding: 2px; width: 25px;} #bookmark_sciencewise ul, #bookmark ul {list-style-image: none;} </style> <script type="text/javascript" src="/js/jquery.bookmark.min.js"></script> <style type="text/css">@import "/css/jquery.bookmark.css";</style> <script type="text/javascript">// <![CDATA[ $.bookmark.addSite('sciencewise', 'ScienceWise.info', 'https://cds.cern.ch/img/sciencewise.png', 'en', 'bookmark', 'http://sciencewise.info/bookmarks/cds:1564286/add'); $('#bookmark_sciencewise').bookmark({sites: ['sciencewise']}); $('#bookmark').bookmark({ sites: ['facebook', 'twitter', 'linkedin', 'google_plusone'], icons: '/img/bookmarks.png', url: 'https://cds.cern.ch/record/1564286', addEmail: true, title: "ProShell \u2013 The MedAustron Accelerator Control Procedure Framework", description: "MedAustron is a centre for ion-therapy and research in currently under construction in Austria. It features a synchrotron particle accelerator for proton and carbon-ion beams. This paper presents the architecture and concepts for implementing a procedure framework called ProShell. Procedures to automate high level control and analysis tasks for commissioning and during operation modelled with Petri-Nets and user code is implemented with C#. It must be possible to execute procedures and monitor their execution progress remotely. Procedures include starting up devices and subsystems in a controlled manner, configuring, operating O(1000) devices and tuning their operational settings using iterative optimization algorithms. Device interfaces must be extensible to accommodate yet unanticipated functionalities. The framework implements a template for procedure specific graphical interfaces to access device specific information such as monitoring data. Procedures interact with physical devices through adapter software components that implement one of the following interfaces: (1) state-less or (2) state-driven device interface. Components can extend these device interfaces following an objectoriented single inheritance scheme to provide augmented, device-specific interfaces. As only two basic device interfaces need to be defined at an early project stage, devices can be integrated gradually as commissioning progresses. We present the architecture and design of ProShell and explain the programming model by giving the simple example of the ion source spectrum analysis procedure." }); // ]]> </script> <!-- JQuery Bookmark Button END --> </div> </div> <div style="clear:both;margin-bottom: 0;"></div> </div> <div class="bottom-left"></div><div class="bottom-right"></div> </div> </div></div> <footer id="footer" class="pagefooter clearfix"> <!-- replaced page footer --> <div class="pagefooterstripeleft"> CERN Document Server :: <a class="footer" href="https://cds.cern.ch/?ln=zh_TW">搜尋</a> :: <a class="footer" href="https://cds.cern.ch/submit?ln=zh_TW">提交</a> :: <a class="footer" href="https://cds.cern.ch/youraccount/display?ln=zh_TW">個人化</a> :: <a class="footer" href="https://cds.cern.ch/help/?ln=zh_TW">幫助</a> :: <a class="footer" href="https://cern.service-now.com/service-portal?id=privacy_policy&se=CDS-Service" target="_blank">Privacy Notice</a> <br /> 伺服器系統: <a class="footer" href="http://invenio-software.org/">Invenio</a> <br /> 管理者: <a class="footer" href="https://cern.service-now.com/service-portal?id=service_element&name=CDS-Service">CDS Service</a> - Need help? Contact <a href="https://cern.service-now.com/service-portal?id=service_element&name=CDS-Service">CDS Support</a>. <br /> </div> <div class="pagefooterstriperight"> <div class="cern-logo"> <a id="logo" href="http://cern.ch" title="CERN" rel="CERN" ><img src="https://cds.cern.ch/img/cern_theme/img/cern-logo-large.png" alt="CERN" /></a> </div> <div class="cern-languagebox"> 本網站提供以下語言選擇:<br /><a href="/record/1564286?ln=bg" class="langinfo">Български</a> <a href="/record/1564286?ln=ca" class="langinfo">Català</a> <a href="/record/1564286?ln=de" class="langinfo">Deutsch</a> <a href="/record/1564286?ln=el" class="langinfo">Ελληνικά</a> <a href="/record/1564286?ln=en" class="langinfo">English</a> <a href="/record/1564286?ln=es" class="langinfo">Español</a> <a href="/record/1564286?ln=fr" class="langinfo">Français</a> <a href="/record/1564286?ln=hr" class="langinfo">Hrvatski</a> <a href="/record/1564286?ln=it" class="langinfo">Italiano</a> <a href="/record/1564286?ln=ja" class="langinfo">日本語</a> <a href="/record/1564286?ln=ka" class="langinfo">ქართული</a> <a href="/record/1564286?ln=no" class="langinfo">Norsk/Bokmål</a> <a href="/record/1564286?ln=pl" class="langinfo">Polski</a> <a href="/record/1564286?ln=pt" class="langinfo">Português</a> <a href="/record/1564286?ln=ru" class="langinfo">Русский</a> <a href="/record/1564286?ln=sk" class="langinfo">Slovensky</a> <a href="/record/1564286?ln=sv" class="langinfo">Svenska</a> <a href="/record/1564286?ln=zh_CN" class="langinfo">中文(简)</a> <span class="langinfo">中文(繁)</span> </div> </div> <!-- replaced page footer --> </footer> <script type="text/javascript"> var SyndeticsBookCovers = (function() { var SMALL_SIZE = "sc.gif", MEDIUM_SIZE = "mc.gif", RAW_URL = "https://secure.syndetics.com/index.aspx?isbn=THEISBN/THESIZE&client=cernlibrary"; replaceCover = function(imgElement, isbns, hdFormat) { var img = new Image(), size = hdFormat ? MEDIUM_SIZE : SMALL_SIZE; var _isbns = isbns.sort(function(a, b) { // sort from shortest to longest ISBN (more modern) return a.length > b.length ? 1 : -1; }); function next() { var isbn = _isbns.pop(); if (isbn) { var url = RAW_URL.replace("THEISBN", isbn).replace("THESIZE", size); img.src = url; } } function done() { imgElement.src = img.src; } img.onload = function() { if (this.width > 1) { done(); } else { next(); } }; next(); }; return { replaceCover: replaceCover }; })(); $(document).ready(function() { // get book covers $("img.book-cover").each(function() { var $this = $(this), strIsbns = $this.data("isbns") || "", isbnsArray = String(strIsbns).split(","), hdFormat = $this.hasClass("hd"); SyndeticsBookCovers.replaceCover(this, isbnsArray, hdFormat); }); // WebNews tooltips $.ajax({ url: "/news/tooltips", success: function(data) { create_tooltips(data); }, dataType: "json", cache: false }); }); </script> <!-- Feedback script --> <script src="//cds.cern.ch/js/feedback.js"></script> <!-- Feedback script --> <!-- Matomo --> <script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="https://webanalytics.web.cern.ch/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '756']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script> <!-- End Matomo Code --> </body> </html>