[GPF Home Page]
calc_NC.f90 user-added calculator call function for ncurses routines
cntcrv.f90 cntcrv(3f): place-holder for user-supplied routine used by M_contourplot(3fm)
dparanoia.f90 dparanoia(3f): test doubleprecisions operations in programming environment
mat88_user.f90
M_anything.f90 M_anything::anyscalar_to_real128(3f): convert integer or real parameter of any kind to real128
M_anything::anyscalar_to_double(3f): convert integer or real parameter of any kind to doubleprecision
M_anything::anyscalar_to_real(3f): convert integer or real parameter of any kind to real
M_anything::anyscalar_to_int64(3f): convert integer parameter of any kind to 64-bit integer
M_anything::anyinteger_to_string(3f): function that converts an integer value to a character string
M_args.f90 M_args::get_command_arguments_string(3f): return all command arguments as an allocated string
M_args::get_namelist(3f): return all command arguments as a NAMELIST(3f) string to read
M_args::get_command_arguments_as_raw_namelist(3f): return all command arguments as a NAMELIST(3f) string
M_args::prototype_to_dictionary(3f): parse user command and store tokens into dictionary
M_args::prototype_and_cmd_args_to_nlist: create dictionary from prototype (if not null) and update from command line arguments
M_args::namelist_to_dictionary(3f): parse user command and store tokens into dictionary
M_strings::oneline(3f): append an array of character variables with space separator into a single CHARACTER variable
M_bessel.f90 M_bessel::bes(3f):calculate Bessel functions J(X), Y(X), I(X), K(X) for doubleprecision arguments and integer orders
M_bessel::besi(3f):compute the I Bessel function for a given argument and order
M_bessel::besj(3f):compute the J Bessel function for a given argument and order
M_bessel::besj0(3f):calculates the Bessel function J(X) of order zero.
M_bessel::besj1(3f): calculates the Bessel function J(X) of order one.
M_bessel::besk(3f):compute the K Bessel function for a given argument and order
M_bessel::besy(3f):compute the Y Bessel function for a given argument and order
M_bessel::besy0(3f): calculates the Bessel function Y(X) of order zero.
M_big_integer.f90
M_BRE.f90 M_BRE::M_BRE(3fm): module for Basic Regular Expressions, inspired by Ratfor version
M_BRE::locate(3f): look for c in char class at pat(offset)
M_BRE::getpat(3f): convert str into pattern
M_BRE::getpat(3f): convert str into pattern
M_BRE::addset(3f): put c in string(j) if it fits, increment
M_BRE::stclos(3f): insert CLOSURE entry at pat(j)
M_BRE::dodash(3f): expand array(i-1)-array(i+1) into set(j)... from valid
M_BRE::getccl(3f): expand char class at arg(i) into pat(j)
M_BRE::filset(3f): expand set at array(i) into set(j), stop at delim
M_BRE::indx(3f): returns position of character in string
M_BRE::match(3f): find match anywhere on line
M_BRE::error(3f): print message and stop program execution
M_BRE::patsiz(3f): returns size of pattern entry at pat(n)
M_BRE::makpat(3f): make pattern from arg(from), terminate on delim
M_BRE::amatch(3f): (non-recursive) look for match starting at lin(from)
M_BRE::amatch(3f): (non-recursive) look for match starting at lin(from)
M_BRE::omatch(3f): try to match a single pattern at pat(j)
M_BRE::esc(3f): map array(i) into escaped character if appropriate
M_BRE::f2r(3f): convert Fortran character variable to Ratfor integer array with Ratfor terminator
M_BRE::r2f(3f): convert Ratfor integer array to Fortran character variable
M_calcomp.f90 M_calcomp::circl(3f): draws an arc or spiral
M_calcomp::dashl(3f): draws a polyline with dashed lines
M_calcomp::dashp(3f): draw from current position to new point with dashed line
M_calcomp::elips(3f): draw an elliptical arc
M_calcomp::fit(3f): draws a semi-hyperbolic curve through three points
M_calcomp::grid(3f): draws a linear grid
M_calcomp::poly(3f): draw an equilateral polygon
M_calcomp::rect(3f): draw a rectangle
M_calcomp::curvx(3f): plots a function of X over a given range
M_calcomp::curvy(3f): plots a function of Y over a given range
M_calcomp::fline(3f): plot a polyline with optional fit
M_calcomp::lgaxs(3f): draw logarithmic axis
M_calcomp::lglin(3f): draw polyline in log-log or semi-log mode
M_calcomp::polar(3f): plot radial values versus angular variables (as polar coordinates)
M_calcomp::scalg(3f): determine scale factors for a logarithmic scale
M_calcomp::smoot(3f): draw a polyline using modified spline-fitting technique
M_calcomp::axis(3f): Draw linear axis with numeric scale and axis label
M_calcomp::factor(3f): rescale entire plot
M_calcomp::mset(3f): this is a general mode setting routine.
M_calcomp::line(3f): Plot a polyline with optional rescaling
M_calcomp::width(3f): select new pen width
M_calcomp::newpen(3f): select new pen color and move to origin
M_calcomp::nframe(3f): start new frame
M_calcomp::number(3f): plots a floating-point number
M_calcomp::plot(3f): move with pen up or down or start new origin or terminate plotting
M_calcomp::plots(3f): initialize the CALCOMP package
M_calcomp::scale(3f): calculate scaling factors for producing XY plots with LINE(3f) and AXIS(3f) routines
M_calcomp::symbol(3f): draw text string or marker
M_calcomp::where(3f): return current position and current plot-scaling factor
M_calcomp::cntour(3f): draw a contour plot
M_calculator.f90 M_calculator::calculator(3f): The procedure CALCULATOR(3f) acts like a calculator
M_calculator::a_to_d_(3f):returns a real value rval8 from a numeric character string chars.
M_calculator::getvalue(3f): given numeric variable name return value
M_calculator::stuffa(3f): directly store a string into calculator variable name table
M_calculator::inum0(3f):resolve a calculator string into a whole integer number
M_calculator::rnum0(3f):resolve a calculator string into a real number
M_calculator::dnum0(3f):resolve a calculator string into a doubleprecision number
M_calculator::snum0(3f):resolve a calculator expression into a string
M_calculator::expression(3f):call CALCULATOR(3f) calculator and display messages
M_calculator::strgarr(3f):read numeric expressions into an real array
M_calculator::strgar2(3f):read numeric and string calculator expressions into an array USING CALCULATOR
M_CLI.f90 PROGRAM: demo5
DESCRIPTION: My demo program
VERSION: 1.0 20200115
AUTHOR: me, myself, and I
LICENSE: Public Domain

'|tr '
M_CLI::commandline(3f): return all command arguments as a NAMELIST(3f) string to read
M_CLI::prototype_to_dictionary(3f): parse user command and store tokens into dictionary
M_CLI::prototype_and_cmd_args_to_nlist: create dictionary from prototype (if not null) and update from command line arguments
M_list::locate_c(3f): find PLACE in sorted character array where VALUE can be found or should be placed
M_list::locate_d(3f): find PLACE in sorted doubleprecision array where VALUE can be found or should be placed
M_list::locate_r(3f): find PLACE in sorted real array where VALUE can be found or should be placed
M_list::locate_i(3f): find PLACE in sorted integer array where VALUE can be found or should be placed
M_list::dict_delete(3f): remove string from sorted allocatable string array if present
M_list::dict_get(3f): get value of key-value pair in dictionary, given key
M_list::dict_add(3f): place key-value pair into dictionary, adding the key if required
M_strings::isupper(3f): returns true if character is an uppercase letter (A-Z)
M_strings::upper(3f): Changes a string to uppercase
M_strings::lower(3f): Changes a string to lowercase over specified range
M_strings::replace(3f): Globally replace one substring for another in string
M_strings::strtok(3f): Tokenize a string
M_strings::substitute(3f): Globally substitute one substring for another in string
M_CLI2.f90 M_CLI2::str(3f): {msg_scalar,msg_one}

'|tr '
M_CLI2::set_args(3f): parse prototype string
PROGRAM: demo_get_subcommand
DESCRIPTION: My demo program
VERSION: 1.0 20200715
AUTHOR: me, myself, and I
LICENSE: Public Domain
M_CLI2::get_subcommand(3f): parse prototype string to get subcommand, allowing for response files
M_CLI2::prototype_to_dictionary(3f): parse user command and store tokens into dictionary
M_CLI2::prototype_and_cmd_args_to_nlist: create dictionary from prototype if not null and update from command line
M_CLI2::strtok(3f): Tokenize a string
M_CLI2::get_anyarray_l(3f): given keyword fetch logical array from string in dictionary(F on err)
M_CLI2::get_anyarray_d(3f): given keyword fetch dble value array from Language Dictionary (0 on err)
M_CLI2::get_anyarray_c(3f): Fetch strings value for specified KEYWORD from the lang. dictionary
M_CLI2::get_args_fixed_length_a_array(3f): Fetch strings value for specified KEYWORD from the lang. dictionary
M_CLI2::get_fixedarray_fixed_length_c(3f): Fetch strings value for specified KEYWORD from the lang. dictionary
M_CLI2::get_scalar_anylength_c(3f): Fetch string value for specified KEYWORD from the lang. dictionary
M_CLI2::get_args_fixed_length_scalar_c(3f): Fetch string value for specified KEYWORD from the lang. dictionary
M_CLI2::journal(3f): writes a message to a string composed of any standard scalar types
M_CLI2::upper(3f): Changes a string to uppercase
M_CLI2::lower(3f): Changes a string to lowercase over specified range
M_CLI2::split(3f): parse string on delimiter characters and store tokens into an allocatable array
M_CLI2::replace_str(3f): Globally replace one substring for another in string
M_CLI2::merge_str(3f): pads first and second arguments to MERGE(3f) to same length
M_CLI2::decodebase(3f): convert whole number string in base [2-36] to base 10 number
M_CLI2::lenset(3f): return string trimmed or padded to specified length
M_CLI2::substitute(3f): Globally substitute one substring for another in string
M_CLI2::locate_c(3f): find PLACE in sorted character array where VALUE can be found or should be placed
M_strings::atleast(3f): return string padded to at least specified length
M_CLI2::locate_key(3f): find PLACE in sorted character array where VALUE can be found or should be placed
M_color.f90 M_color::color(3f): convert between common color models
M_color::hue(3f): convert color components from one color model to another
M_color::rgbmono(3f): convert RGB colors to a reasonable grayscale
M_color::closest_color_name(3f): given RGB values, try to find closest named color
M_color::color_name2rgb(3f): given a color name, return rgb color values in range 0 to 100
M_strings::lower(3f): Changes a string to lowercase over specified range
M_Compare_Float_Numbers.f90
M_constants.f90
M_contourplot.f90 M_contourplot::contourlines(3f):calculate contour lines from ungridded data f(x,y) and call user-supplied routine with results
M_csv.f90 M_csv::csv_write(3f): write scalar intrinsic type using current CSV style
M_csv::csv(3f): writes up to twenty standard scalar types as a line in a CSV file
M_curl.f90
M_display.f90 M_display(3fm): module for pretty-printing matrices
M_disp::disp_scalar_int(3f): integer scalar without title (call disp_title_scalar_int(3f) with title='')
M_display::disp_scalar_int(3f): Default integer scalar with title
M_display::disp_vector_int(3f): Default integer vector without title
M_draw.f90 M_draw::M_draw(3fm):: The M_draw graphics library module
M_draw::invokeobj(3f): invoke object with specified transformation applied and then restored
M_draw::page(3f): given a window size, find and set to largest accommodating viewport
M_draw::pop(3f): call popviewport(), popmatrix(), popattributes()
M_draw::push(3f): call pushattributes(), pushmatrix(), pushviewport()
M_drawplus.f90 M_drawplus::arrowhead(3f): Draw arrow head (for text boxes and line markers)
M_drawplus::create circular arc, leaving CP at end of arc
M_drawplus::arc2(3f): Like M_draw(3f) arc(3f) routine without move at end so can be in a polygon
M_drawplus::m_draw:ellipse(3f):: draw ellipse or elliptical arc
M_drawplus::m_draw:uconic(3f): general conic sections
Fortran MODULE interface to M_DRAW C routines using Fortran ISO_C_BINDING interface
M_drawplus::barcode(3f): draw 3-of-9 bar code
M_drawplus::call_draw(3f): parse most M_draw(3fm) routines positionally
M_drawplus::spirograph(3f): draw hypocycloidal curves
M_drawplus::smoot(3f): draw smooth curve thru set up points using spline-fitting technique
M_drawplus::rdbox(3f): reads two points and outline defined box and return points
M_drawplus::rdpnt(3f): reads coordinates of point locator clicked at
display sample page of a font
M_escape.f90 use the color string constants, optionally ignoring them if G_switch is .false. as set by color_mode(3f)
M_escape::split(3f): parse string on delimiter characters and store tokens into an allocatable array
M_f2kcli.f90
M_factor.f90 M_factor::least_common_multiple(3f): function finds LCM for (i,j)|m(:)|m(:,:)|m(:,:,:)'
M_factor::greatest_common_divisor(3f): function finds GCD for (i,j)|m(:)|m(:,:)|m(:,:,:)
M_factor::i_is_prime(3f): reports whether an integer is prime
M_factor::prime_factors(3f):decompose a number into its prime factors
M_fixedform.f90 take an appropriate action for each keypress
convert user data to an ncurses(3c) window
look
if pad coordinates map to a screen area find screen coordinates
access program data here so nc_printplain(3f) is generic
if on a menu button clear any menu buttons connected to it and toggle it
from current cursor position jump to next input field in pad
from current cursor position jump to previous input field in pad jsu
convert tabs in input to spaces in output while maintaining columns, assuming a tab is set every 8 characters
append a number to the end of the filename that makes it relatively unique
M_generic_list.f90 M_generic_list::list_init(3f): Initialize a head node SELF and optionally store the provided DATA.
M_generic_list::list_free(3f): Free the entire list and all data, beginning at SELF
M_generic_list::list_insert(3f): Insert a list node after SELF containing DATA (optional)
M_generic_list::list_put(3f): Store the encoded DATA in list node SELF
M_generic_list::list_put(3f): Return the DATA stored in the node SELF
M_generic_list::list_put(3f): Return the next node after SELF
M_geography.f90
M_getkey.f90
M_getopt.f90
M_getopt_long.f90
M_graph.f90 M_graph::graph(3f): routine for plotting lines
M_graph::graph_init(3f): initialize the longlib graphics plot package
M_graph::symbol_(3f): routine to plot characters and symbols
M_graph::clipit(3f):clips a line segment partially visible
M_hashkeys.f90 M_hashkeys::sha256(3f): SHA-256 interface function
M_hashkeys::dirty_sha256(3f): Quick and dirty SHA-256 interface function (no bit-swapping).
LUHN_CHECKSUM determines the Luhn checksum of a string composed of digits
M_hashkeys::crc32_hash_arr: CRC (Cyclic Redundancy Check) calculation
djb2(3f): call C routine djb2(3c) with a Fortran CHARACTER variable
M_history.f90 M_history::redo(3f): open binary direct access file for keeping history
M_html.f90 M_html::h_array(3f):write table from array
M_html::h_close(3f):close HTML file
M_html::h_open(3f):open HTML file
M_hybrid.f90 strgar3(3f):read a string into an array USING CALCULATOR passing double-quoted strings
errc(3f): function for specifying error curve numbers
M_xyplot::fetch(3f): call sget(3f) (and calculator if fetched string starts with $ or double-quote)
M_intrinsics.f90 grab lines in NAME section and append them to generate an index of manpages
M_strings::lower(3f): Changes a string to lowercase over specified range
M_io.f90 M_io::read_table(3f): read file containing a table of numeric values
M_io::rd(3f): ask for string or number from standard input with user-definable prompt
M_io::uniq(3f): append a number to the end of filename to make a unique name if name exists
M_io::print_inquire(3f): Do INQUIRE on file by name/number and print results
M_system::system_getenv(3f): call get_environment_variable as a function with a default value(3f)
M_io::slurp(3f): allocate text array and read file filename into it
determine number or lines in file given a LUN to the open file
M_io::notopen(3f): find free FORTRAN unit number to OPEN() a file
M_io::dirname(3f): strip last component from filename
M_io::basename(3f): strip last component from filename
M_io::splitpath(3f): split Unix pathname into components (dir,name,basename,extension)
M_io::getline(3f): read a line from specified LUN into allocatable string up to line length limit
M_io::read_line(3f): read a line from specified LUN into allocatable string up to line length limit
M_io::get_tmp(3f): Return the name of the scratch directory
M_io::scratch(3f): Return the name of a scratch file
M_journal.f90 M_journal::journal(3fg): provides public message routine, no paging or graphic mode change
M_journal::where_write_message_all(3f): writes a message to a string composed of any standard scalar types
M_kracken.f90 M_kracken(3fm): parse command line options of Fortran programs using Unix-like syntax
M_kracken::retrev(3f): retrieve token value from Language Dictionary when given NAME
M_kracken::dget(3f): given keyword fetch dble value from Language Dictionary (zero on err)
M_kracken::rget(3f): given keyword fetch real value from language dictionary (zero on err)
M_kracken::iget(3f): given keyword fetch integer value from Language Dictionary (0 on err)
M_kracken::lget(3f): given keyword fetch logical value from lang. dictionary (.f. on err)
M_kracken::sget(3f): Fetch string value and length of specified NAME from lang. dictionary
M_kracken::dgets(3f): given keyword fetch dble value from Language Dictionary (0 on err)
M_kracken::igets(3f): given keyword fetch integer array from string in dictionary(0 on err)
M_kracken::rgets(3f): given keyword fetch real array from string in dictionary (0 on err)
M_kracken::lgets(3f): given keyword fetch logical array from string in dictionary(F on err)
M_kracken::sgets(3f): Fetch strings value for specified NAME from the lang. dictionary
M_kracken::kracken(3f): define and parse command line options
M_kracken::setprompts(3f): set explicit prompts for keywords in interactive mode
M_kracken::dissect(3f): convenient call to parse() define defaults, then process
M_kracken::parse(3f): parse user command and store tokens into Language Dictionary
M_kracken::store(3f): replace or add dictionary entry name and value (if allow='add' add name if necessary)
M_kracken::show(3f): dump dictionary entries
M_kracken::cmd_args_to_dictionary(3f): convert command line arguments to dictionary entries using alternate style
M_kracken95.f90 M_kracken95(3f,module):parse command line options of Fortran programs using Unix-like syntax
retrev(3f): retrieve token value from Language Dictionary when given NAME
string_to_dble(3f): returns double precision value from numeric character string
string_to_real(3f): returns real value from numeric character string
dget(3f): given keyword fetch value from Language Dictionary as a dble (zero on error)
rget(3f): given keyword, fetch single real value from language dictionary (zero on error)
iget(3f): given keyword, fetch integer value from language dictionary (zero on error)
lget(3f): given keyword, fetch logical value from language dictionary (zero on error)
sget(3f): Fetch string value and length of specified NAME the language dictionary
sgetl(3f): Fetch string value for NAME from language dictionary up to length iilen
kracken(3f): define and parse command line options
setprompts(3f): set explicit prompts for keywords in interactive mode
dissect(3f): convenient call to parse() -- define defaults, then process
parse(3f,private): parse user command and store tokens into Language Dictionary
parse+ for left-over command string for Language routines
store(3f,private): replace dictionary name's value (if allow='add' add name if necessary)
bounce(3f,private): find index in Language Dictionary where VARNAM can be found
add_string(3f,private): Add new string name to Language Library dictionary
igets(3f,private): return the subscript value of a string when given it's name
delim(3f): parse a string and store tokens into an array
send_message(3f,private): general message routine
get_command_arguments(3f,private): return all command arguments as a string
uppers(3f,private): return copy of input string converted to uppercase
menu(3f,private): prompt for values using a menu interface
retrev_string_variable_length: A wrapper for
allocate_string: allocate string
M_list.f90 M_list::locate(3f): Generic subroutine locates where element is or should be in sorted allocatable array
M_list::insert(3f): Generic subroutine inserts element into allocatable array at specified position
M_list::replace(3f): Generic subroutine replaces element from allocatable array at specified position
M_list::remove(3f): Generic subroutine deletes element from allocatable array at specified position
M_list::locate_c(3f): find PLACE in sorted character array where VALUE can be found or should be placed
M_list::locate_d(3f): find PLACE in sorted doubleprecision array where VALUE can be found or should be placed
M_list::locate_r(3f): find PLACE in sorted real array where VALUE can be found or should be placed
M_list::locate_i(3f): find PLACE in sorted integer array where VALUE can be found or should be placed
M_list::dict_delete(3f): remove string from sorted allocatable string array if present
M_list::dict_get(3f): get value of key-value pair in dictionary, given key
M_list::dict_add(3f): place key-value pair into dictionary, adding the key if required
M_logic.f90 M_logic(3fm): Allows if/else/elseif/endif logic to be applied to input files
M_logic::cond(3f): process if/else/elseif/endif directives passed from input files
M_lua.f90
M_match.f90 M_match::f2r(3f): convert Fortran character variable to Ratfor integer array with Ratfor terminator
M_match::r2f(3f): convert Ratfor integer array to Fortran character variable
M_match::getpat_ convert argument into pattern
M_match::getpat__ convert argument into pattern
M_match::addset put C in SET(J) if it fits, increment J
M_match::locate look for c in char class at pat(offset)
M_match::match find match anywhere on line
M_match::match find match anywhere on line
M_match::patsiz returns size of pattern entry at pat(n)
M_match::stclos insert closure entry at pat(j)
M_match::getccl expand char class at arg(i) into pat(j)
M_match::filset expand set at array(i) into set(j), stop at delim
M_match::esc map array(i) into escaped character if appropriate
M_match::omatch_ try to match a single pattern at pat(j)
M_match::amatch_ (non-recursive) look for match starting at lin(from)
M_match::amatch
M_match::makpat_ make pattern from arg(from), terminate at delim
M_math.f90 M_math::M_math(3fm): module collecting various general math-related procedures
M_math::julfit(3f): linear least squares curve fits, destroys input arrays
M_math::julfit1(3f): linear least square fit of (y=a*x+b), changes the y array
M_math::lowess(3f): data smoothing using locally weighted regression
M_math::splift(3f): fits a spline to the n data points given in x and y
M_math::splint(3f): interpolates and twice differentiates a cubic spline
M_math::linearint(3f):linear interpolation of curve X(i),Y(i) at given XI(j) values
Fit discrete data in a least squares sense by polynomials in one variable.
trapezoidal integration
M_math::citer(3f): determine various geometric properties of circle segment given radius and area of the segment.
M_math::envelope(3f):Find the vertices (in clockwise order) of a polygon enclosing the points (x(i), y(i), i=1, ..., n.
M_math::inpolygon(3f):Subroutine to determine whether or not an integer point is in a polygon of integer points
M_math::locpt(3f): find if a point is inside a polygonal path
M_math::poly_intercept(3f): Calculates the points at which a line M_math::polyarea(3f): compute the area bounded by a closed polygonal curve
Area enclosed by simple (non-intersecting) polygon P, by the shoelace method.
find the index of the data point in the M_math::extremum(3f):Find the minimum and maximum value in a REAL array
M_math::bds(3f): Basic Descriptive Statistics (based on a routine from the IBM collection)
M_math::skekur1(3f): variant on calculating skewness and kurtosis of an array
M_math::skekurx(3f): COMPUTE UNBIASED ESTIMATOR OF THE POPULATION SKEWNESS AND KURTOSIS
M_math::stddev(3f): find standard deviation of a real array
M_math::scale1(3f):given xmin,xmax,n, find new range xminp xmaxp divisible into approximately n linear intervals of size dist
M_math::scale3(3f):find nice log range.
M_math::quadratic(3f): calculate the roots of a quadratic formula even if they are complex
m_matrix::magic_square(3f): create a magic square
m_matrix::iswap(3f): swap two integer arrays
M_math::invert_2x2(3f): performs a direct calculation of the inverse of a 2x2 matrix
M_math::invert_3x3(3f): performs a direct calculation of the inverse of a 3x3 matrix
M_math::invert_4x4(3f): performs a direct calculation of the inverse of a 4x4 matrix
M_matrix.f90 M_matrix::mat88(3f): initialize and/or pass commands to matrix laboratory interpreter
M_matrix::mat_matfn6(3f):evaluate utility functions
M_matrix::mat_getch(3f): get next character from input line
M_matrix::mat_formz: system dependent routine to print with z format
issue interactive prompt with optional pause
M_matrix::mat_stack1(3f): Unary Operations
M_matrix::mat_rrot(3f): Applies a plane rotation.
M_matrix::mat_rset(3f): copies a scalar, dx, to a scalar, dy.
M_messages.f90 M_messages::messages(3f): module collecting various general routines for displaying messages
M_messages::junbad(3f):print eye-catching ASCII graphic (skull)
M_messages::junbat(3f):print eye-catching ASCII graphic (bat)
M_messages::junbuster(3f):print eye-catching ASCII graphic (ghostbuster)
M_messages::jundragon(3f):print eye-catching ASCII graphic (dragon) with message
M_messages::junroach(3f):print eye-catching ASCII graphic (roach)
M_messages::junsun(3f):print eye-catching ASCII graphic (sunshine)
M_messages::juntrolls(3f):print eye-catching ASCII graphic (trolls) with message
M_messages::tabgraph(3f): write columns of numbers with a text scale to the right
M_messages::blocks(3f): write out 132-character string in large block letters
M_messages::signs(3f):write large block letters
place a non-advancing status counter on terminal display (not redirected)
M_msg.f90 M_msg::str(3f): {msg_scalar,msg_one}
M_msg::stderr(3f): writes a message to standard error using a standard f2003 method
M_msg::write(3f): writes a message to any number of open files with any scalar values
M_ncurses.f90 Fortran interface to the ncurses(3c) library -John S.Urban 20141205
wrapper around ICHAR(3f) that returns integer type C_LONG
M_overload.f90 M_overload(3fm): overloads of standard operators and intrinsic procedures
M_strings::strmerge(3f): pads first and second arguments to MERGE(3f) to same length
M_strings::adjustl_atleast(3f): return string padded on right to at least specified length
M_strings::adjustr_atleast(3f): return string padded on left to at least specified length
M_path.f90 M_io::construct_from_dat(3f): construct TYPE(path) with DAT date-time array
M_io::eq(3f): compare derived type path objects (eq,lt,gt,le,ge,ne)
M_pixel.f90 M_pixel::rect(3f): draw line rectangle given two opposite corners
M_pixel::line(3f): draw line between two points applying line width and color
M_pixel::hershey(3f): draw text string as Hershey software vector fonts
M_pixel::strlength: length of string using current font size
M_pixel::justfy(3f): calculate values for justifying Hershey fonts called by hershey(3f)
M_pixel::clear(3f): set background color all to specified color index
M_pixel::pixel(3f): set background color all to specified color index
M_pixel::if_init(3f): check if pixel graphics library has been initialized
M_pixel::arc(3f): draw a arc using current line width and color
M_pixel::circle(3f): draw a circle using current line width and color
M_pixel::linewidth(3f): set line width for lines drawn in pixel image
M_pixel::color(3f): set current color for lines drawn in pixel image
M_pixel::mapcolor(3f): set a color index using RGB values
M_pixel::circleprecision(3f): set number of line segments making up a circle
M_pixel::getviewport(3f): return viewport in screen pixel coordinates
M_pixel::viewport(3f): Specify which part of the screen to draw in.
M_pixel::ortho2(3f): define the area of the virtual world coordinates to map to the viewport
M_pixel::page(3f): given a window size, find and set to largest accommodating viewport
M_pixel::rmove2(3f): relative move
M_pixel::move2(3f): move current position
M_pixel::rdraw2(3f): relative draw
M_pixel::draw2(3f): draw a line from current position to specified point
M_pixel::prefsize(3f): specify size of pixel array
M_pixel::vexit(3f): exit pixel array drawing module
M_pixel::vinit(3f): initialize pixel array drawing module
M_pixel::makepoly(3f): opens polygon constructed by a series of move-draws and closed by closepoly
M_pixel::makepoly(3f): terminate a polygon opened by makepoly(3f)
M_pixel::print_ppm(3f): print pixel array as a P6 PPM file, appending to any existing file
M_pixel::print_p6(3f): print pixel array as a P6 PPM file, replacing any existing file
M_pixel::output_ppm(3f): print pixel array as a PPM file
M_pixel::print_p3(3f): print pixel array as a P3 PPM file
M_pixel::print_ascii(3f): print pixel array as an ASCII block of text
M_pixel::textsize(3f): set text size in world units
M_pixel::ycentertext(3f): set text centering mode on for drawstr(3f) and drawc(3f) in Y direction
M_pixel::xcentertext(3f): set text centering mode for drawstr(3f) and drawc(3f) in X direction
M_pixel::centertext(3f): set text centering mode for drawstr(3f) and drawc(3f)
M_pixel::textang(3f): set angle in degrees to draw text at using drawstr(3f)
M_pixel::font(3f): select font style by name
M_pixel::drawchar(3f): draw text at the current position
M_pixel::drawstr(3f): draw text at the current position
M_pixel::getgp2(3f): get current graphics position
M_pixel::getdisplaysize(3f): Returns the width and height of the device in pixels
M_pixel::point2(3f): Draw a point at x, y
M_pixel::state(3f): print graphics state of M_pixel graphics module
M_pixel::poly2(3f): construct a polygon from an array of points
M_pixel::vflush(3f): flush current page
M_pixel::cosd(3f): cos(3f) with degrees as input instead of radians
M_pixel::sind(3f): sin(3f) with degrees as input instead of radians
M_anything::anyscalar_to_real(3f): convert integer or real parameter of any kind to real
M_anything::anyscalar_to_double(3f): convert integer or real parameter of any kind to doubleprecision
M_pixel::rgbmono(3f): convert RGB colors to a reasonable grayscale
M_pixel::closest_color_name(3f): given RGB values, try to find closest named color
M_pixel::color_name2rgb(3f): given a color name, return rgb color values in range 0 to 100
M_strings::lower(3f): Changes a string to lowercase
M_pixel::polar_to_cartesian(3f): convert polar coordinates to cartesian coordinates
M_pixel::d2r_r(3f): Convert degrees to radians
M_pixel::d2r_d(3f): Convert degrees to radians
M_pixel::d2r_i(3f): Convert degrees to radians
M_pixel_slices.f90
M_process.f90 M_process(3fm): call C process open,close,read,write functions
M_process::process_open_read(3f): open process to read from
M_process::process_open_write(3f): open process to write to
M_process::process_close(3f): close process
M_process::process_readline(3f): read line from process
M_process::process_readall(3f): read all lines from process
M_random.f90 M_random::random_string(3f): create random string composed of provided characters of specified length
M_random::random_hex(3f): create random hexadecimal string of specified length
M_random::scramble(3f): return integer array of random values 1 to N. JSU 20190813
M_random::random_kiss64(3f): A 64-bit KISS random number generator by George Margaglia.
M_random::init_random_seed_by_system_clock(3f): initialize random_number(3f) to return a single value with system clock
M_random::init_random_seed_by_dat(3f): initialize random_number(3f) to return a single value using date_and_time(3f)
M_random::init_random_seed(3f): initialize random_number(3f) to return a single value with single integer seed like srand(3c)
M_random::mtprng_int(3f): Initializes the Mersenne Twister random number generator with seed
M_random::mtprng_int_by_array(3f): Initialize with an array of seeds
M_random::mtprng_rand64(3f): Obtain the next 64-bit integer in the pseudo-random sequence
M_random::mtprng_rand(3f): Obtain the next 32-bit integer in the pseudo-random sequence
M_random::mtprng_rand_range(3f): Obtain a pseudo-random integer in the range [lo,hi]
M_random::mtprng_rand_real1(3f): Obtain a pseudo-random real number .ge. 0 and .le.= 1.
M_random::mtprng_rand_real2(3f): Obtain a pseudo-random real number .ge. 0.0 and .lt. 1.0
M_random::mtprng_rand_real3(3f): Obtain a pseudo-random real number .gt. 0 and .lt. 1.
M_readgif.f90
M_readline.f90 Call readline(3c) from Fortran using ISO_C_BINDING
M_regex.f90 M_exec::regcomp(3f): compile regular expression
M_exec::regexec(3f): Execute a compiled RE(regular expression) against a string
M_exec::regmatch(3f): return selected substrings defined by the regexec(3f) procedure
M_exec::regerror(3f): describe error generated by regcomp(3f) or regexec(3f)
M_exec::regfree(3f): release storage created by regcomp(3f) compiled regular expression
M_regex::regsub(3f): perform regex substitutions
M_sha3.f90
M_slices.f90 M_slices::dl_slices(3f): Routine to plot data in 3-D overlay form.
M_slices::dl_init(3f): initialize the longlib graphics plot package
M_slices::dl_symbol(3f): routine to plot characters and symbols
M_sort.f90 M_sort::sort_shell(3f): Generic subroutine sorts the array X using a shell sort
M_sort::unique(3f): assuming an array is sorted, return array with duplicate values removed
M_sort::swap(3f): swap two variables of like type (real,integer,complex,character,double)
M_sort::sort_quick_rx_character(3f): indexed hybrid quicksort of a real array
M_sort::sort_quick_rx_integer(3f): indexed hybrid quicksort of a real array
M_sort::sort_quick_rx_complex(3f): indexed hybrid quicksort of a real array
M_sort::sort_quick_rx_doubleprecision(3f): indexed hybrid quicksort of a real array
M_sort::sort_quick_rx_real(3f): indexed hybrid quicksort of a real array
M_sort::tree_insert(3f): sort a number of integers by building a tree, sorted in infix order
M_sort::tree_print(3f):
M_sqlite.f90 M_sqlite::sqlite3_do(3f): Run a single SQL command
M_sqlite::sqlite3_create_table(3f): Create a new table
M_steam67.f90 M_steam67::steam67(3f): 1967 ASME Steam Table Library
M_steam67::condv67(3f): compute thermal conductivity of water at pressure P and temperature T
M_steam67::condl67(3f): return thermal conductivity given P,T
M_steam67::do67(3f)L summation of a polynomial
M_steam67::cpl67(3f): calculates specific isobaric head capacity of water at pressure P and temperature T
M_steam67::cpv67(3f): calculates specific isobaric heat capacity and specific volume of water at pressure P and temperature T
M_steam67::crflo67(3f): critical flow and degrees superheat of wet/superheated steam at PRES,ENTH
M_steam67::function critvs67(press, enth, gamma)
M_steam67::entry critvw67(press, enth, gamma)
M_steam67::critical flow(3f): velocity and isentropic exponent of wet/superheated steam
M_steam67::hcsl67(3f): calculate specific enthalpy/volume and entropy of liquid(P,T)
M_steam67::hcslvl67(3f): calculate V,S,specific enthalpy for liquid given (P,T)
M_steam67::hcslv267(3f): calculate specific enthalpy, specific volume, and entropy of the liquid at P and T
M_steam67::hss67(3f): specific enthalpy = HSS67(P,T,s,v)
M_steam67::hsl67(3f): specific enthalpy = HSS67(P,T,s,v)
M_steam67::psl67(3f): calculate saturation pressure of the saturated liquid at temperature T
M_steam67::psl167(3f): calculate saturation pressure of the saturated liquid at temperature T.
M_steam67::psv67(3f): calculate saturation pressure of the saturated liquid at entropy SS in psia
M_steam67::psv167(3f): calculate saturation pressure of the saturated liquid at entropy SS in psia
M_steam67::psv267(3f): calculate saturation pressure in psia of the saturated liquid at entropy SS.
M_steam67::pls67(3f): saturation pressure of the saturated liquid at entropy SS.
M_steam67::sssiss67(3f): specific entropy, temperature, specific volume, steam quality of liquid at pressure P and enthalpy H
M_steam67::hssiss67(3f): specific enthalpy, temperature, specific volume, steam quality of water at pressure P and entropy S
M_steam67::hcl67(3f): calculate specific enthalpy and entropy of water at pressure P and temp T
M_steam67::p23t67(3f) [M_steam67] calculate the pressure at the boundary of regions 2 and 3, given temperature T.
M_steam67::zsrh67(3f) calculate remaining variables at extremities of isentropic process in compressed liquid region.
M_steam67::steam67(3f):print pedigree of library and return version value
M_stopwatch.f90 M_stopwatch::M_stopwatch(3f): package for measuring cpu and wall clock
M_strings.f90 M_strings(3f): Fortran module containing routines that deal with character strings
M_strings::switch(3f): toggle between string and array of characters
M_strings::string_to_value(3f): Generic subroutine converts numeric string to a number (a2d,a2r,a2i)
M_strings::v2s(3f): Generic function returns string given REAL|INTEGER|DOUBLEPRECISION value(d2s,r2s,i2s)
M_strings::msg(3f): convert up to nine scalar values to a string. Alternatively can also handle one-dimensional arrays
M_strings::glob(3f): function compares text strings, one of which can have wildcards ('*' or '?').
M_strings::sep(3f): parse string on delimiter characters and store tokens into an allocatable array
M_strings::split(3f): parse string on delimiter characters and store tokens into an allocatable array
M_strings::chomp(3f): Tokenize a string : JSU- 20151030
M_strings::delim(3f): parse a string and store tokens into an array
M_strings::replace(3f): Globally replace one substring for another in string
M_strings::substitute(3f): Globally substitute one substring for another in string
M_strings::change(3f): change a character string like a line editor
M_strings::strtok(3f): Tokenize a string
M_strings::modif(3f): Emulate the MODIFY command from the line editor XEDIT
M_strings::len_white(3f): return position of last non-blank/non-null character in string
M_strings::crop(3f): trim leading and trailings blanks from string
M_strings::transliterate(3f): replace characters from old set with new set
M_strings::rotate13(3f): converts a character to its ROT13 equivalent, which is a trivial encryption.
M_strings::join(3f): append an array of character variables with specified separator into a single CHARACTER variable
M_strings::reverse(3f): Return a string reversed
M_strings::upper_quoted(3f): elemental function converts string to miniscule skipping strings quoted per Fortran syntax rules
M_strings::upper(3f): Changes a string to uppercase
M_strings::lower(3f): Changes a string to lowercase over specified range
M_strings::s2c(3f): copy string(1:Clen(string)) to char array with null terminator
M_strings::c2s(3f): copy pointer to C char array till a null is encountered to a Fortran string up to 4096 characters
M_strings::indent(3f): find number of leading spaces in a string
M_strings::visible(3f) expand escape sequences in a string to control and meta-control representations
M_strings::expand(3f): return string with escape sequences expanded
M_strings::notabs(3f): convert tabs to spaces while maintaining columns, remove CRLF chars
M_strings::dilate(3f): convert tabs to spaces and trims line, removing CRLF chars
M_strings::adjustc(3f): center text
M_strings::nospace(3f): remove all whitespace from input string
M_strings::stretch(3f): return string padded to at least specified length
M_strings::atleast(3f): return string padded to at least specified length
M_strings::lenset(3f): return string trimmed or padded to specified length
M_strings::merge_str(3f): pads first and second arguments to MERGE(3f) to same length
M_strings::compact(3f): Converts white-space to single spaces
M_strings::noesc(3f): convert non-printable characters to a space
M_strings::s2v(3f): returns doubleprecision number from string
M_strings::v2s_bug(3f): function returns string given numeric value
M_strings::isnumber(3f): Determines if a string is a number of not.
M_strings::listout(3f): copy icurve_lists to icurve_expanded expanding negative numbers to ranges (1 -10 means 1 thru 10)
M_strings::describe(3f): return string describing long name of a single character
M_strings::getvals(3f): read arbitrary number of values from a character variable
M_strings::string_to_values(3f): reads an array of numbers from a numeric string
M_strings::s2vs(3f): function returns array of values from a string
M_strings::isprint(3f): indicates if input character is a printable ASCII character
M_strings::isgraph(3f) :indicates if character is printable ASCII character excluding space
M_strings::isalpha(3f): Return .true. if character is a letter and .false. otherwise
M_strings::isxdigit(3f): returns .true. if c is a hexadecimal digit (0-9,a-f, or A-F)
M_strings::isdigit(3f): Returns .true. if ch is a digit (0-9) and .false. otherwise
M_strings::isblank(3f): returns .true. if character is a blank (space or horizontal tab)
M_strings::isascii(3f): returns .true. if character is in the range char(0) to char(127)
M_strings::isspace(3f): true if null,space,tab,return,new line,vertical tab, or formfeed
M_strings::iscntrl(3f): true if a delete or ordinary control character(0x7F or 0x00-0x1F)
M_strings::ispunct(3f): true if a printable punctuation character (isgraph(c)&&
M_strings::fortran_name(3f): Return .true. if name is a valid Fortran name
M_strings::isupper(3f): returns true if character is an uppercase letter (A-Z)
M_strings::islower(3f): returns true if character is a miniscule letter (a-z)
M_strings::isalnum(3f): returns true if character is a letter (a-z,A-Z) or digit(0-9)
M_strings::base(3f): convert whole number string in base [2-36] to string in alternate base [2-36]
M_strings::decodebase(3f): convert whole number string in base [2-36] to base 10 number
M_strings::codebase(3f): convert whole number in base 10 to string in base [2-36]
M_strings::todecimal(3f): given string and base return decimal integer
M_strings::todecimal(3f): given integer and base return string
M_strings::fmt(3f): wrap a long string into a paragraph
M_strings_oop.f90 M_strings::construct_from_fill(3f): construct TYPE(STRING)
M_strings::oop_len(3f): length of string
M_strings::oop_len_trim(3f): trimmed length of string
M_strings::oop_switch(3f): convert string to array of single characters
M_strings::oop_index(3f): find starting position of a substring in a string
M_strings::oop_upper(3f): convert string to uppercase
M_strings::oop_lower(3f): convert string to miniscule
M_strings::oop_expand(3f): expand common escape sequences by calling expand(3f)
M_strings::oop_trim(3f): trim trailing spaces
M_strings::oop_crop(3f): crop leading and trailing spaces
M_strings::oop_reverse(3f): reverse string
M_strings::oop_adjustl(3f): adjust string to left
M_strings::oop_adjustr(3f): adjust string to right
M_strings::oop_adjustc(3f): adjust string to center
M_strings::oop_int(3f): string to integer
M_strings::oop_real(3f): string to real
M_strings::oop_dble(3f): string to double
M_strings::oop_compact(3f): adjust string to center
M_strings::oop_substitute(3f): change all occurrences of oldstring to newstring non-recursively
M_strings::oop_transliterate(3f): change all occurrences of oldstring to newstring non-recursively
M_strings::oop_atleast(3f): set string to at least specified length
M_strings::oop_lenset(3f): set string to specific length
M_strings::oop_matchw(3f): test if wildcard pattern matches string
M_strings::oop_notabs(3f): expand tab characters assuming tab stops every eight(8) characters
M_strings::oop_noesc(3f): replace non-printable characters with spaces
M_strings::oop_p(3f): return CHARACTER string from TYPE(STRING)
M_strings::init_dt(3f): initialize TYPE(STRING)
M_strings::string_plus_value(3f): add value to TYPE(STRING)
M_strings::string_minus_value(3f): subtract value from TYPE(STRING)
M_strings::string_append_value(3f): append value to TYPE(STRING)
M_strings::string_multiply_value(3f): multiply TYPE(STRING) value times
M_strings::eq(3f): compare derived type string objects (eq,lt,gt,le,ge,ne)
M_system.f90 M_system::system_access(3f): checks accessibility or existence of a pathname
M_system::system_utime(3f): set access and modification times of a pathname
M_system::system_realpath(3f):call realpath(3c) to get pathname of current working directory
M_system::system_issock(3f): determine if pathname is a socket
M_system::system_isfifo(3f): determine if pathname is a fifo(named pipe)
M_system::system_ischr(3f): determine if pathname is a link
M_system::system_isreg(3f): determine if pathname is a regular file
M_system::system_islnk(3f): determine if pathname is a link
M_system::system_isblk(3f): determine if pathname is a block device
M_system::system_isdir(3f): determine if DIRNAME is a directory name
M_system::system_chown(3f): change owner and group of a file relative to directory file descriptor
M_system::system_link(3f): call link(3c) to create a file link
M_system::system_unlink(3f): call unlink(3c) to rm file link
M_system::system_perror(3f): call perror(3c) to display error message
M_system::system_chdir(3f): call chdir(3c)
M_system::system_remove(3f): call remove(3c) to remove file
M_system::system_rename(3f): call rename(3c) to change filename
M_system::system_getcwd(3f):call getcwd(3c) to get pathname of current working directory
M_system::system_rmdir(3f): call rmdir(3c) to remove empty directory
M_system::system_mkfifo(3f): call mkfifo(3c) to create a new FIFO special file
M_system::system_mkdir(3f): call mkdir(3c) to create empty directory
M_system::system_putenv(3f): call putenv(3c)
M_system::system_getenv(3f): call get_environment_variable as a function with a default value(3f)
M_system::set_environment_variable(3f): call setenv(3c) to set environment variable
M_system::system_clearenv(3f): emulate clearenv(3c) to clear environment
M_system::system_unsetenv(3f): call unsetenv(3c) to remove variable from environment
M_system::system_readenv(3f): read next entry from environment table
M_system::fileglob(3f): Returns list of files using a file globbing pattern
M_system::system_uname(3f): call my_uname(3c) which calls uname(3c)
M_system::system_gethostname(3f): get name of current host by calling gethostname(3c)
M_system::system_stat(3f): call stat(3c) to get pathname information
M_strings::matchw(3f): function compares text strings, one of which can have wildcards ('*' or '?').
M_anything::anyinteger_to_64(3f): convert integer parameter of any kind to 64-bit integer
M_time.f90 M_time::M_time(3f): date and time function module
M_time::date_to_julian(3f): Converts proleptic Gregorian DAT date-time array to Julian Date
M_time::julian_to_date(3f): Converts Julian Date to DAT date-time array
M_time::date_to_unix(3f): Convert DAT date-time array to Unix Epoch Time
M_time::unix_to_date(3f): Converts Unix Time to DAT date-time array
M_time::d2o(3f): Converts DAT date-time array to Ordinal day
M_time::ordinal_seconds(3f): seconds since beginning of year
M_time::ordinal_to_date(3f): given a valid year and day of the year returns the DAT array for the date
M_time::o2d(3f): Converts ordinal day to DAT date-time array
M_time::v2mo(3f): returns the month name of a Common month number
M_time::mo2d(3f): month name to DAT date-time array for 1st of that month in specified year
M_time::mo2v(3f): given month name return month number (1-12) of that month
M_time::now(3f): return string representing current time given format
M_time::fmtdate(3f): given DAT date-time array return date as string using format
M_time::fmtdate_usage(3f): display macros recognized by fmtdate(3f)
M_time::guessdate(3f): Guess format of a date string to create a DAT date-time array
M_time::dow(3f): Given DAT date-time array return the day of the week
M_time::d2w(3f): DAT date-time array to iso-8601 Week-numbering year date yyyy-Www-d
M_time::w2d(3f): convert iso-8601 Week-numbering year date yyyy-Www-d to DAT date-time array
M_time::box_month(3f): generate month specified by DAT date-time array in character array
M_time::d2j(3f): Given DAT date-time array returns Julian Date
M_time::j2d(3f): Given Julian Date returns DAT date-time array
M_time::d2u(3f): Given DAT date-time array returns Unix Epoch time
M_time::u2d(3f): Given Unix Epoch Time returns DAT date-time array
M_time::sec2days(3f): converts seconds or string of form IId JJh KKm LLs to string showing days of form D-HH:MM:SS
M_time::days2sec(3f): convert string [[-]dd-]hh:mm:ss.nn to seconds or string IId JJh KKm LLs to seconds
M_time::phase_of_moon(3f): return name for phase of moon for given date
M_time::moon_fullness(3f): return percentage of moon phase from new to full
M_time::easter(3f): calculate date for Easter given a year
M_time::system_sleep(3f): call sleep(3c) or usleep(3c)
M_time::now_ex(3f): use of now(3f) outside of a module
M_time_oop.f90 M_time::construct_from_dat(3f): construct TYPE(DATE_TIME) with DAT date-time array
M_time::construct_from_jed(3f): construct TYPE(DATE_TIME) with REAL Julian JED date-time value
M_time::construct_from_uet(3f): construct TYPE(DATE_TIME) with INTEGER Unix UET date-time value
M_time::dt2d_(3f): convert derived type date_time to DAT date-time array
M_time::epoch_(3f): convert derived type date_time to unix epoch seconds
M_time::format(3f): convert derived type date_time to formatted string
M_time::julian_(3f): convert derived type date_time to julian date
M_time::ordinal(3f): convert derived type date_time to ordinal date
M_time::weekday(3f): convert derived type date_time to weekday (1=Monday,7=Sunday)
M_time::delta(3f): add times to a type(date_time)
M_time::init_dt(3f): initialize TYPE(DATE_TIME)
M_time::plus_seconds(3f): add derived type date_time object and seconds
M_time::minus_seconds(3f): subtract seconds from derived type date_time object
M_time::minus_date_time(3f): add derived type date_time object and seconds
M_time::eq(3f): compare derived type date_time objects (eq,lt,gt,le,ge,ne)
M_units.f90 M_units::c2f(3f): Convert celsius to fahrenheit
M_units::f2c(3f): Convert fahrenheit to celsius
M_units::r2d_i(3f): Convert radians to degrees
M_units::r2d_d(3f): Convert radians to degrees
M_units::r2d_r(3f): Convert radians to degrees
M_units::d2r_r(3f): Convert degrees to radians
M_units::d2r_d(3f): Convert degrees to radians
M_units::d2r_i(3f): Convert degrees to radians
M_units::sind(3f): sin(3f) with degrees as input instead of radians
M_units::cosd(3f): cos(3f) with degrees as input instead of radians
M_units::tand(3f): tan(3f) with degrees as input instead of radians
M_units::asind(3f): asin(3f) with degrees as output instead of radians
M_units::acosd(3f): calculate arc-cos of angle in degrees
M_units::atand(3f): result is arc-tangent of angle in degrees
M_units::atan2d(3f): calculate arc-tangent of angle in degrees
M_units::feet_to_meters(3f): converts a measurement in feet to meters
M_units::meters_to_feet(3f): converts a measurement in meters to feet
M_units::cartesian_to_spherical(3f): convert Cartesian coordinates to ISO polar coordinates
M_units::spherical_to_cartesian(3f): convert spherical coordinates to cartesian coordinates
M_units::cartesian_to_polar(3f): convert Cartesian coordinates to polar coordinates
M_units::polar_to_cartesian(3f): convert polar coordinates to cartesian coordinates
M_units::atomnum2symbol(3f): return element symbol given atomic number
M_units::symbol2atomnum(3f): return atomic number given element symbol name
M_units::pounds_to_kilograms(3f): converts a measurement in pounds to kilograms.
M_units::is_even(3f): determine if integer is even
M_units::is_nan(3f): determine if value is IEEE Not-a-Number
M_uuid.f90 M_uuid::M_uid(3fm): generate UUIDs according to RFC 4122
M_uuid::generate_uuid(3f): generate(approximately) a UUID (Universally Unique IDentifier) string per RFC 4122
M_verify.f90 M_verify::unit_check_msg(3f): writes a message to a string composed of any standard scalar types
M_verify::stderr(3f): writes a message to standard error using a standard f2003 method
M_verify::fstop(3f): calls 'STOP VALUE' passing in a value (1-32), with optional message
M_verify::unit_check(3f):if .not.expression call 'goodbad NAME bad' & stop program
M_verify::unit_check_start(3f): call 'goodbad NAME start'
M_verify::unit_check_done(3f): call 'goodbad NAME bad'
M_verify::unit_check_bad(3f): call 'goodbad NAME bad'
M_verify::unit_check_good(3f): call 'goodbad NAME good'
M_verify::pdec(3f): write ASCII Decimal Equivalent (ADE) numbers vertically beneath string
M_verify::assert(3f): writes a message to a string composed of any standard scalar types
M_verify::julian(3f): Converts proleptic Gregorian DAT date-time array to Julian Date
M_verify::almost(3f): function to compare two real numbers only up to a specified number of digits by calling DP_ACCDIG(3f)
M_verify::accdig(3f): compare two real numbers only up to a specified number of digits
M_verify::dp_accdig(3f): compare two values only up to a specified number of digits
M_verify::in_margin(3f): check if two reals are approximately equal using a relative margin
M_verify::round(3f): round val to specified number of significant digits
M_verify::anyscalar_to_real128(3f): convert integer or real parameter of any kind to real128
M_verify::anyscalar_to_double(3f): convert integer or real parameter of any kind to doubleprecision
M_writegif.f90 This module can write a GIF file in GIF89 format from raster data
M_writegif_animated.f90
M_xterm.f90 M_xterm(3fm): send xterm control sequences. John S. Urban, 19910719
M_xterm::xterm_occupancy(3f): move xterm(1) to specified virtual display, if supported
M_xterm::xterm_get_pencolor(3f): get description of color assigned to an xterm(1) color number
M_xterm::xterm_get_colors(3f): set various xterm(1) window colors using escape sequences
M_xterm::xterm_pencolor(3f): set xterm(1) color by number using escape sequences
M_xterm::xterm_colors(3f): set various xterm(1) window colors using escape sequences
M_xterm::xterm_font(3f): set a font by name in an xterm window
M_xterm::xterm_keywords(3f): send keywords to the X11 Window Manager to change xterm(1) window and select modes
M_xterm::xterm_position(3f): set xterm(1) window position using escape sequences
M_xterm::xterm_geometry(3f): set size of xterm(1) window using escape sequences
M_xterm::xterm_width(3f): set size of xterm(1) window to standard sizes using escape sequences
M_xterm::xterm_labels(3f): set various strings and labels associated with an xterm(1) such as title and icon name
M_xterm::xterm_clear(3f): clear the screen of an xterm(1) window using escape sequences
M_xterm::xterm_get_font(3f): Obtain current xterm(1) window font name using escape sequences
M_xterm::xterm_get_iconstate(3f): Obtain current xterm(1) window icon state using escape sequences
M_xterm::xterm_get_geometry(3f): Obtain current xterm(1) window size in character rows and columns
M_xterm::xterm_get_position(3f): Obtain current xterm(1) window position
M_xterm::set_g_io(3f): send output to alternative file for use with programs like screen(1) and tmux(1)
M_xyplot.f90 M_xyplot::xyplot(3f): XY plot procedures
M_xyplot::plot_setfill(3f): set background, middleground, and foreground colors for plot
M_xyplot::xy_init_default(3f): Initialize command dictionary and global values
M_xyplot::plot_hcopy(3f): process hcopy command
M_xyplot::plot_noclose(3f): flag whether to keep current device open while switching to alternate device
M_xyplot::plot_set_xmin(3f): set value for xmin/xmax/ymin/... command
M_xyplot::plot_storage(3f): if on a storage tube, clear the screen to unclutter it
M_xyplot::plot_setmark(3f): set or display marker geometries
M_xyplot::plot_page_aspect(3f): Get aspect ratio from ASPECT command and call xy_aspct
M_xyplot::plot_marks(3f): draw screen of markers or pen styles or dash codes or color table or fonts
M_xyplot::plot_title(3f): allow user to add extra title lines by number
M_xyplot::plot_jut(3f): allow user to place text on screen
M_xyplot::plot_sz(3f): close and reopen window to new size if possible
M_xyplot::plot_drawplot(3f): draw an xy plot
M_xyplot::plot_juparea(3f): parse parea command
M_xyplot::plot_jupage(3f): a good try at allowing mixing of PLT commands and M_plot commands
M_xyplot::plot_id(3f): allow user to alter legend strings by number
M_xyplot::plot_clear(3f): clear graphics area and ensure in graphics mode
M_xyplot::xy_aspct(3f): Store plot window size in global variables and call BIGGEST_ORTHO2()
M_xyplot::xy_bans(3f): draw banner lines from PLT ban command
M_xyplot::xy_printban(3f): plot horizontal banner string at specified location
M_xyplot::xy_printbanv(3f): plot vertical banner string
M_xyplot::xy_fxed(3f): select whether a string is fixed-space or not
M_xyplot::xy_init_graphics(3f): Initialize PLT graphics environment
M_xyplot::xy_ifdrawn(3f): xy_ifdrawn() is used to see if first page drawn or not
M_xyplot::xy_iftext(3f): Add user-specified text strings to plot
M_xyplot::xy_jucurv(3f): find extrema for group of curves and set legend label defaults
M_xyplot::xy_jumapc(3f): map colors using HUE command
M_xyplot::xy_pause(3f): conditionally pause until graphic or text-window response
M_xyplot::xy_jutitl(3f): add title lines to plot
M_xyplot::xy_jutitlX(3f): draw plot titling information (titles and legend block)
M_xyplot::xy_set_bigger(3f): change title line size
M_xyplot::xy_laxis(3f): draw linear axis and logarithmic axis for PLT
M_xyplot::xy_pickpnt(3f): interactively draw a line to current left scale and store the curve or return point
M_xyplot::xy_setlbl(3f): decide axis label strings
M_xyplot::xy_setsize(3f): use values to set size and border on output device
M_xyplot::xy_tidybox(3f): draw legend lines inside box specified on call
M_xyplot::xy_arrow(3f): Add xy_arrow from T text box to specified point
M_xyplot::xy_idbox(3f): Draw ID legend box specified with LEGEND command
M_xyplot::xy_idbox0(3f): draw legend lines
M_xyplot::xy_iflou(3f): set global flag for Leading Edge trimming (see LE command)
M_xyplot::xy_judraw(3f): draw curves to plot scales using plot_ values
M_xyplot::xy_loadtl(3f): load title xy_array
M_xyplot::xy_tidybox1(3f):draw legend lines in box with legend box autosized and positioned by edge number
M_xyplot::xy_tidybox2(3f): draw legend lines inside box specified on call
M_xyplot::xy_listout3(3f): copy rcurve_in to rcurve_out expanding negative curve numbers to ranges (1 -10 means 1 thru 10)
M_xyplot::xy_retrv2(3f): Call RETREV and then expand string variables with Calculator
M_xyplot::plot_toggle(3f): copy of TOGGLE that uses xy_retrv2 instead of RETREV
M_xyplot::xy_getdat(3f): place data from specified file and curve into xy_arrayQ xy_array
M_xyplot::xy_juput(3f): write current memory-resident curves in global variables(q) onto pseudo file
M_xyplot::xy_slide(3f): slide value
M_xyplot::plot_z(3f): Interactive ZOOM mode
M_xyplot::plot_zmode(3f): Interactive ZOOM mode
M_xyplot::xy_getrel(3f): return values to convert one set of units to another
M_xyplot::xy_units(3f): given unit code return string label optionally converted to uppercase
M_xyplot::xy_juprint(3f): print string LINE at position x,y with embedded directives
M_xyplot::priv_justrlen(3f): query string size with embedded directives
M_xyplot::priv_justr(3f): print string l0 at position x,y with embedded directives
M_xyplot::xy_jucp2(3f): plot string line at current position
M_xyplot::xy_juprints(3f): simple print of string l at position x,y
M_xyplot::xy_jucp(3f): plot string line at current position
M_xyplot::xy_jufont(3f): check and set font and store it so can query it
M_xyplot::xy_jufont(3f): check and set font and store it so can query it
M_xyplot::xy_rasters(3f): set line width
FORTRAN interface point for M_DASH functions that return real values
M_xyplot::xy_ustrlen(3f): get software string length including trailing whitespace
M_xyplot::xy_ustrlen2(3f): get software string length up to specified character
M_xyplot::plot_get_plot_area(3f): initialize plot page and set up common page-related values
M_xyplot::plot_set_plot_area(3f): initialize plot page and set up common page-related values
M_xyplot::plot_axes(3f): generically draw linear axis and logarithmic axis
M_xyplot::xy_toa(3f): convert number to a nice string (1 to 20 characters) or explicit string for an axis label
M_xyplot::plot_page(3f): initialize plot page and set up common page-related values
M_xyplot::xy_setdatarange(3f): set plot window extremes, set plot window extremes for dual axis
M_xyplot::plot_getdatarange(3f): get plot window extremes, set plot window extremes for dual axis
M_xyplot::plot_setticper(3f): set tic size
M_xyplot::xy_getscale(3f): set up scaling between graphing area and user-scaled axis
M_xyplot::plot_line(3f): buffer curve data and call xy_line
M_xyplot::plot_label(3f): set plot axis labels
M_xyplot::plot_resetplot(3f): reset plot-related common values
M_xyplot::plot_set_nice_range(3f): determine nice range for creating an axis
M_xyplot::xy_line(3f): draw polyline using data in xy_arrayx xy_arrayy, using pen style ipen
M_xyplot::plot_setdash(3f): allow user to display|alter|retrieve dash codes by style number
M_xyplot::xy_jurang(3f): return nice max and min values for the axis, and nice axis grid spacings
M_xyplot::xy_con_x(3f): scale an axis value to the overall window/viewport
M_xyplot::xy_con_y(3f): scale an axis value to the overall window/viewport
M_xyplot::xy_setcnv(3f): set up conversion table for xy_con_x and xy_con_y functions
M_xyplot::xy_jugetwn(3f): query current window ( appropriate for 2-d only)
M_xyplot::xy_zoom(3f): given current four numbers defining a box
M_xyplot::xy_convert(3f): do a linear conversion on an xy_array of the form y=ax+b
M_xyplot::xy_obj12345(3f): create or close M_plot object 12345
M_xyplot::xy_getmark(3f):get marker geometries
draw a simple geometric illusion
nc_errmessage.f90
nc_printescape.f90 plain text print reading window from ncurses
nc_printhtml.f90 print ncurses(3c) window as HTML
nc_printplain.f90 plain text print reading window from ncurses
nc_printunicode.f90 plain text print reading window from ncurses
paranoia.f90 paranoia(3f): call doublprecision or real versions of paranoia
sparanoia.f90 sparanoia(3f): test real value operations in programming environment
C-arcs.c M_DRAW:arcprecision - sets the number of segments in an arc or circle. - obsolete function.
M_DRAW:circleprecision - sets the number of segments in an arc or circle.
M_DRAW:arc - draw an arc at given location.
M_DRAW ... Precision of arc (# line segments) is calculated from the value given to circleprecision.
M_DRAW:sector - draw a sector at given location.
M_DRAW ... The number of line segments in the arc of the segment is the same as in arc.
M_DRAW:circle - * Draw a circle of given radius at given world coordinates.
M_DRAW ... The number of segments in the circle is the same as that of an arc.
C-aspect.c M_DRAW:getaspect - Gets the aspect ratio of the display/window. IE. y / x
M_DRAW:getdisplaysize - Returns the raw size of the display window in pixel units as floating point values.
M_DRAW:getfactors - returns x,y scaling factors for use with the viewport call
M_DRAW ... so the viewport can be set to the whole display/window.
M_DRAW:expandviewport - set viewport to whole device
M_DRAW:unexpandviewport - opposite of the above (expandviewport)
C-attr.c M_DRAW:copyattributes - copy everything except back pointer from attribute b to a
M_DRAW:printattribs - print attributes
M_DRAW:getattribs - make something to return attributes so can query them
M_DRAW:printlogicals - print logical device attributes
M_DRAW:printvdevice - print logical and other attributes
M_DRAW:pushattributes - save the current attributes on the matrix stack
M_DRAW:popattributes - pop the top entry on the attribute stack
C-buffer.c M_DRAW:backbuffer - swap drawing to backbuffer - returns -1 if no backbuffer is available.
M_DRAW:frontbuffer - start drawing in the front buffer again. This will always work!
M_DRAW:swapbuffers - swap the back and front buffers - returns -1 if no backbuffer is available.
C-canvas.c M_DRAW:driver/canvas.c - M_DRAW driver for HTML 5.0 canvas element
M_DRAW:author:John S. Urban
M_DRAW:version:1.0, Mar 2007
C-cgmt.c M_DRAW:driver/cgmt.c - M_DRAW driver for CGM (Computer Graphics Metafile) clear text
M_DRAW:author : John S. Urban
M_DRAW:version : 1.3, Jan 1997
C-clip.c M_DRAW:MakeEdgeCoords - calculates distance from point to each clipping plane in Homogeneous clipping coordinates.
M_DRAW ... Return code if on outside of any clipping plane is non-zero.
M_DRAW:clip - Clips a 3D line using Homogeneous clipping. Reference: Newman and Sproull
M_DRAW:quickclip - A variation on the above that assumes p0 is a valid position in device coords
M_DRAW:clipping - Turns clipping on or off.
C-curl.c
C-curves.c M_DRAW:curvebasis - sets the basis type of curves.
M_DRAW:make_prec - Make the precision matrix for a single curve
M_DRAW:curveprecision - sets the number of line segments that make up a curve segment.
M_DRAW:rcurve - draws a rational curve
M_DRAW:curve - draws a curve
M_DRAW:drcurve - Iterate a forward difference matrix to draw a curve.
M_DRAW:curven - draws a series of curve segments.
C-draw.c M_DRAW:dashcode - Set the current dash length
M_DRAW:linestyle - Set the current linestyle as a character string of 1's and 0's
M_DRAW:dashline - Draw dashed lines.Assumes p0 - p1 are valid (possibly clipped endpoints)
M_DRAW:draw - draw a line form the logical graphics position to the world coordinates x, y, z.
M_DRAW:draw2 - draw a line from the logical graphics position to the world coordinates x, y.
M_DRAW:rdraw - 3D relative draw from the logical graphics position by dx, dy, dz.
M_DRAW:rdraw2 - 2D relative draw from the logical graphics position by dx, dy.
M_DRAW:sdraw2 - Draw directly in proportion to screen coordinates.
M_DRAW:rsdraw2 - Relative draw as a fraction of screen size.
C-drivers.c
C-fti.c M_DRAW:driver/fti.c - M_DRAW driver for Silicon Graphics icon geometries ((.fti files)
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Aug 1997
C-gauss.c
C-getgp.c M_DRAW:getgp - return the current (x, y, z) graphics position
M_DRAW:getgp2 - return the current (x, y) graphics position
M_DRAW:getgpt - return the current transformed graphics position.
M_DRAW:sgetgp2 - return the current (x, y) graphics position in screen coordinates
C-getstring.c M_DRAW:getstring - Get a character string from the keyboard in graphics mode.
C-gnu.c M_DRAW:driver/gnu.c - M_DRAW driver for GNU plotutil 'plot' format
M_DRAW:author : John S. Urban
M_DRAW:version : 1.0
C-hlsrgb.c
C-hpdxy.c M_DRAW:driver/hpdxy.c - M_DRAW driver for DXY and HPGL
C-hpgt.c M_DRAW:driver/hpgt.c - M_DRAW driver for HP Graphics Terminals
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Mar 1999
C-hvsrgb.c
C-jubiglet.c jubiglet(3c): Make big block letters
jubiglet_(char *s, int len) // Fortran 77 callable (sometimes) version of jubiglet */
C-jucolor.c jucolor(3c):this procedure converts a color's components from one color model to another
C-macros.c
C-mapping.c M_DRAW:VtoWxy - Return the world x and y values corresponding to the input screen x and y values.
M_DRAW:calcW2Vcoeffs - Calculate the linear coeffs defining the mapping of world space to actual device space
M_DRAW:WtoVx - return the Screen X coordinate corresponding to world point 'p' (does the perspective division as well)
M_DRAW:WtoVy - return the Screen Y coordinate corresponding to world point 'p' (does the perspective division as well)
C-matrix.c M_DRAW:copyvector - Copy the 4 vector b to a.
M_DRAW:copymatrix - Copy the 4 x 4 matrix b to the 4 x 4 matrix a
M_DRAW:copytranspose - copy the transpose of the 4 x 4 matrix b to the 4 x 4 matrix a.
M_DRAW:getmatrix - Retrieve the top matrix on the stack and place it in m
M_DRAW:pushmatrix - Push the top matrix of the stack down, placing a copy of it on the top of the stack.
M_DRAW:popmatrix - Pop the top matrix from the stack.
M_DRAW:loadmatrix - load matrix
M_DRAW:mult4x4 - multiply 4 x 4 matrices b and c assigning them into a.
M_DRAW:multmatrix - Premultiply the top matrix on the stack by 'mat'
M_DRAW:identmatrix - Return a 4 x 4 identity matrix
M_DRAW:multvector - Multiply the vector a and the matrix b to form v. Need it to be snappy again.
M_DRAW:premultvector - PreMultiply the vector a and the matrix b to form v. Need it to be snappy again.
M_DRAW:printmat - print s and then dump matrix m.
M_DRAW:printvect - print vector
C-mif.c M_DRAW:driver/mif.c - M_DRAW driver for FrameMaker Maker Interchange files
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Sep 1993
C-move.c M_DRAW:move - Move the logical graphics position to the world coordinates x, y, z.
M_DRAW:move2 - Move the logical graphics position to the world coords x, y, 0.0
M_DRAW:rmove - move the logical graphics position from the current world coordinates by dx, dy, dz
M_DRAW:rmove2 - Move Relative in 2D.
M_DRAW:smove2 - Move directly as a fraction of the screen size.
M_DRAW:rsmove2 - Relative move as a fraction of the screen size.
C-mysignal_.c
C-M_drawplus.c M_drawplus::barcode(3c): draw 3-of-9 bar code
C-M_getkey.c Driver for reading a character from keyboard in raw I/O mode */
Driver for reading a character from keyboard in raw I/O mode */
Driver for reading a character from keyboard in raw I/O mode */
Driver for reading a character from keyboard in raw I/O mode */
C-M_hashkeys.c
C-M_readline.c Fortran-callable C routine that calls readline(3c)
FCreadline(3c): return line from readline(3c) to Fortran. John S. Urban, 20100323
C-M_regex.c
C-M_sqlite.c
C-M_system.c system_unbuffer(3c): FORTRAN-callable call to turn off buffering of stdin
Driver for reading a character from stdin */
Driver for writing a character to stdout */
C-M_units.c d2r(3c): Convert degrees to radians
r2d(3c): Convert radians to degrees
C-newtokens.c M_DRAW:newtokens - returns the space for num tokens
C-nil.c M_DRAW:driver/nil.c - M_DRAW driver for null output device
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, May 2011
C-objects.c M_DRAW:makeobj - start a new object.
M_DRAW:closeobj - close an object
M_DRAW:delobj - deletes an object, freeing its memory
M_DRAW:genobj - generates a unique object identifier
M_DRAW:getopenobj - returns the object currently being edited, -1 if none.
M_DRAW:loadobj - reads in object file file and makes it the object referred to by n.
M_DRAW:saveobj - saves the object n into file file.
M_DRAW:doarc - draw an arc or circle.
M_DRAW:callobj - draws an object
M_DRAW:isobj - returns 1 if there is an object n, 0 otherwise.
C-patches.c M_DRAW:patchbasis - Specify the two basis matrices for a patch
M_DRAW:patchprecision - Specify the lower limit on the number of line segments used to draw a curve as part of a patch.
M_DRAW:patchcurves - Specify the number of curves to be drawn in each direction on a patch.
M_DRAW:makeprec - Makes up the two precision matrices for a patch
M_DRAW:patch - Draws a bicubic patch. (ie. all the w coords a 1 and the basis matrices don't change that)
M_DRAW:rpatch - Draws rational bicubic patches.
M_DRAW:transformtensor - Transform the tensor S by the matrix m
M_DRAW:replace - Does the reverse of extract.
M_DRAW:drpatch - Actually does the work of drawing a patch.
M_DRAW:iterate - Iterates the forward difference tensor R
M_DRAW:extract - Extract the k'th column of the tensor a into the matrix b.
M_DRAW:addemup
C-pbm.c M_DRAW:driver/pbm.c - M_DRAW driver for PBM/X11 bitmaps
M_DRAW:author - John S. Urban
M_DRAW:version - 3.0, Mar 1995,2004
C-pcl5.c M_DRAW:driver/pcl5.c - M_DRAW driver for PCL5 and HPGL2
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Dec 1996
C-pdf.c M_DRAW:source - driver/pdf.c - M_DRAW driver for Adobe Illustrator PDF
M_DRAW:author - John S. Urban
M_DRAW:version - 1.5, Mar 2005
C-points.c M_DRAW:point - plot a point in x, y, z.
M_DRAW:point2 - plot a point in x, y.
M_DRAW:spoint - plot a point in screen coords.
C-polygons.c M_DRAW:polyfill - set the polygon fill flag. This will always turn off hatching.
M_DRAW:polyhatch - set the polygon hatch flag. This will always turn off fill.
M_DRAW:hatchang - set the hatch angle
M_DRAW:hatchpitch - set the hatch pitch
M_DRAW:hatch - hatch the polygon defined by the n points in the array p.
M_DRAW:backfacedir - Set which direction backfacing polygons are defined to be.
M_DRAW:... * 1 = clockwise (in screen coords) 0 = anticlockwise.
M_DRAW:backface - Turns on culling of backfacing polygons. A polygon is
M_DRAW:... backfacing if its orientation in *screen* coords is clockwise.
M_DRAW:dopoly - do a transformed polygon with n edges using fill or hatch
M_DRAW:polyoutline - draws a polygon outline from already transformed points.
M_DRAW:polyobj - construct a polygon from a object token list
M_DRAW:poly2 - construct polygon from a (x, y) array of points provided by user
M_DRAW:poly - construct a polygon from an array of points provided by the user.
M_DRAW:pmove - set the start position of a polygon
M_DRAW:pdraw - add another vertex to the polygon array
M_DRAW:makepoly - set up a polygon which will be constructed by a series of move draws.
M_DRAW:closepoly - draw the polygon started by the above.
M_DRAW:checkbacki - Checks if a transformed polygon is backfacing or not.
M_DRAW:The following routines are an implementation of the Sutherland - Hodgman
M_DRAW:polygon clipper, as described in 'Reentrant Polygon Clipping'
M_DRAW:Communications of the ACM Jan 1974, Vol 17 No. 1.
M_DRAW:polyclip
M_DRAW:shclip
M_DRAW:shclose
M_DRAW:intersect
M_DRAW:visible
C-ppm.c M_DRAW:driver/ppm.c - M_DRAW driver for ppm (Poskanzer pixmap) files
M_DRAW:author - John S. Urban
M_DRAW:version - 3.0, Jul 2019
Version 1.0, John S. Urban, Feb 1997
Version 2.0, John S. Urban, Nov 2005
Version 3.0, John S. Urban, Jul 2019
C-pref.c M_DRAW:prefposition - Specify a preferred position for a window that is under control of a window manager.
M_DRAW:prefsize - Specify the preferred size for a window under control of a window manager.
M_DRAW:getprefposandsize - Returns the preferred position and size of a window under control of a window manager.
C-ps.c M_DRAW:driver/ps.c - M_DRAW driver for PostScript files
C-read_line.c read_line(3c):Paranoid function to read a line of text from a text file or terminal
C-rect.c M_DRAW:rect - draw a rectangle given two opposite corners
M_DRAW:srect - draw a rectangle given two opposite corners in screen coords.
C-rgbhls.c
C-rgbhvs.c
C-rgbmono.c For converting RGB colors to a reasonable grayscale
C-rgbval.c Ensure a color value is in the appropriate range and quadrant
C-rtf.c M_DRAW:driver/rtf.c - M_DRAW driver for RTF (Microsoft Rich Text Format) files
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Mar 2008
M_DRAW RTF Driver Version 1.0.0, October 2007; John S. Urban}
C-scale.c M_DRAW:scale - Set up a scale matrix and premultiply it and the top matrix on the stack.
C-svg.c M_DRAW:source - driver/svg.c - M_DRAW driver SVG (Scalable Vector Graphics) files
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Mar 2005
C-tek.c M_DRAW:driver/tek.c - M_DRAW driver for Tektronix 401x or equivalent (like X11 xterm)
C-tensor.c M_DRAW:premulttensor - Premultiply the tensor b by the matrix a and place the result into the tensor c.
M_DRAW:multtensor - Multiply the tensor b by the matrix a and place the result into the tensor c.
M_DRAW:copytensor - Copy the tensor a into b.
M_DRAW:copytensortrans - Copy the tensor a into b 'transposed'.
C-text.c M_DRAW:font - loads in a font.
M_DRAW:numchars - return the number of characters in the currently loaded hershey font.
M_DRAW:hershfont - Load in a Hershey font
M_DRAW:getcharsize - get the width and height of a single character
M_DRAW:drawchar - Display a character from the currently loaded font.
M_DRAW:drawhardchar - Displays a hardware character.
M_DRAW:textsize - set software character scaling values
M_DRAW:getfontwidth - Return the maximum width of the current font.
M_DRAW:getfontheight - Return the maximum Height of the current font
M_DRAW:getfontdec - Return the maximum descender of the current font
M_DRAW:getfontasc - Return the maximum ascender of the current font
M_DRAW:getfontsize - get the current character size in user coords.
M_DRAW:drawhstr - Display the text string using the currently loaded Hershey font
M_DRAW:drawstr - Draw a string from the current pen position.
M_DRAW:istrlength - Find out the length of a string in raw 'Hershey coordinates'.
M_DRAW:strlength - Find out the length (in world coords) of a string.
M_DRAW:boxtext - Stretch and draw text so it fits in a 'box' - note only works with Hershey text
M_DRAW:boxfit - Set up the scales etc for text so that a string of 'nchars' characters of the maximum width in the font fits in a box.
M_DRAW:centertext - Turns centering of text on or off. Turns off all other justifying.
M_DRAW:textjustify - Directly turns on/off justification
M_DRAW:xcentertext - Directly turns on xcentering
M_DRAW:ycentertext - Directly turns on ycentering
M_DRAW:leftjustify - Turns on leftjustification
M_DRAW:rightjustify - Turns on rightjustification
M_DRAW:topjustify - Turns on topjustification
M_DRAW:bottomjustify - Turns on bottomjustification
M_DRAW:fixedwidth - Turns fixedwidth text on or off
M_DRAW:textang - set software character angle in degrees
M_DRAW:textslant - Defines the obliqueness of the fonts.
M_DRAW:textweight - Defines the weight of the fonts.
M_DRAW:actual_move - implements a move
C-trans.c M_DRAW:translate - Set up a translation matrix and premultiply it and the top matrix on the stack.
M_DRAW:rotate - Set up a rotate matrix and premultiply it with the top matrix on the stack.
C-unixplot.c M_DRAW:driver/unixplot.c - M_DRAW driver for UNIX 'plot' format files
C-usemap.c M_DRAW:source - driver/usemap.c - M_DRAW driver for helping to create HTML image maps
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Jun 2010
C-valloc.c M_DRAW:vallocate - malloc with error checking
M_DRAW:realloc with error checking
M_DRAW:vfree - free with error checking
C-verror.c M_DRAW:verror - print an error on the graphics device, and then exit.
C-viewing.c M_DRAW:polarview - Specify the viewer's position in polar coordinates
M_DRAW:up - set the up vector
M_DRAW:normallookat - do the standard lookat transformation.
M_DRAW:lookatwithup - do the standard lookat transformation using an up vector as well.
M_DRAW:lookat - Specify the viewer's position by giving a viewpoint and a reference point in world coordinates.
M_DRAW:perspective - Specify a perspective viewing pyramid in world coordinates
M_DRAW:window - Specify a perspective viewing pyramid in world coordinates
M_DRAW:ortho - Define a three dimensional viewing box
M_DRAW:ortho2 - Specify a two dimensional viewing rectangle.
C-viewp.c M_DRAW:pushviewport - pushes the current viewport on the viewport stack
M_DRAW:popviewport - pops the top viewport off the viewport stack.
M_DRAW:viewport - Define a Viewport in Normalized Device Coordinates
M_DRAW:getviewport - Returns the left, right, bottom and top limits of the current viewport.
C-vml.c M_DRAW:driver/vml.c - M_DRAW driver for VML (Microsoft Vector Markup Language)
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Mar 1999
M_DRAW VML Driver Version 1.0.1, March 1999
C-vog.c M_DRAW:driver/vog.c - M_DRAW driver for writing M_DRAW calls as text commands for the ush(1) shell
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0, Mar 2004
C-X11.c M_DRAW:driver/X11.c - M_DRAW driver for X11 Windows
C-xfig.c M_DRAW:driver/xfig.c - M_DRAW driver for xfig(1) files
M_DRAW:author - John S. Urban
M_DRAW:version - 1.0
C-yobbarays.c M_DRAW:yobbarays - Turns on (or off) yobba rays, as described by Larry Dart's friend.