Skip to content

Commit 1d4b775

Browse files
committed
Uploaded the sources for version 5.0beta
1 parent 3626a4a commit 1d4b775

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+4994
-1101
lines changed

doc/manual/diagrams.tex

Lines changed: 326 additions & 37 deletions
Large diffs are not rendered by default.

doc/manual/man.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@
114114
\input{external}
115115
\input{spectators}
116116
\input{diagrams}
117+
\input{float.tex}
117118
%
118119
\printindex
119120

sources/argument.c

Lines changed: 46 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
/* #[ License : */
88
/*
9-
* Copyright (C) 1984-2022 J.A.M. Vermaseren
9+
* Copyright (C) 1984-2017 J.A.M. Vermaseren
1010
* When using this file you are requested to refer to the publication
1111
* J.A.M.Vermaseren "New features of FORM" math-ph/0010025
1212
* This is considered a matter of courtesy as the development was paid
@@ -158,9 +158,14 @@ WORD execarg(PHEAD WORD *term, WORD level)
158158
}
159159
RightNum:
160160
if ( m[1] == 2 ) {
161-
m += 2;
162-
m += *m;
163-
goto HaveTodo;
161+
#ifdef WITHFLOAT
162+
if ( *t != FLOATFUN || AT.aux_ == 0 || TestFloat(t) == 0 )
163+
#endif
164+
{
165+
m += 2;
166+
m += *m;
167+
goto HaveTodo;
168+
}
164169
}
165170
else {
166171
r = m + m[1];
@@ -525,7 +530,7 @@ ScaledVariety:;
525530
}
526531
/*
527532
We generate a statement for adapting all terms in the
528-
argument successively
533+
argument sucessively
529534
*/
530535
r4 = AddRHS(AT.ebufnum,1);
531536
while ( (r4+j+12) > CC->Top ) r4 = DoubleCbuffer(AT.ebufnum,r4,3);
@@ -1139,35 +1144,35 @@ ScaledVariety:;
11391144
EAscrat = (UWORD *)(TermMalloc("execarg"));
11401145
if ( t + *t == r3 ) {
11411146
if ( factor == 0 || *factor > 2 ) {
1142-
if ( pow > 0 ) {
1147+
if ( pow > 0 ) {
11431148
*r1++ = -SNUMBER; *r1++ = -1;
11441149
t = r5;
11451150
while ( t < r3 ) {
11461151
t += *t; t[-1] = -t[-1];
11471152
}
1148-
}
1149-
t = rr; *r1++ = *t++; *r1++ = 1; t++;
1150-
COPYARG(r1,t);
1151-
while ( t < m ) *r1++ = *t++;
1153+
}
1154+
t = rr; *r1++ = *t++; *r1++ = 1; t++;
1155+
COPYARG(r1,t);
1156+
while ( t < m ) *r1++ = *t++;
11521157
}
11531158
}
11541159
else {
1155-
GETSTOP(t,r6);
1156-
ngcd = t[t[0]-1];
1157-
i = abs(ngcd)-1;
1158-
while ( --i >= 0 ) EAscrat[i] = r6[i];
1159-
t += *t;
1160-
while ( t < r3 ) {
1160+
GETSTOP(t,r6);
1161+
ngcd = t[t[0]-1];
1162+
i = abs(ngcd)-1;
1163+
while ( --i >= 0 ) EAscrat[i] = r6[i];
1164+
t += *t;
1165+
while ( t < r3 ) {
11611166
GETSTOP(t,r6);
11621167
i = t[t[0]-1];
11631168
if ( AccumGCD(BHEAD EAscrat,&ngcd,(UWORD *)r6,i) ) goto execargerr;
11641169
if ( ngcd == 3 && EAscrat[0] == 1 && EAscrat[1] == 1 ) break;
11651170
t += *t;
1166-
}
1171+
}
11671172
/*
1168-
if ( ngcd != 3 || EAscrat[0] != 1 || EAscrat[1] != 1 ) {
1173+
if ( ngcd != 3 || EAscrat[0] != 1 || EAscrat[1] != 1 )
11691174
*/
1170-
{
1175+
{
11711176
if ( pow ) ngcd = -ngcd;
11721177
t = r5; r9 = r1; *r1++ = t[-ARGHEAD]; *r1++ = 1;
11731178
FILLARG(r1); ngcd = REDLENG(ngcd);
@@ -1215,9 +1220,26 @@ ScaledVariety:;
12151220
if ( ToFast(r9,r9) ) r1 = r9+2;
12161221
}
12171222
}
1218-
}
1223+
}
12191224
/*
1220-
#] Numerical factor :
1225+
#] Numerical factor :
1226+
else {
1227+
onetermnew:;
1228+
1229+
if ( factor == 0 || *factor > 2 ) {
1230+
if ( pow > 0 ) {
1231+
*r1++ = -SNUMBER; *r1++ = -1;
1232+
t = r5;
1233+
while ( t < r3 ) {
1234+
t += *t; t[-1] = -t[-1];
1235+
}
1236+
}
1237+
t = rr; *r1++ = *t++; *r1++ = 1; t++;
1238+
COPYARG(r1,t);
1239+
while ( t < m ) *r1++ = *t++;
1240+
}
1241+
}
1242+
onetermnew:;
12211243
*/
12221244
}
12231245
TermFree(EAscrat,"execarg");
@@ -1689,6 +1711,7 @@ oneterm:;
16891711
}
16901712
} /* AC.OldFactArgFlag */
16911713
}
1714+
/* r1 is fout in ons voorbeeld. */
16921715
r2[1] = r1 - r2;
16931716
action = 1;
16941717
v[2] = DIRTYFLAG;
@@ -1707,7 +1730,7 @@ oneterm:;
17071730
if ( AT.WorkPointer < t ) AT.WorkPointer = t;
17081731
}
17091732
/*
1710-
#] FACTARG :
1733+
#] FACTARG :
17111734
*/
17121735
AR.Cnumlhs = oldnumlhs;
17131736
if ( action && Normalize(BHEAD term) ) goto execargerr;
@@ -1726,7 +1749,7 @@ oneterm:;
17261749
}
17271750

17281751
/*
1729-
#] execarg :
1752+
#] execarg :
17301753
#[ execterm :
17311754
*/
17321755

sources/bugtool.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
/* #[ License : */
77
/*
8-
* Copyright (C) 1984-2022 J.A.M. Vermaseren
8+
* Copyright (C) 1984-2017 J.A.M. Vermaseren
99
* When using this file you are requested to refer to the publication
1010
* J.A.M.Vermaseren "New features of FORM" math-ph/0010025
1111
* This is considered a matter of courtesy as the development was paid

sources/checkpoint.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
#] Explanations :
5454
#[ License :
5555
*
56-
* Copyright (C) 1984-2022 J.A.M. Vermaseren
56+
* Copyright (C) 1984-2017 J.A.M. Vermaseren
5757
* When using this file you are requested to refer to the publication
5858
* J.A.M.Vermaseren "New features of FORM" math-ph/0010025
5959
* This is considered a matter of courtesy as the development was paid
@@ -275,7 +275,7 @@ static int PF_CheckRecoveryFile()
275275
}
276276
#endif
277277

278-
int CheckRecoveryFile()
278+
int CheckRecoveryFile(VOID)
279279
{
280280
int ret = 0;
281281
#ifdef WITHMPI
@@ -330,7 +330,7 @@ int CheckRecoveryFile()
330330
* Deletes the recovery files. It is called by CleanUp() in the case of a
331331
* successful completion.
332332
*/
333-
void DeleteRecoveryFile()
333+
void DeleteRecoveryFile(VOID)
334334
{
335335
if ( done_snapshot ) {
336336
remove(recoveryfile);
@@ -361,7 +361,7 @@ void DeleteRecoveryFile()
361361
/**
362362
* Returns pointer to recovery filename.
363363
*/
364-
char *RecoveryFilename()
364+
char *RecoveryFilename(VOID)
365365
{
366366
return(recoveryfile);
367367
}
@@ -396,7 +396,7 @@ static char *InitName(char *str, char *ext)
396396
* This functions should only be called once to avoid memory leaks and after
397397
* AM.TempDir has been initialized.
398398
*/
399-
void InitRecovery()
399+
void InitRecovery(VOID)
400400
{
401401
int lenpath = AM.TempDir ? strlen((char*)AM.TempDir)+1 : 0;
402402
#ifdef WITHMPI
@@ -2343,9 +2343,9 @@ int DoRecovery(int *moduletype)
23432343
R_SET(AR.SortType, WORD);
23442344
R_SET(AR.ShortSortCount, WORD);
23452345

2346-
/* this is usually done in Process(), but sometimes FORM does not
2346+
/* this is usually done in Process(), but sometimes FORM doesn't
23472347
end up executing Process() before it uses the AR.CompressPointer,
2348-
so we need to explicitly set it here. */
2348+
so we need to explicitely set it here. */
23492349
AR.CompressPointer = AR.CompressBuffer;
23502350

23512351
#ifdef WITHPTHREADS

0 commit comments

Comments
 (0)