ssh
to your
account. You might need to manually install some packages though.
[top]
man
utility. Run man man
and
read the DESCRIPTION of the utility in your
system. man
usually uses less
as the default pager; you quit from less
by pressing
the q
-key.
cp
,
ls
,
mkdir
,
mv
,
rm
,
and the bash built-in command cd
.
man
1 mkdir
in your terminal or into Google-search in your browser.
sudo apt install nano
sudo apt install build-essential
man
by pressing q
.
~ | home directory |
.. | parent directory |
. | current working directory |
$HOME | home directory |
cd -
changes into the previous directory.
[top] [lectures/2]
char
, int
, float
,
double
, long double
, complex
;
+
,-
,*
,/
;
printf
function;
-lm
); type-generic math tgmath.h
.
↑
and ↓
keys scroll over the previously issued commands.
!text
runs the latest command that
begins with text
. Useful for issuing the same command again.
if
, switch
and loops while
, for
,
do-while
;
switch
is not so important).
sudo apt-get install manpages-posix manpages-posix-dev
make
utility.
From now on all your exercises (and also the examination project) must be managed using makefiles.
.RECIPEPREFIX := ;
.
~/.nanorc
,
syntax "makefile" "[Mm]akefile" color white,magenta " "where the character in between the quotation marks in the second line should be the tabulator sign and where the colors are free for you to choose.
man stdout
man atoi
(ascii to integer)
and man atof
(ascii
to double).
man scanf
Makefile
to Makefile.txt
and run your
make as make -f Makefile.txt
.
On MacOS with homebrew you can probably use the command
brew install gnuplotFor interactive usage include options
--with-qt
and/or
--with-x11
.
On Debian based systems, like Ubuntu, the command is
sudo apt-get --yes install gnuplotand/or
sudo apt-get --yes install pyxplot gvThe
--yes
option automatically answers 'yes' on all questions
apt-get
might ask.
The two plotting utilities have very similar scripting languages but otherwise are somewhat different. Pyxplot uses LaTeX to render all text on the plot which is rather convenient. Gnuplot has more terminals. Look at their web-pages, gnuplot and pyxplot (specifically, the examples), and choose the one you like most (or both).
Note: it seems the developement of pyxplot has stagnated at the moment, therefore gnuplot might indeed be a better option.
apt-cache search libgsl | grep developmentIt should return either
libgsl0-dev
or
libgls-dev
, depending on your system. Install this package,
sudo apt-get install libgsl0-devor
sudo apt-get install libgsl-devThe HomeBrew users should (apparently) use the command
brew install gsl
Alternatively, you can download the source code and build the library on your box. It will probably take more time though.
gsl_odeiv2_system
with
the fields function, jacobian, dimension,
params
to hold an Ordinary Differential Equations
Initial Value System.
gsl_odeiv2_step_rk2
,
gsl_odeiv2_step_rk4
,
gsl_odeiv2_step_rk45
, ... ,
gsl_odeiv2_step_bsimp
. Note which of the algorithms require the
Jacobian of the system.
gsl_odeiv2_driver_alloc_y_new
and
gsl_odeiv2_driver_apply
gsl_integration_qag
(adaptive Gauss-Kronrod integrator)
gsl_integration_qags
(singular integrand)
gsl_integration_qagi
(infinite interval)
gsl_integration_qagiu
(infinite upper interval)
gsl_integration_qagil
(infinite lower interval)
gsl_integration_cquad
(new fashionable algorithm)
gsl_multiroot_function
gsl_multiroot_fsolver_alloc|free
gsl_multiroot_fsolver_set
gsl_multiroot_fsolver_iterate
gsl_multiroot_test_residual
gsl_multimin_function
gsl_multimin_fminimizer
gsl_multimin_fminimizer_nmsimplex2
gsl_multimin_fminimizer_alloc|free
gsl_multimin_fminimizer_set
gsl_multimin_fminimizer_iterate
gsl_multimin_fminimizer_size
gsl_multimin_fminimizer_test_size
sudo apt-get install texlive texlive-latex-extra
brew cask install mactexor
brew cask install basictex # allegedly a small but functional version of MacTeX
#include<assert.h>
and use assertions plentifully:
you can easily disable all assertions by simply
recompiling the code with -DNDEBUG
c-flag:
CFLAGS += -DNDEBUG
report.pdf
(or simlar)
with your report. The report should be prepared in LaTeX and should
contain a short description of the problem, the way you have solved it,
and a figure, prepared in gnuplot, figure to illustrate that the problem
has been solved correctly.
make clean
should correctly clean the project.
make clean; make
should correctly rebuild the project.