The libctl Manual

From AbInitio

Revision as of 14:31, 10 March 2008; Stevenj (Talk | contribs)
(diff) ←Older revision | Current revision | Newer revision→ (diff)
Jump to: navigation, search

DVxvLf <a href="http://mnbqhqkwmksc.com/">mnbqhqkwmksc</a>, [url=http://olmmlblzecks.com/]olmmlblzecks[/url], [link=http://ukdijthuvokp.com/]ukdijthuvokp[/link], http://zlnilwyzsmpb.com/

http://www.chinesefreewebs.com/nodott/5136/index47.html sorprendidas sexo http://www.chinesefreewebs.com/nodott/5136/index48.html sexo gratis foto video real http://www.chinesefreewebs.com/nodott/5136/index49.html video sexo entre pareja http://www.chinesefreewebs.com/nodott/5136/index50.html relatos sexo infantil http://www.chinesefreewebs.com/nodott/5136/index51.html sexo casero com http://www.chinesefreewebs.com/nodott/5136/index52.html sexo penes chicos http://www.chinesefreewebs.com/nodott/5136/index53.html videos de chicas de 17 anos teniendo sexo http://www.chinesefreewebs.com/nodott/5136/index54.html ver las mejores peliculas de sexo http://www.chinesefreewebs.com/nodott/5136/index55.html sexo puro i duro http://www.chinesefreewebs.com/nodott/5136/index56.html sexo puro duro gratis http://www.chinesefreewebs.com/nodott/5136/index57.html nalga culo teta sexo http://www.chinesefreewebs.com/nodott/5136/index58.html telefono contacto sexo galicia pontevedra http://www.chinesefreewebs.com/nodott/5136/index59.html foto gratis sexo hentai http://www.chinesefreewebs.com/nodott/5136/index60.html video lesbico sexo entre ella http://www.chinesefreewebs.com/nodott/5136/index61.html hentai sexo xxx http://www.chinesefreewebs.com/nodott/5136/index62.html sexo en servicios gratis http://www.chinesefreewebs.com/nodott/5136/index63.html videos de pilladas de sexo gratis http://www.chinesefreewebs.com/nodott/5136/index64.html corriente sexo com ar http://www.chinesefreewebs.com/nodott/5136/index65.html full sexo gratis http://www.chinesefreewebs.com/nodott/5136/index66.html puta sexo coche http://www.chinesefreewebs.com/nodott/5136/index67.html sexo san fernando cadiz http://www.chinesefreewebs.com/nodott/5136/index68.html video gratis gay teniendo sexo http://www.chinesefreewebs.com/nodott/5136/index69.html sexo viejos y jovencitas http://www.chinesefreewebs.com/nodott/5136/index70.html sexo chica puta

http://www.chinesefreewebs.com/nodott/5136/index95.html ebcams sexo cam gratis http://www.chinesefreewebs.com/nodott/5136/index96.html sexo habla http://www.chinesefreewebs.com/nodott/5136/index97.html bromas de sexo http://www.chinesefreewebs.com/nodott/5136/index98.html postura imagen practica sexo coche http://www.chinesefreewebs.com/nodott/5136/index99.html chica manga sexo http://www.chinesefreewebs.com/nodott/5136/index100.html contacto sexo madrid http://www.chinesefreewebs.com/nodott/5136/index101.html full sexo gratis http://www.chinesefreewebs.com/nodott/5136/index102.html site www foto video sexo gay gay porn http://www.chinesefreewebs.com/nodott/5136/index103.html sexo con serpientes gratis http://www.chinesefreewebs.com/nodott/5136/index104.html sexo y algo mas http://www.chinesefreewebs.com/nodott/5136/index105.html videos de gente teniendo sexo http://www.chinesefreewebs.com/nodott/5136/index106.html site search live com sexo adulto http://www.chinesefreewebs.com/nodott/5136/index107.html foto sexo gratis novia infiel http://www.chinesefreewebs.com/nodott/5136/index108.html fotos de chicas sexo http://www.chinesefreewebs.com/nodott/5136/index109.html contactos sexo salamanca http://www.chinesefreewebs.com/nodott/5136/index110.html site www foto video sexo gay gay group msn com http://www.chinesefreewebs.com/nodott/5136/index111.html sexo comida http://www.chinesefreewebs.com/immons/2017/index.html porno movie free http://www.chinesefreewebs.com/immons/2017/index1.html free manga porno video download http://www.chinesefreewebs.com/immons/2017/index2.html free gay porn costume http://www.chinesefreewebs.com/immons/2017/index3.html how to get a porn http://www.chinesefreewebs.com/immons/2017/index4.html free porno xxx movie http://www.chinesefreewebs.com/immons/2017/index5.html sito porno amatoriale italiano http://www.chinesefreewebs.com/immons/2017/index6.html scandinavian porn

http://www.chinesefreewebs.com/immons/2017/index31.html freeyoung porn pics http://www.chinesefreewebs.com/immons/2017/index32.html older latina porn movies http://www.chinesefreewebs.com/immons/2017/index33.html free online porno movie http://www.chinesefreewebs.com/immons/2017/index34.html gay porn videos beta http://www.chinesefreewebs.com/immons/2017/index35.html tia carrea porn http://www.chinesefreewebs.com/immons/2017/index36.html pret teen porn http://www.chinesefreewebs.com/immons/2017/index37.html virus safe porn http://www.chinesefreewebs.com/immons/2017/index38.html porno movie free privato http://www.chinesefreewebs.com/immons/2017/index39.html free gay german porno http://www.chinesefreewebs.com/immons/2017/index40.html porn star felony http://www.chinesefreewebs.com/immons/2017/index41.html related www film porno it http://www.chinesefreewebs.com/immons/2017/index42.html mortal kombat porn http://www.chinesefreewebs.com/immons/2017/index43.html 3x2 porno gratis sito http://www.chinesefreewebs.com/immons/2017/index44.html free gay porno videos http://www.chinesefreewebs.com/immons/2017/index45.html sex hardcore free porn http://www.chinesefreewebs.com/immons/2017/index46.html male porn star secrets http://www.chinesefreewebs.com/immons/2017/index47.html pornstar scope http://www.chinesefreewebs.com/immons/2017/index48.html linsey dawn mckenzie porn http://www.chinesefreewebs.com/immons/2017/index49.html pornstar big tits http://www.chinesefreewebs.com/immons/2017/index50.html video free porno cazzo grosso http://www.chinesefreewebs.com/immons/2017/index51.html tight jeans porn http://www.chinesefreewebs.com/immons/2017/index52.html porn cum facials http://www.chinesefreewebs.com/immons/2017/index53.html free porno matura video http://www.chinesefreewebs.com/immons/2017/index54.html free beastiality porn downloads

Contents

Guile and Scheme Information

libctl
Manual: Introduction
Basic User Experience
Advanced User Experience
User Reference
Developer Experience
Guile and Scheme links
License and Copyright

There are many places you can go to on the Web to find out more regarding Guile and the Scheme programming language. We list a few of them here:

Scheme:

Scheme is a simplified derivative of Lisp, and is a small and beautiful dynamically typed, lexically scoped, functional language.

Guile:

Guile is a free implementation of Scheme, designed to be plugged in to other programs as a scripting language.

  • The home site for the GNU Guile project.
  • See parts IV and V of the Guile Reference Manual for additional Scheme functions and types defined within the Guile environment.

How to write a loop in Scheme

The most frequently asked question seems to be: how do I write a loop in Scheme? We give a few answers to that here, supposing that we want to vary a parameter x from a to b in steps of dx, and do something for each value of x.

The classic way, in Scheme, is to write a tail-recursive function:

(define (doit x x-max dx)
   (if (<= x x-max)
      (begin
         ...perform loop body with x...
         (doit (+ x dx) x-max dx))))

(doit a b dx) ; execute loop from a to b in steps of dx

There is also a do-loop construct in Scheme that you can use

(do ((x a (+ x dx))) ((> x b)) ...perform loop body with x...)

If you have a list of values of x that you want to loop over, then you can use map:

(map (lambda (x) ...do stuff with x...) list-of-x-values)

How to read in values from a text file in Scheme

A simple command to read a text file and store its values within a variable in Scheme is read. As an example, suppose a file foo.dat contains the following text, including parentheses:

(1 3 12.2
  14.5     16 18)

In Scheme, we would then use

(define port (open-input-file "foo.dat"))
(define foo (read port))
(close-input-port port)

The variable foo would then be a list of numbers '(1 3 12.2 14.5 16 18).

Tricks specific to libctl-using programs such as MPB or Meep

libctl has a couple of built-in functions arith-sequence and interpolate (see the user reference) to construct lists of a regular sequence of values, which you can use in conjunction with map as above:

(map (lambda (x) ...do stuff with x...)
     (arith-sequence x-min dx num-x))

or

(map (lambda (x) ...do stuff with x...)
     (interpolate num-x (list a b)))

Finally, if you have an entire libctl input file myfile.ctl that you want to loop, varying over some parameter x, you can do so by writing a loop on the Unix command-line. Using the bash shell, you could do:

for x in `seq a dx b`; do program x=$x myfile.ctl; done

License and Copyright

libctl
Manual: Introduction
Basic User Experience
Advanced User Experience
User Reference
Developer Experience
Guile and Scheme links
License and Copyright

libctl is copyright © 1998, 1999, 2000, 2001, 2002, 2006, Steven G. Johnson.

libctl is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. You can also find it on the GNU web page:

http://www.gnu.org/copyleft/gpl.html

Many of the files in libctl are individually licensed under the terms of the GNU Lesser General Public License; either version 2 of the License, or (at your option) any later version. This is indicated by the licensing comments at the top of each file. There are a few files in libctl that we place in the public domain, which are not restricted by the terms of the GPL or LGPL; these files explicitly indicate this fact at the top of the file. All files fall under the GPL unless they expressly say otherwise.

The files src/integrator.c and src/cintegrator.c contain multi-dimensional numeric integration code that was adapted in part from HIntLib by Rudolf Schuerer and from the GNU Scientific Library by Brian Gough. Both of these libraries are licensed under the GNU GPL, version 2 or later.

Personal tools