diff --git a/lib/lrmp.c b/lib/lrmp.c new file mode 100644 index 0000000..e515fcd --- /dev/null +++ b/lib/lrmp.c @@ -0,0 +1,41 @@ +/* + 'lrmp.c' Obfuscated by COBF (Version 1.06 2006-01-07 by BB) at Thu Nov 24 09:52:47 2011 +*/ +#include +#include +#include"lrmp.h" +#define lt static +#define lh double +#define lg int +#define lv LRmP +#define lf for +#define lm fabs +#define lo if +#define ln printf +#define ll return +#define ly Solve +#define l0 malloc +#define l1 sizeof +#define ls vwsubs +#define lw rwsubs +#define lz free +#define lx else +#define l2 LRoP +#define lu void +lt lh lp=1.0e-8;lg lv(lg ld,lh* *lc,lg*lk){lg la,lb,le;lh lj;lf(la=0; +la + +int LRmP (int n, double ** a, int * p); + /* LR-Zerlegung mit halbmaximaler Pivotsuche */ + /* Eingabe: */ + /* n : Groesse der Matrix, */ + /* a : Matrix, */ + /* p : Vektor der Laenge n fuer Permutationen. */ + /* Rueckgabe: */ + /* a : LR-zerlegte Matrix, */ + /* unterhalb der Diagonale ist L gespeichert, */ + /* in der Diagonale und oberhalb R, */ + /* p : Permutationen bei Pivotsuche. */ + /* Rueckgabewert: */ + /* bei Fehler */ + /* (Matrix 'fast' singulaer, d.h. */ + /* Pivotelement kleiner als eps = 1.0e-8) */ + /* wird 1 zurueckgegeben, */ + /* sonst 0. */ + +int Solve (int n, double ** a, double * b, int * p); + /* Berechnet Loesung von Ax=b mittels : */ + /* Routine LRmP(n,a,p) fuer LR-Zerlegung, */ + /* dann Substitutionen mit 'vorrueckwaertsub'. */ + /* Eingabe: */ + /* n : Groesse des Systems, */ + /* a : Matrix, */ + /* b : rechte Seite des LGS, */ + /* p : Vektor, um die Permutationen zu speichern. */ + /* Rueckgabe: */ + /* b : Loesung, */ + /* p : Permutationen von LRmP, */ + /* a : LR-zerlegte Matrix. */ + /* Rueckgabewert: */ + /* falls die LR-Zerlegung nicht funktioniert 1, */ + /* sonst 0. */ + +#endif diff --git a/lib/vorrueckwaertsub.c b/lib/vorrueckwaertsub.c new file mode 100644 index 0000000..d44ddcc --- /dev/null +++ b/lib/vorrueckwaertsub.c @@ -0,0 +1,26 @@ +/* + 'vorrueckwaertsub.c' Obfuscated by COBF (Version 1.06 2006-01-07 by BB) at Thu Nov 24 09:52:47 2011 +*/ +#include"vorrueckwaertsub.h" +#define lt static +#define lh double +#define lg int +#define lv LRmP +#define lf for +#define lm fabs +#define lo if +#define ln printf +#define ll return +#define ly Solve +#define l0 malloc +#define l1 sizeof +#define ls vwsubs +#define lw rwsubs +#define lz free +#define lx else +#define l2 LRoP +#define lu void +lu ls(lg ld,lh* *lr,lh*li){lg la,lb;lf(la=0;la=0;la--){lf(lb=la+1;lb