cities. physics. food. environment. fatherhood.
Random header image... Refresh for more!

APS March Meeting 2018

I decided, back in January, that this was the year I’d transition my tcl scripts for re-formatting the APS March Meeting program into Python. I’m putting my python program here, but I don’t know if it will run on your system without tweaking. It needs two text files as input which I’ve traditionally cut-and-pasted from the APS March Meeting website: the Epitome, and the list of invited speakers (but see the discussion below).

march2tex.py

I admit what I do here is sort of quaint, in this age of cloud-based apps and so forth: a script to take two text files and generate three LaTeX files which, when run, make 3 pdf files that you can print. But I do it in part because the APS Meetings app is still garbage: it’s a generic scheduling app that doesn’t take into account the particular structure of the APS March Meeting and isn’t optimized for its main task: helping attendees decide which of more than 60 places they ought to be at any one point. But a rant about the app can come later.

Here are the pdf outputs of my scripts. These use the Epitome and Invited Speaker lists as of a week ago, February 15th.

Mar18_Invitedpy

Mar18_Epitomepy

Mar18_Gridpy

And if you like the idea of these but want to tweak the LaTeX formatting, here are the LaTeX sources for these:

Mar18_Epitomepy.tex

Mar18_Invitedpy.tex

Mar18_Gridpy.tex

Every year, there are changes to the format and structure of the meeting that force tweaks in the code, but this year was one of the most dramatic changes. The titles of invited talks used to use LaTeX commands to show mathematical symbols, Greek letters, sub- and super-scripts, and so forth. This year, there is only one invited talk that shows the $-delimited LaTeX commands in the invited talk list (L35.1), but if you view the abstract, the subscripts that these commands produce are rendered.

Many of the other talks with chemical formulas in their titles just write the titles out without subscripts, which looks ugly. So I found a regular expression that matched chemical formulas (and which needs the python regex package), and a LaTeX package that typeset them (mhchem), to make them look decent. But the regex isn’t good enough to capture something like “Fe1-x“. And then the regex also can’t tell that PHYS21 isn’t phosphorus-hydrogen-yttrium-henicosa-sulphate. So this required an unfortunate manual tweaking of the input file.

All of the Greek letters, and all the accent marks on speaker names, which used to be displayed with LaTeX commands, are now rendered. This good for readability, of course, but a disaster for a script that’s designed to take plain text and format everything with LaTeX. Parsing all the rendered formatting and unicode would add a whole extra level of programming difficulty.

I’m glad to have switched to python, though. My tcl script was merged together from what had been separate scripts to generate the different files, and I found a number of redundant arrays and unused variables, so the new program is much cleaner. Perhaps for next year, it will be able to scrape epitome and invited speaker list directly from the web. Or even better, perhaps APS will release a machine-readable scientific program. But then I might have to try to develop my own app.

1 comment

1 APS March Meeting 2018 Epitome notes — metcaffeination { 02.26.18 at 10:35 am }

[…] are some of the things I came across while putting together my nicely formatted versions of the Epitome and Invited Speaker list for the 2018 APS March […]

Leave a Comment