PyFeyn is hosted by Hepforge, IPPP Durham

Opened 10 years ago

Last modified 10 years ago

#18 assigned enhancement

Provide mechanism for adding momentum/helicity arrows

Reported by: buckley Owned by: buckley
Priority: major Milestone: 0.4
Component: functionality Version: 2.0
Keywords: Cc:


Provide some way to add mometum or helicity arrows which are parallel to the appropriate line (just like labels, but cleverer).

Change History (6)

comment:1 Changed 10 years ago by vonhippg

I did this; you may want to check whether you think my solution is okay, and if so, close this ticket.

comment:2 Changed 10 years ago by buckley

Looks pretty good - I've only looked at example 1 so far, where it looks nice but the arrow heads seem to come up a bit short of the end of the arrow line, so the arrow has a blunt end. I'll have a look in the code and see what the the API elements you've introduced look like. I'd also like to be able to have wider arrows, like => as well as ->, for the helicities.

Any opinions on when we should release a "stable" 0.3? We should (temporarily) stop adding functionality at some point!

comment:3 Changed 10 years ago by buckley

  • Status changed from new to assigned

I've had a better look now - I think the API is great, but we should tidy up the arrows a bit: it would be nice if the arrows actually curved with the line, say by using a parallel deformer, then cutting out the appropriate bit of the parallel line with [pos*parpath.arclen()-arrowlen/2.0, pos*parpath.arclen()-arrowlen/2.0] and adding the arrow. I've added a parallel arrow to the virtual gluon in example 1 to test the arrow curviness.

Also, the arrow head should be pointy, as I mentioned before. We can wait until after 0.3 to add a => type of arrow :-)

Thanks for the work you've done on this and the very cool gluino - example 6 makes me very happy indeed!

comment:4 Changed 10 years ago by vonhippg

Oops, I didn't notice the non-pointiness/pointlessness :) of the parallel arrows. Should be fairly easy to fix. Curving the arrows might require a bit more work.

Thanks for liking the gluino -- it was really easy to write given your gluon and gaugino code: the only new thing I needed to add to the code merged from those was a list sort!

I agree we should probably stop adding new features for the moment and just fix any bugs that might crop up before the 0.3 release. The main thing I still want to do is polish the FeynML module to the point where (almost?) everything that can be done directly in Python can also be done via FeynML.

comment:5 Changed 10 years ago by buckley

Okay, sounds great. The arrow curviness can wait until after 0.3, unless one of us just feels like doing it one day - functionally it's fine, and curving them would just be a bit of fun/prettiness!

comment:6 Changed 10 years ago by buckley

  • Milestone changed from First public (0.3) to 0.4
Note: See TracTickets for help on using tickets.