Table of Contents

**epibin**

The direction of rotation is defined according to the sign of the pattern speed (positive: counter clock wise rotation, negative: clock wise rotation).

For theory and description see Per A.B. Lindblad, thesis Stockholm Observatory 1996, Chapt. 2.2 and Paper V (Lindblad & Lindblad 1994, ASPC 66, p.29), and the "EPIC5 manual".

**epibin** ... bins the LOS velocities from EPIRV, but in the
EXAMPLES section below, some NEMO alternatives are given by converting
the tables to a *snapshot(5NEMO)*
.

**Parameter file:** Input
parameters must be given in a parameter file with the following content
(file names are a string with max 10 characters):

Name of file with rotation curve (’VFILE’) ’vrot’ Name of file with perturbing potential (’BFILE’) ’perpot’ Pattern velocity in km/s/kpc (OMEGAP) -18 Coefficient of friction at 0 kpc (BLAMBD0) 7 Coefficient of friction at RMAX kpc (BLAMBDf) 7 Soft corotation coefficient in km/s/kpc (EOMEG) 5 Minimum value for R in the computations in kpc (R0) 0.01 Interval of R in the computations in kpc (DR) 0.5 Maximum value for R in the computations in kpc (RMAX) 22 Number of THETA values (<60) for each R (NTHETA) 32

The rotation curve and the perturbing potential are both ascii files,
but in the "annoying" fortran style with wrapped lines that do not allow
to go over 80 (or so) characters. See **perpot.py** for examples how to process
them.

The ’VFILE’ must have the following format:

NFRAD DRFRAD FRAD(I), (I=1,NFRAD)

where NFRAD (<NRAD) is the number of velocities and DRFRAD is the radial increment between velocities in the rotation curve, and FRAD the velocities. The first point, I=1, corresponds to a radius R = 0.

The ’BFILE’ must have
the following format:

NPER DRP MMAX NTH NC AMPC(M), (M=1,10) AMPS(M), (M=1,10) for M=1,MMAX: CP(I,M) (I=1,NPER) SP(I,M) (I=1,NPER)

where NPER (<NRAD) is the number of values and DRP the increment between values for the perturbing potential. CP(I,M) and SP(I,M) are amplitudes of the COS(M*THETA) resp. SIN(M*THETA) components of of the Fourier development the perturbing potential. AMPC(M) and AMPS(M) are factors with which these amplitudes will be multiplied. MMAX (<10) is the maximum M value in the development of the potential. NTH (<100) and NC are the number of THETA values and contours for potential plotting.

Positions and densities will
be listed in file **EPIDEN** and plotted in file **density.ps**. Positions, x and
y velocities will be listed in file **EPIRV** and plotted in file **velocity.ps**

Test values are written in file **EPITEST**.

is user input

% epic5 Parameter file: epar ARE PARAMETERS CORRECT ? (y/n): y Perturbing potential ? (y/n) : y SEE THE INPUT PLOTS ? (y/n): y RMAX = 22.0 ? (y/n): y PERTURBING POTENTIAL: Graphics device/type (? to see list, default /NULL): /xs TOTAL POTENTIAL: Graphics device/type (? to see list, default /NULL): /xs REMAINING INPUT PLOTS ? (y/n): n COMPUTE ORBITS ? (y/n): y PRINT THIS PLOT ? (y/n): y CHANGE RMAX ( 22.0)? (y/n): n PLOT DENSITIES ? (y/n): @todo: user has no idea what units are y NUMBER OF CONTOURS?: 2 CONTOURS?: 0.1,1 PLOT DENSITIES WITH PERTURBING POTENTIAL? (y/n): n PLOT DENSITIES ? (y/n): n GIVE POSITION ANGLE OF LINE OF NODES (BAR=90,TO QUIT WRITE 360 OR MORE): 45 CONTOUR INTERVAL (KM/S)?: 20 GIVE POSITION ANGLE OF LINE OF NODES (BAR=90,TO QUIT WRITE 360 OR MORE): 999

The **perpot** file can probably be generated from an N-body snapshot using
the *snapfour(1NEMO)*
program. Has not been tried.

THe **EPIRV** file is a simple
list of **x,y,vx,vy**, in NEMO *bodytrans(5NEMO)*
terms, so it is straightforward
to replace some of the plotting functionality with NEMO tools. Here are
some examples, first converting the table to a snapshot:

# convert velocities to snapshot tabtos EPIRV snap1 block1=x,y,vx,vy # make a velocity field snaprotate snap1 - 45 x |\ snapmap - - xrange=-32:32 yrange=-32:32 evar=vz svar=1 |\ ccdfits - snap1.fits # make a global profile snaprotate snap1 - 45 x |\formally this is not exactly correct, since the velocities are not weighted by their densities. The two arrays (EPIDEN and EPIRV) are not on the same grid, making the correct procedure a bit more work for this short example.snapprint - vx |\tabhist - 1 -320 320 bins=16 # convert densities to snapshot tabtos EPIDEN snap2 block1=x,y,m # make a density map snapmap snap2 - xrange=-32:32 yrange=-32:32 evar=m svar=1 |\ ccdfits - snap2.fits

fortran is an annoying language with the the first columns sometimes just is blank. This complicated fixed formated reading, which is a bug I had to fix. Version creep?

There is a unix IRC client with the same name,
see *epic5(1)*
. But we were here first, so there.

$NEMO/usr/lindblad/epic5code distribution eparinput parameter file for epic5 vfilerotation curve (1st filename in epar) ("vrot") bfileperturbing potential file (2nd filename in epar) ("perpot") EPIRVwritten (23) - but must exist to bootstrap EPIDENwritten (22) - but must exist to bootstrap EPITESTwritten (25) - but must exist to bootstrap density.pspgplot file produced by epic5 velocity.pspgplot file produced by epic5 orbits.pspgplot file produced by epic5 histogram.psproduced by epibin

https://ui.adsabs.harvard.edu/abs/1994ASPC...66...29L/abstract
- *Kinematics of Interstellar Matter in a Barred Potential in the Epicyclic
Approximation* (EPIC V1)

https://ui.adsabs.harvard.edu/abs/2012MNRAS.421.1089P/abstract
- *Analytic gas orbits in an arbitrary rotating galactic potential using
the linear epicyclic approximation* (EPIC V5)

https://ui.adsabs.harvard.edu/abs/2013PhDT.........5P/abstract
- *Rearrangement of gas in disc galaxies*, Thesis Pinol-Ferrer

11-aug-1993First version (P.O. Lindblad & P.A.B. Lindblad) 2011-2012Modification by P.O. Lindblad, N. Pinol-Ferrer and K Fathi (see source code) apr-2021Adapted for NEMOPJT