Available Programs
BEND
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: Menu driven from the command line, with an option of some input from an
external file.
BEND finds a minimal elastic strain energy configuration for a group of
superconducting cables.
For documentation there is an outline
of program execution as seen by the user,
and a diagram of program structure.
The program is broken up into five modules with names of the form bn_m where
m is the version number of the module and n distinguishes the module:
- n=0: MAIN, the main module.
- n=1: STEP1, establishes the base curve.
- n=2: STEP2, establishes the guiding strip.
- n=3: GROUP, groups cables together about the guiding strip.
- n=4: UTILITIES, subroutines used by any of the preceding modules.
For pseudocode documentation of these modules, click on the links
MAIN,
STEP1,
STEP2,
GROUPand
UTILITIES.
Output files have names of the form 'name.extension' where 'name' is
the user-chosen name for the current run and 'extension' depends on the
kind of data contained in the file:
- name.dat: The untwisted guiding strip, from MAIN.
- name.stp: The twisted guiding strip, from MAIN.
- name.fre: Frenet frames along the base curve, from MAIN.
- name.shf: Shelf under the group, from GROUP.
- name.ins: Inside lateral surface of the group, from GROUP.
- name.ous: Outside lateral surface of the group, from GROUP.
- name.cen: Current centroids of each cable in the group, from GROUP.
- name.cor: The four corners of each trapezoidal cross section of each
cable in the group, from GROUP.
- name.fra: Cable frames, from GROUP.
PART
Language: Fortran 77
Author: Jeff Brandt, brandt@fnal.gov
Input: Files output by BEND.
Output into Fermilab's CAD systems.
DELCOR
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.cor' file output by BEND.
The delta-l-over-l is computed for the four edges (formed by the four
vertices of trapezoidal cross sections) of every cable in the group,
by fitting a circle to three consecutive vertices along each edge.
CORNIN
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.cor' file output by BEND.
This complete program is meant to be embedded as a subroutine in larger
programs constructed by users who need the corner coordinates for reasons
of their own. For example it is embedded in program BENDRX
which then outputs a file formatted for input into ROXIE. And Mike Helm of
LBNL has embedded it in a program which then outputs a file formatted for
input into OPERA and ANSYS and the LBL CAD system.
CENTIN
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.cen' file output by BEND.
This complete program is meant to be embedded as a subroutine in larger
programs constructed by users who need the current centroid coordinates
for for computation of fields and Lorentz forces.
AVOID
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: A ruled surface to be varied by the user until its rulings do not
intersect a fixed strip contained in a second ruled surface.
BEND2D
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: From the screen.
A simple two-dimensional version of BEND for use on the ALS.
PK2B
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: LBNL format.
Output: Reformatted for input into BEND.
REBEND
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.cor' file output by BEND.
Cable groups constrained to lie on the surface of a cylinder are deformed
so as to lie on a conical surface.
BTWIST
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.cor' file output by BEND.
Models a helical wiggler.
Graphical Subroutines
Language: Microsoft Fortran Powerstation
Author: Joe Cook, jmcjmc@fnal.gov
PLOTGS, GRAPH12S and GRAPH22s plot curves and strips with rulings in the
plane and in space.
Because these subroutines use the graphics package coming with the MS
Powerstation compiler, they run only under DOS and Windows 3.1.
STEP1I.java
Language: Java 1.1
Author: Joe Cook, jmcjmc@fnal.gov
A Java applet version of subroutine STEP1I in BEND. It models an Euler
elastica constrained to lie on the surface of a cylinder. At present this
version allows for only interactive solution of the two-point boundary
problem. (In the subroutine this solution is automated.)
GSMP
Language: PL/I
Author: Joe Cook, jmcjmc@fnal.gov
A general system modeling program.
VERIFY
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: The 'name.stp', 'name.fre', 'name.shf', 'name.ins' and 'name.ous'.
Checks output from BEND before sending it to the CAD system.
LEAD
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Input: Menu driven from the command line.
Constructs a single cable which smoothly interpolates between any two
given endpoints while passing through any number of given intermediate points.
ELKRod
Language: Fortran 90
Author: Joe Cook, jmcjmc@fnal.gov
Input: The six parameters representing the forces
on one end of an Euler-Kirchhoff rod in three-dimensional space with three
arbitrary rigidities.
Output: The six parameters representing the position and orientation of the
other end of the rod.
The configuration of the rod is obtained by solution of the Euler-Lagrange
equations for the elastic energy minimization variational problem.
The two-point boundary condition is solved by the Method of Shooting
combined with a conjugate-gradient minimization to home the terminal end
of the rod in on the terminal boundary conditions.
EKRod
Language: Fortran 90
Author: Joe Cook, jmcjmc@fnal.gov
The minimal-energy configuration of an Euler-Kirchoff rod with circular cross
section, in the presence of external forces, is found by direct minimization.
Two versions are available depending on whether the Nelder-Mead or Powell
algorithms are used to effect the minimization.
ROXIE
Language: Fortran 90
Author: Stephan Russenschuck, Stephan.Russenschuck@cern.ch
A program package developed for the design and optimization of coil geometries
in two and three dimensions. See, for example, Russenschuck's invited paper,
A Computer Program for the Design of Superconducting Accelerator
Magnets, for the 11th ACES Meeting, Monterey, CA, March 95.
BENDRX
Language: Fortran 77
Author: Joe Cook, jmcjmc@fnal.gov
Interfaces with
ROXIE. Used primarily by Gianluca Sabbi, Sabbi@fnal.gov.
"About the Deformation of an Inner Cable on the Hard Way Bending Plane"
Language: MathCad
Author: Giampaolo Ferrari, giamy@luna.it
Analyzes an experimental determination of the rigidity of a Rutherford cable.