Linear Collider Forum



Home » Software Tools » org.lcsim » Reconstructing Events
Reconstructing Events [message #1104] Thu, 13 September 2007 20:35 Go to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
I am but a lowly grad student trying to reconstruct some events using LCsim in JAS3 Smile

I'm producing events that have two tau jets plus some SUSY particles. Eventually, I want to be able to reconstruct the effective mass of the two jets + missing energy (from SUSY particles, neutrinos, etc.).

For the sake of learning how to use LCsim, I thought I'd try to fool around with some of the drivers included. For example, MCFastReconstructedParticleDriver (org.lcsim.mc.fast.reconstructedparticle.MCFastReconstructed ParticleDriver). Can anyone explain to me how I run this? I've tried going through the tutorials ("Creating a Driver using JAS3") and modifying them to use the packages that I want but I've had very little success. It likely has something to do with my lack of java knowledge...

If anybody could point me in the right direction for how to use something like "MCFastReconstructedParticleDriver", "RecoDriver", etc. to get information that I'll need (jet energy, stuff like that), I would be forever grateful.

Cheers,
Blair
Re: Reconstructing Events [message #1105 is a reply to message #1104] Fri, 14 September 2007 00:14 Go to previous messageGo to next message
jfstrube
Messages: 64
Registered: September 2004
Location: Tohoku University
Hi Blair,

have you had a look at the examples?
http://confluence.slac.stanford.edu/display/ilc/Working+with +a+Sample+Driver
http://confluence.slac.stanford.edu/display/ilc/lcsim+Tutori als

All you need to do is install the org.lcsim plugin load the driver in JAS3, load your events and run the Driver. Most Drivers produce Histograms that you can look at.
I suggest to start with the Analysis101 Driver from the examples. See the first link above for details.

Please don't hesitate to follow up if you have specific questions or suggestions how to improve the documentation.
Cheers,
Jan
Re: Reconstructing Events [message #1108 is a reply to message #1105] Mon, 17 September 2007 13:54 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
using JAS3, I open the driver that I want to use (lcsim/src/org/lcsim/mc/fast/reconstructedparticle/MCFastRec onstructedParticleDriver.java)

I load my events and then try to compile MCFastReconstructedParticleDriver.java. JAS3 gives me the following compile errors:

=================================
Quote:

/usr/local/lcsim/src/org/lcsim/mc/fast/reconstructedparticle /MCFastReconstructedParticleDriver.java:126: cannot find symbol
symbol : method getProtonEff()
location: class org.lcsim.mc.fast.reconstructedparticle.IDResolutionTables
else if((abs(pdgid)== 2212) && (rand.nextDouble() < IDEff.getProtonEff()))

/usr/local/lcsim/src/org/lcsim/mc/fast/reconstructedparticle /MCFastReconstructedParticleDriver.java:130: cannot find symbol
symbol : method getKaonEff()
location: class org.lcsim.mc.fast.reconstructedparticle.IDResolutionTables
else if((abs(pdgid)== 321) && (rand.nextDouble() < IDEff.getKaonEff()))

/usr/local/lcsim/src/org/lcsim/mc/fast/reconstructedparticle /MCFastReconstructedParticleDriver.java:152: cannot find symbol
symbol : method getWtChgTrkCal()
location: class org.lcsim.mc.fast.reconstructedparticle.IDResolutionTables
MCFastReconstructedParticle rp = new MCFastReconstructedParticle(t, type, p, m_tc.get(t), IDEff.getWtChgTrkCal());

/usr/local/lcsim/src/org/lcsim/mc/fast/reconstructedparticle /MCFastReconstructedParticleDriver.java:152: internal error; cannot instantiate org.lcsim.mc.fast.reconstructedparticle.MCFastReconstructedP article. <init> at org.lcsim.mc.fast.reconstructedparticle.MCFastReconstructedP article to ()
MCFastReconstructedParticle rp = new MCFastReconstructedParticle(t, type, p, m_tc.get(t), IDEff.getWtChgTrkCal());



=====================

It says it can't find the symbol "getProtonEff()", which is from org.lcsim.mc.fast.reconstructedparticle.IDResolutionTables, but that is loaded at the top of the driver. Any suggestions?
Re: Reconstructing Events [message #1109 is a reply to message #1104] Tue, 18 September 2007 08:46 Go to previous messageGo to next message
lima
Messages: 47
Registered: May 2004
Location: DeKalb, IL, USA
Hi Blair,

I just loaded this MCFastReconstructedParticleDriver.java file in JAS3, and it compiles just fine for me. Are there any other compilation errors before these ones you showed? Do you have any modifications to the org.lcsim source code in your personal area?
If not, I would suggest you to reinstall JAS3 and try again.

Guilherme
Re: Reconstructing Events [message #1111 is a reply to message #1109] Tue, 18 September 2007 10:48 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
I just installed JAS3, LCsim, GeomConverter a few days ago so it's all a fresh installation. I haven't made any modifications to anything, just a standard installation. I can compile and run all of the org.lcsim examples. One interesting thing is that if I open MCFastReconstructedParticleDriver.java in NetBeans, it has a problem with the following imports:

import hep.physics.particle.Particle;
import hep.physics.particle.properties.ParticlePropertyManager;
import hep.physics.particle.properties.ParticlePropertyProvider;
import hep.physics.particle.properties.ParticleType;

Do these come with LCsim or did I overlook installing something?
Re: Reconstructing Events [message #1112 is a reply to message #1111] Tue, 18 September 2007 12:28 Go to previous messageGo to next message
Dmitry Onoprienko
Messages: 26
Registered: May 2004
Location: Kansas State University
Hello Blair,

I believe your compilation problem (when you compile from JAS3) comes from the fact that you are using the version of org.lcsim that you downloaded through JAS3 plugin manager.

Try checking out the latest version of lcsim module from CVS, building it, and installing into Jas3. Here are the tutorials that show how to do this:
Installing Maven with Netbeans Support
Building org.lcsim software

To resolve import problems in NetBeans, you need to tell the IDE where to find those packages. Maven will do this for you automatically if you use it to build the code.
Re: Reconstructing Events [message #1113 is a reply to message #1112] Tue, 18 September 2007 12:40 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
Those are the instructions that I followed to install it. Perhaps I can give a few more details:

1. I installed JAS3 (v 0.8.3, build 1686, Feb 1 2007)
2. I installed Maven 1.0.2
3. Installed NetBeans 5.0 and the mevenide plugin
4. Checked out lcsim and geomconverter through CVS and built with maven, according to the directions at the website you pointed me to.
5. Finally, I installed the JAS3 plugins (org.lcsim, AIDA, WIRED, etc.)

I can try checking out the lcsim package again.
Re: Reconstructing Events [message #1114 is a reply to message #1113] Tue, 18 September 2007 13:02 Go to previous messageGo to next message
Dmitry Onoprienko
Messages: 26
Registered: May 2004
Location: Kansas State University
If you build org.lcsim again, the newly created library may or may not overwrite the precompiled version, depending on your environment and whether you installed the plugin into "system" or "user" extensions directory. I recommend that you remove the org.lcsim plugin using plugin manager, then build org.lcsim from source and install it into Jas3.
Re: Reconstructing Events [message #1115 is a reply to message #1114] Tue, 18 September 2007 13:40 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
I checked out lcsim and geomconverter again and removed the org.lcsim plugin from JAS3 (using the plugin manager). I used maven on geomconverter, and also for lcsim but then for lcsim I used "maven jas:install".

Now, I can compile MCFastReconstructedParticleDriver.java but when I try to load it I get a popup window with the following error:

Quote:

java.lang.ClassNotFoundException: MCFastReconstructedParticleDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at org.freehep.jas.extension.compiler.JASClassLoader.findClass( JASClassLoader.java:27)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.freehep.jas.extension.compiler.JASClassManager.loadClass (JASClassManager.java:141)
at org.freehep.jas.extension.compiler.CompilerPlugin.loadReques ted(CompilerPlugin.java:110)
at org.freehep.jas.extension.compiler.CompilerPlugin.load(Compi lerPlugin.java:121)
at org.freehep.jas.extension.compiler.CompilerPlugin.access$100 (CompilerPlugin.java:45)
at org.freehep.jas.extension.compiler.CompilerPlugin$2.fireActi onPerformed(CompilerPlugin.java:224)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractB utton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultBu ttonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel .java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItem UI.java:1000)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased (BasicMenuItemUI.java:1041)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticast er.java:231)
at java.awt.Component.processMouseEvent(Component.java:5501)
at javax.swing.JComponent.processMouseEvent(JComponent.java:313 5)
at java.awt.Component.processEvent(Component.java:5266)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3968)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container. java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.j ava:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java: 3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1778)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at org.freehep.jas.util.waitcursor.WaitCursorEventQueue.dispatc hEvent(WaitCursorEventQueue.java:47)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventD ispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDis patchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread. java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread. java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:11 0)


At least it compiles now Smile
Re: Reconstructing Events [message #1116 is a reply to message #1115] Tue, 18 September 2007 14:49 Go to previous messageGo to next message
Dmitry Onoprienko
Messages: 26
Registered: May 2004
Location: Kansas State University
Are you loading it through File-Load... menu ?
If not, try it, and enter a fully qualified name of the class (org.lcsim.mc.fast.reconstructedparticle.MCFastReconstructed ParticleDriver)
Re: Reconstructing Events [message #1125 is a reply to message #1116] Thu, 20 September 2007 10:25 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
I am able to load it as you suggested (and it creates an "aida42114aida" folder in the left pane. However, when I try to run it, I get the following error:

Quote:

java.lang.IllegalArgumentException: Missing value for Proton
at org.lcsim.conditions.ConditionsSetImplementation.getDouble(C onditionsSetImplementation.java:49)
at org.lcsim.mc.fast.reconstructedparticle.IDResolutionTables.<init >(IDResolutionTables.java:31)
at org.lcsim.mc.fast.reconstructedparticle.MCFastReconstructedP articleDriver.process(MCFastReconstructedParticleDriver.java :85)
at org.lcsim.util.DriverAdapter.recordSupplied(DriverAdapter.ja va:74)
at org.freehep.jas.extensions.recordloop.MyChain.recordSupplied (MyChain.java:55)
at org.freehep.jas.extensions.recordloop.InteractiveRecordLoop. supplyRecord(InteractiveRecordLoop.java:533)
at org.freehep.jas.extensions.recordloop.RecordLoopManager.run( RecordLoopManager.java:66)
at java.lang.Thread.run(Thread.java:595)
Re: Reconstructing Events [message #1126 is a reply to message #1125] Thu, 20 September 2007 12:06 Go to previous messageGo to next message
Dmitry Onoprienko
Messages: 26
Registered: May 2004
Location: Kansas State University
This happens because you are trying to run the driver on a data file corresponding to a detector whose description does not contain "Proton" property as a part of "IDEfficiency" conditions set (look at IDEfficiency.properties file inside the detector zip file), and the code does not provide any default value.
Re: Reconstructing Events [message #1156 is a reply to message #1126] Thu, 27 September 2007 14:59 Go to previous messageGo to next message
bjasper
Messages: 33
Registered: March 2007
Location: University of Regina
I ran a simulation using SLIC and the CDCAUG05 geometry. Inside of the zip file, I modified the IDEfficiency.properties file to include Proton: 1.0 (perhaps it should be 0.0 but nonetheless). I then ran a simulation using this modified geometry and it still complained that it can't find Proton. Do I need to make the change somewhere else as well?
Re: Reconstructing Events [message #1160 is a reply to message #1156] Sun, 30 September 2007 17:44 Go to previous message
Dmitry Onoprienko
Messages: 26
Registered: May 2004
Location: Kansas State University
The simulation output file does not embed the entire detector description. It only contains the detector tag, so when you run a reconstruction job, the actual zip file with conditions data is looked up by this tag. In your case, it is probably downloaded from http://www.lcsim.org/detectors/ unless it's already in your local cache. If you would like to use a modified copy of the detector .zip file, try putting in into ~/.lcsim/detectors/ directory.
Previous Topic:Two naive questions for using Driver
Next Topic:How to find jet vertex in lcsim ?
Goto Forum:
  

[ PDF ]

Current Time: Fri Feb 21 10:08:33 Pacific Standard Time 2020
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.1.
Copyright ©2001-2010 FUDforum Bulletin Board Software