VERSION = @VERSION@
YACC = @YACC@
-bin_PROGRAMS = ginaccint.bin ginaccint
+bin_PROGRAMS = ginaccint.bin
+bin_SCRIPTS = ginaccint
noinst_LTLIBRARIES = libginac.la
ginaccint_bin_SOURCES = ginaccint.bin.cpp dummies.cpp dummies.h
man_MANS = ginaccint.1
ginaccint_bin_LDADD = $(LDADD)
ginaccint_bin_DEPENDENCIES =
ginaccint_bin_LDFLAGS =
-ginaccint_SOURCES = ginaccint.c
-ginaccint_OBJECTS = ginaccint.o
-ginaccint_LDADD = $(LDADD)
-ginaccint_DEPENDENCIES =
-ginaccint_LDFLAGS =
+SCRIPTS = $(bin_SCRIPTS)
+
CXXFLAGS = @CXXFLAGS@
CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
TAR = tar
GZIP_ENV = --best
-DEP_FILES = .deps/dummies.P .deps/ginaccint.P .deps/ginaccint.bin.P \
-.deps/libginac.la.P
-SOURCES = libginac.la.c $(ginaccint_bin_SOURCES) ginaccint.c
-OBJECTS = libginac.la.lo $(ginaccint_bin_OBJECTS) ginaccint.o
+DEP_FILES = .deps/dummies.P .deps/ginaccint.bin.P .deps/libginac.la.P
+SOURCES = libginac.la.c $(ginaccint_bin_SOURCES)
+OBJECTS = libginac.la.lo $(ginaccint_bin_OBJECTS)
all: all-redirect
.SUFFIXES:
rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
done
-ginaccint: $(ginaccint_OBJECTS) $(ginaccint_DEPENDENCIES)
- @rm -f ginaccint
- $(LINK) $(ginaccint_LDFLAGS) $(ginaccint_OBJECTS) $(ginaccint_LDADD) $(LIBS)
+install-binSCRIPTS: $(bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ else if test -f $(srcdir)/$$p; then \
+ echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; fi; \
+ done
+
+uninstall-binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ list='$(bin_SCRIPTS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ done
.cpp.o:
$(CXXCOMPILE) -c $<
.cpp.lo:
check: check-am
installcheck-am:
installcheck: installcheck-am
-install-exec-am: install-binPROGRAMS
+install-exec-am: install-binPROGRAMS install-binSCRIPTS
install-exec: install-exec-am
install-data-am: install-man
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
-uninstall-am: uninstall-binPROGRAMS uninstall-man
+uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS uninstall-man
uninstall: uninstall-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(MANS)
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(SCRIPTS) $(MANS)
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
- $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man1
+ $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(bindir) \
+ $(DESTDIR)$(mandir)/man1
mostlyclean-generic:
maintainer-clean-compile mostlyclean-libtool distclean-libtool \
clean-libtool maintainer-clean-libtool mostlyclean-binPROGRAMS \
distclean-binPROGRAMS clean-binPROGRAMS maintainer-clean-binPROGRAMS \
-uninstall-binPROGRAMS install-binPROGRAMS install-man1 uninstall-man1 \
-install-man uninstall-man tags mostlyclean-tags distclean-tags \
-clean-tags maintainer-clean-tags distdir mostlyclean-depend \
-distclean-depend clean-depend maintainer-clean-depend info-am info \
-dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-install-exec install-data-am install-data install-am install \
-uninstall-am uninstall all-redirect all-am all installdirs \
-mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+uninstall-binPROGRAMS install-binPROGRAMS uninstall-binSCRIPTS \
+install-binSCRIPTS install-man1 uninstall-man1 install-man \
+uninstall-man tags mostlyclean-tags distclean-tags clean-tags \
+maintainer-clean-tags distdir mostlyclean-depend distclean-depend \
+clean-depend maintainer-clean-depend info-am info dvi-am dvi check \
+check-am installcheck-am installcheck install-exec-am install-exec \
+install-data-am install-data install-am install uninstall-am uninstall \
+all-redirect all-am all installdirs mostlyclean-generic \
+distclean-generic clean-generic maintainer-clean-generic clean \
+mostlyclean distclean maintainer-clean
# Build a modified library in the ginac-subdir and put it into the cint-subdir:
After startup, ginsh displays a prompt signifying that it is ready to
accept your input. All C++ statements are valid as input, extended by
GiNaC's numeric or symbolic expressions. E.g.
-.BR fibonacci(24)/1104;
+.BR fibonacci(24)/1104;
returns a GiNaC object of class
.BR ex,
, which in this case represents the numeric 42. Symbols are declared by
.BR "\fBOut\fP\fInum\fP"
as a handle.
+.IP "\fBLAST\fP, \fBLLAST, \fP\fBLLLAST\fP"
+Return the last, second last and third last expression,
+respectively.
+
.SH EXAMPLES
.nf
GiNaC> symbol x("x"), y("y"), z("z");
GiNaC> s.normal();
Out2 = (-2+x)*(1+x)^(-1)
GiNaC> for (int i=2; i<20; i+=2) {
- > cout << "B(" << i << ") == " << bernoulli(i) << endl;
+ > cout << "B(" << i << ")==" << bernoulli(i) << endl;
> }
B(2)==1/6
B(4)==-1/30
next expression can be a function definition
GiNaC> ex EulerNumber(unsigned n)
> {
- > symbol x;
- > const ex generator = pow(cosh(x),-1);
- > return generator.diff(x,n).subs(x==0);
+ > symbol xi;
+ > const ex generator = pow(cosh(xi),-1);
+ > return generator.diff(xi,n).subs(xi==0);
> }
creating file /tmp/ginac26197caa
GiNaC> EulerNumber(42);
Out3 = -10364622733519612119397957304745185976310201
+GiNaC> ex f = expand((x*y*z-1)*(x*y*z+3));
+GiNaC> ex g = expand((x*y*z-1)*(x*y*z-3));
+GiNaC> cout << "The GCD of " << f << " and " << g << endl
+ > << " is " << gcd(f, g) << endl
+ > << " so " << f/g << endl
+ > << " is " << normal(f/g) << endl;
+The GCD of -3+2*x*z*y+x^2*z^2*y^2 and 3-4*x*z*y+x^2*z^2*y^2
+ is -1+x*z*y
+ so (-3+2*x*z*y+x^2*z^2*y^2)*(3-4*x*z*y+x^2*z^2*y^2)^(-1)
+ is (-3+x*z*y)^(-1)*(3+x*z*y)
GiNaC> quit;
.fi