Startup Script: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Before running FLOOXS, you must set and export your FLXSHOME enviroment variable and your library paths first (see installation instructions re environment variables). Your path to the flooxs/ | Before running FLOOXS, you must set and export your FLXSHOME enviroment variable and your library paths first (see installation instructions re environment variables). Your path to the flooxs/rel2008 directory will be different on your machine, but as an example, here's how our lab computer is set up: | ||
$ export FLXSHOME="/Users/Shared/FLOOXS/ | $ export FLXSHOME="/Users/Shared/FLOOXS/rel2008" | ||
$ export LD_LIBRARY_PATH="/Users/Shared/FLOOXS/ | $ export LD_LIBRARY_PATH="/Users/Shared/FLOOXS/rel2008/lib" | ||
Run flooxs by going to the $FLXSHOME/src directory and running one of these 3 options on the flooxs executable. | Run flooxs by going to the $FLXSHOME/src directory and running one of these 3 options on the flooxs executable. | ||
$ ./flooxs.new | $ ./flooxs.new |
Revision as of 22:03, 28 September 2010
Before running FLOOXS, you must set and export your FLXSHOME enviroment variable and your library paths first (see installation instructions re environment variables). Your path to the flooxs/rel2008 directory will be different on your machine, but as an example, here's how our lab computer is set up:
$ export FLXSHOME="/Users/Shared/FLOOXS/rel2008" $ export LD_LIBRARY_PATH="/Users/Shared/FLOOXS/rel2008/lib"
Run flooxs by going to the $FLXSHOME/src directory and running one of these 3 options on the flooxs executable.
$ ./flooxs.new $ ./flooxs.new -process $ ./flooxs.new -device
The first option starts up a generic flooxs environment that can be used for either device or process simulation. The -process and -device flags run additional flooxs commands automatically on startup to prepare for a typical process or device simulation (e.g. it sets typical solution variables). Typing either
> ProcessPackage > DevicePackage
on the flooxs command-line is equivalent to using the flags. If you are curious what exactly these packages do, examine the stdout (the text that appears on your screen) for the different options.
Rather than typing this every time you log on or open a terminal, you can make a script (text file) that you can call (you can also put these lines in your .rc file). Here's an example of a startup script for a Bash shell that will set your FLXSHOME environment variable and alias paths to the FLOOXS executable. Copy/paset the following into a file and source it on logon to prepare for running FLOOPS or FLOODS:
# this is the file you can source on login, add appropriate paths and aliases alias flooxs="/Users/Shared/FLOOXS/rel2008/src/flooxs.new" alias floods="/Users/Shared/FLOOXS/rel2008/src/flooxs.new -device" alias floops="/Users/Shared/FLOOXS/rel2008/src/flooxs.new -process" export FLXSHOME="/Users/Shared/FLOOXS/rel2008" export LD_LIBRARY_PATH="/Users/Shared/FLOOXS/rel2008/lib" echo "Setting flooxs and libary paths, January 2010 Version"
Then, when you log on, or when you open a new terminal, source the startup script, then type your desired alias to run flooxs, e.g.:
$ source script.start $ floods >
Here's a full example output in case you're curious:
shockley:projects nrowsey$ source mac.start Setting iflooxs and libary paths, January 2010 Version shockley:projects nrowsey$ floods argc 2 i 0 argv /Users/Shared/FLOOXS/cur/src/flooxs.new i 1 argv -device i 0 argv /Users/Shared/FLOOXS/cur/src/flooxs.new i 1 argv -device i 0 argv /Users/Shared/FLOOXS/cur/src/flooxs.new i 1 argv -device Copyright 1993 University of Florida Copyright 1995, 1996, 1998, 2000, 2003 University of Florida Copyright 1995, 1996, 1998 University of Texas at Austin _.---._ .---. __...---' .---. `---'-. `. .-__.--' _.'( | )`. `. `._ : .'__-'_ .-- ._`---'_.-. `. `-`. ~ -._ -._``---. -. `-._ `. ~ -.._ _ _ _ ..-_ `. `-._``--.._ -~ -._ `-. -. `-._``--.._.--. ~ ~-.__ -._ `-.__ `. `. ~~ ~---...__ _ ._ .` `. ~ ~--.....--~` Alagator Scripting Enabled! solution add name = Int !negative !damp nosolve solution add name = Vac !negative !damp nosolve solution add name=V2 nosolve !negative solution add name=I2 nosolve !damp !negative solution add name=C311 nosolve !damp !negative solution add name=D311 nosolve !damp !negative solution add name=Smic nosolve !damp !negative solution add name = Potential nosolve damp negative solution add name = Boron nosolve !negative solution add name = Phosphorus nosolve !negative solution add name = Arsenic nosolve !negative solution add name = Antimony nosolve !negative solution add name = Germanium nosolve !negative solution add name = Carbon nosolve !negative solution add name = CarbonInt nosolve !negative solution add name = Temp const val=25 add solve solution add name=DevPsi solve negative damp solution add name=Elec solve !negative solution add name=Hole solve !negative solution add name=Circuit solve negative damp circuit const val=0.0 Initialized for Device Simulation flooxs>
You may now type any flooxs commands on this command-line. You may also source any .tcl file with flooxs commands in it. Here are 3 options for running tcl decks:
$ floods simulation_deck.tcl $
This will automatically exit out of floods and return you to a bash shell. This way you can write a bash script to run multiple flooxs decks right after another.
$ floods flooxs> source simulation_deck.tcl flooxs>
This will not exit out (unless you type exit in your deck on on the cmd-line, or ctrl-c). In this case you can continue to run more flooxs commands after your deck has run.
$ floods flooxs> set floodspath /Users/Shared/FLOOXS/cur/src/flooxs.new;#don't use quotes or spaces flooxs> exec $floodspath -device simulation_deck.tcl >>& tmpout
Use this if you want to use flooxs to run another instance of flooxs inside flooxs.