# Output reaction forces only

**URL:** <https://calculix.discourse.group/t/output-reaction-forces-only/3809>\
**Category:** Code development\
**Created:** [March 2, 2026, 1:22pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809 "2026-03-02T13:22:50Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 4, 2026, 8:27pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/21 "2026-03-04T20:27:13Z")

</div>

I could be building it wrong but my build works normally for 100’s of existing test cases without RR, then when I add RR, many of them fail either with no solution, or corrupt solution.

It is in an empty build directory. Also single-threaded Spooles. I previously used commit e4292fd but tried again with ff7f8a7 and it’s the same type of problem, just different numbers.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 4, 2026, 8:33pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/22 "2026-03-04T20:33:48Z")

</div>

Perfect. Can you share the steps you use for the build?

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 4, 2026, 10:11pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/23 "2026-03-04T22:11:28Z")

</div>

It’s quite complicated and I would need to share some files that I can’t do on here. It’s using MSYS2 on Windows and I manually changed some files to get it to work. I’ve used the same process for the official CCX releases for many years and it’s been OK with them.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 4, 2026, 10:17pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/24 "2026-03-04T22:17:07Z")

</div>

I see, I understand. I’ll try to fix the issue, but if it works for me I’ll call it done.

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 5, 2026, 7:14am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/25 "2026-03-05T07:14:30Z")

</div>

Fair enough. I should add that it did give the correct reaction force in at least one case of a single spring element. The problems seemed to happen more with hex and tet meshes.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 5, 2026, 12:43pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/26 "2026-03-05T12:43:53Z")

</div>

I can confirm the bug. I compiled a single-threaded MINGW64 version and “RR” makes the other ouput garbage. Since it works on Linux, it is something MINGW64 specific. Seems like a fun bug…

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 5, 2026, 8:28pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/27 "2026-03-05T20:28:43Z")

</div>

That’s great you’ve been able to reproduce it. Yea sounds horrible. Could be a memory bug which might be hidden on Linux by luck.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 5, 2026, 10:07pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/28 "2026-03-05T22:07:06Z")

</div>

Yep, my favourite kind. Btw thanks for the testing and the example.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 9, 2026, 12:54pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/29 "2026-03-09T12:54:39Z")

</div>

I think I’ve fixed the corruption.

My test case:

```auto
*NODE, NSET=NALL
1, 0, 0, 0
2, 1, 0, 0
3, 1, 1, 0
4, 0, 1, 0
5, 0, 0, 1
6, 1, 0, 1
7, 1, 1, 1
8, 0, 1, 1

*ELEMENT, TYPE=C3D8, ELSET=EALL
1, 1, 2, 3, 4, 5, 6, 7, 8

*NSET, NSET=BASE
1, 2, 3, 4
*NSET, NSET=TOP
5, 6, 7, 8

*BOUNDARY
** Fix the base nodes in all directions
BASE, 1, 3

*MATERIAL, NAME=STEEL
*ELASTIC
210000, 0.3

*SOLID SECTION, ELSET=EALL, MATERIAL=STEEL

*STEP
*STATIC
*CLOAD
5, 3, -250.0
6, 3, -250.0
7, 3, -250.0
8, 3, -250.0

*NODE PRINT, NSET=NALL
U,RF,RR
*NODE FILE
U,RF,RR
*END STEP

```

and the results:

```auto

                        S T E P 1

                                INCREMENT 1

 displacements (vx,vy,vz) for set NALL and time 0.1000000E+01

         1 0.000000E+00 0.000000E+00 0.000000E+00
         2 0.000000E+00 0.000000E+00 0.000000E+00
         3 0.000000E+00 0.000000E+00 0.000000E+00
         4 0.000000E+00 0.000000E+00 0.000000E+00
         5 -9.285714E-04 -9.285714E-04 -4.333333E-03
         6 9.285714E-04 -9.285714E-04 -4.333333E-03
         7 9.285714E-04 9.285714E-04 -4.333333E-03
         8 -9.285714E-04 9.285714E-04 -4.333333E-03

 forces (fx,fy,fz) for set NALL and time 0.1000000E+01

         1 7.500000E+01 7.500000E+01 2.500000E+02
         2 -7.500000E+01 7.500000E+01 2.500000E+02
         3 -7.500000E+01 -7.500000E+01 2.500000E+02
         4 7.500000E+01 -7.500000E+01 2.500000E+02
         5 -6.383782E-15 -2.445266E-14 -2.500000E+02
         6 -4.773959E-15 -9.103829E-15 -2.500000E+02
         7 7.105427E-15 -1.287859E-14 -2.500000E+02
         8 -1.088019E-14 2.597922E-14 -2.500000E+02

 reaction forces (rfx,rfy,rfz) for set NALL and time 0.1000000E+01

         1 7.500000E+01 7.500000E+01 2.500000E+02
         2 -7.500000E+01 7.500000E+01 2.500000E+02
         3 -7.500000E+01 -7.500000E+01 2.500000E+02
         4 7.500000E+01 -7.500000E+01 2.500000E+02
         5 0.000000E+00 0.000000E+00 0.000000E+00
         6 0.000000E+00 0.000000E+00 0.000000E+00
         7 0.000000E+00 0.000000E+00 0.000000E+00
         8 0.000000E+00 0.000000E+00 0.000000E+00

```

---

<div class="post-metadata">

**Author:** ![johanngil](https://avatars.discourse-cdn.com/v4/letter/j/779978/32.png) [@johanngil](https://calculix.discourse.group/u/johanngil)\
**Post date:** [March 9, 2026, 6:58pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/30 "2026-03-09T18:58:49Z")

</div>

Many thanks for your development update! I retested some inp files with your latest commit „dc1feae“:

1. The \*NODE PRINT options „TOTALS=YES“ and „TOTALS=ONLY“ do not yet seem to be supported. My zipped test files ([https://we.tl/t-SekMc7CF4D](https://we.tl/t-SekMc7CF4D)) have in subdirectory „clip“ some files which make use of both options. Rerunning the files you will see in the resulting dat files that for output variable RF the totals are being provided, but not yet for the new output variable RR.
2. Running standard ccx test file beam10p.inp with your latest version works well. However when I add the RR output to the file (beam10\_rr.inp) the program stucks and does not provide any resulting file. There may be still a problem with the memory management.
3. To simplify your further initial testing my above zip file further contains a directory „rr standard tests“ with 38 test cases from the ccx standard test library which I further enriched through RR outputs. For none of the files ccx – enriched with your developments – should get stuck or crash.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 9, 2026, 8:34pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/31 "2026-03-09T20:34:48Z")

</div>

Thank you very much for the testing! I did not implement TOTALS yet, I wanted to verify the calculations first. I’ll try to run the test cases you provided and find out what is the problem.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 10, 2026, 9:56am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/32 "2026-03-10T09:56:15Z")

</div>

There was an error with beam10\_rr.inp, it’s size was double compared to beam10.inp. It ran without error after I fixed it.

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 10, 2026, 11:17am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/33 "2026-03-10T11:17:32Z")

</div>

I’ve implemented `TOTALS=ONLY` and `TOTALS=YES`. I’ve started to do the testing, but your test files are corrupt. Every file has its content duplicated multiple times.

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 11, 2026, 9:55am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/34 "2026-03-11T09:55:18Z")

</div>

I found one case where including RR makes it exit with no solution in the .frd file but without RR, it’s OK. It’s cyclic symmetry, but not all my cyclic symmetry models fail so I don’t know what’s special about this one.

Commit d485e4c

`** Generated by Mecway 33`  
`*NODE`  
`1,0,0,0`  
`2,0.06495190528383,0.0375,0.01`  
`3,0.1948557158515,0.0375,0.01`  
`4,0.2598076211353,0.15,0`  
`5,0.06495190528383,-0.0375,0.01`  
`6,0.2598076211353,-0.15,0`  
`7,0.1299038105677,0.075,0`  
`8,0.1299038105677,-0.075,0`  
`9,0.2598076211353,0,0`  
`10,0.06495190528383,0.0375,0`  
`11,0.06495190528383,-0.0375,0`  
`12,0.1948557158515,0.1125,0`  
`13,0.1948557158515,-0.0375,0`  
`14,0.1948557158515,-0.1125,0`  
`15,0.2598076211353,-0.075,0`  
`16,0.2598076211353,0.075,0`  
`17,0.1948557158515,0.1125,0.01`  
`18,0.2598076211353,0.075,0.01`  
`19,0.2598076211353,0,0.01`  
`20,0.1299038105677,-0.075,0.01`  
`21,0.2598076211353,-0.15,0.01`  
`22,0.1948557158515,-0.0375,0.01`  
`23,0.1948557158515,-0.1125,0.01`  
`24,0.2598076211353,-0.075,0.01`  
`25,0.1299038105677,0,0`  
`26,0.1948557158515,0.0375,0`  
`27,0,0,0.01`  
`28,0.2598076211353,0.15,0.01`  
`29,0.1299038105677,0.075,0.01`  
`30,0.1299038105677,0,0.01`  
`31,0.2273316684934,0.05625,0`  
`32,0.2273316684934,0.01875,0`  
`33,0.2598076211353,0.0375,0`  
`34,0.2598076211353,0.075,0.005`  
`35,0.1948557158515,0.0375,0.005`  
`36,0.2598076211353,0,0.005`  
`37,0.2273316684934,0.05625,0.01`  
`38,0.2273316684934,0.01875,0.01`  
`39,0.2598076211353,0.0375,0.01`  
`40,0.1623797632096,0.09375,0`  
`41,0.1623797632096,0.05625,0`  
`42,0.1948557158515,0.075,0`  
`43,0.1948557158515,0.1125,0.005`  
`44,0.1299038105677,0.075,0.005`  
`45,0.09742785792575,0.01875,0.01`  
`46,0.1623797632096,0.09375,0.01`  
`47,0.1623797632096,0.05625,0.01`  
`48,0.1948557158515,0.075,0.01`  
`49,0.09742785792575,0.05625,0`  
`50,0.2598076211353,-0.15,0.005`  
`51,0.2273316684934,0.09375,0`  
`52,0.1948557158515,0,0`  
`53,0.2273316684934,-0.13125,0.01`  
`54,0.2598076211353,-0.1125,0.01`  
`55,0.03247595264192,0.01875,0`  
`56,0.03247595264192,-0.01875,0`  
`57,0.2273316684934,0.09375,0.01`  
`58,0.2273316684934,0.13125,0`  
`59,0.06495190528383,0,0`  
`60,0.2598076211353,0.1125,0`  
`61,0.2598076211353,0.15,0.005`  
`62,0.06495190528383,0.0375,0.005`  
`63,0,0,0.005`  
`64,0.2273316684934,0.13125,0.01`  
`65,0.1299038105677,0.0375,0`  
`66,0.2598076211353,0.1125,0.01`  
`67,0.1948557158515,-0.075,0`  
`68,0.2273316684934,-0.09375,0`  
`69,0.2273316684934,-0.05625,0`  
`70,0.1948557158515,-0.0375,0.005`  
`71,0.1948557158515,-0.1125,0.005`  
`72,0.2598076211353,-0.075,0.005`  
`73,0.1948557158515,-0.075,0.01`  
`74,0.2273316684934,-0.09375,0.01`  
`75,0.2273316684934,-0.05625,0.01`  
`76,0.09742785792575,-0.01875,0`  
`77,0.09742785792575,-0.05625,0`  
`78,0.1299038105677,-0.0375,0`  
`79,0.1299038105677,0,0.005`  
`80,0.06495190528383,-0.0375,0.005`  
`81,0.1299038105677,-0.075,0.005`  
`82,0.09742785792575,-0.01875,0.01`  
`83,0.09742785792575,-0.05625,0.01`  
`84,0.1299038105677,-0.0375,0.01`  
`85,0.2273316684934,-0.01875,0`  
`86,0.03247595264192,0.01875,0.01`  
`87,0.2598076211353,-0.0375,0`  
`88,0.03247595264192,-0.01875,0.01`  
`89,0.06495190528383,0,0.01`  
`90,0.1623797632096,0.01875,0`  
`91,0.2273316684934,-0.01875,0.01`  
`92,0.1623797632096,-0.01875,0.01`  
`93,0.2598076211353,-0.0375,0.01`  
`94,0.1623797632096,-0.05625,0`  
`95,0.1623797632096,-0.09375,0`  
`96,0.09742785792575,0.01875,0`  
`97,0.1948557158515,0,0.01`  
`98,0.09742785792575,0.05625,0.01`  
`99,0.1623797632096,0.01875,0.01`  
`100,0.1623797632096,-0.05625,0.01`  
`101,0.1623797632096,-0.09375,0.01`  
`102,0.1299038105677,0.0375,0.01`  
`103,0.1623797632096,-0.01875,0`  
`104,0.2273316684934,-0.13125,0`  
`105,0.2598076211353,-0.1125,0`  
`*ELEMENT,TYPE=C3D15`  
`1,16,26,9,18,3,19,31,32,33,37,38,39,34,35,36`  
`2,12,7,26,17,29,3,40,41,42,46,47,48,43,44,35`  
`3,12,26,16,17,3,18,42,31,51,48,37,57,43,35,34`  
`4,4,12,16,28,17,18,58,51,60,64,57,66,61,43,34`  
`5,13,14,15,22,23,24,67,68,69,73,74,75,70,71,72`  
`6,25,11,8,30,5,20,76,77,78,82,83,84,79,80,81`  
`7,9,13,15,19,22,24,85,69,87,91,75,93,36,70,72`  
`8,13,8,14,22,20,23,94,95,67,100,101,73,70,81,71`  
`9,15,14,6,24,23,21,68,104,105,74,53,54,72,71,50`  
`10,10,1,11,2,27,5,55,56,59,86,88,89,62,63,80`  
`11,10,11,25,2,5,30,59,76,96,89,82,45,62,80,79`  
`12,7,10,25,29,2,30,49,96,65,98,45,102,44,62,79`  
`13,25,13,26,30,22,3,103,52,90,92,97,99,79,70,35`  
`14,26,13,9,3,22,19,52,85,32,97,91,38,35,70,36`  
`15,7,25,26,29,30,3,65,90,41,102,99,47,44,79,35`  
`16,25,8,13,30,20,22,78,94,103,84,100,92,79,81,70`  
`*ELSET,ELSET=DEFAULT`  
`1`  
`2`  
`3`  
`4`  
`5`  
`6`  
`7`  
`8`  
`9`  
`10`  
`11`  
`12`  
`13`  
`14`  
`15`  
`16`  
`*SURFACE,NAME=OUTER_EDGE`  
`1,S5`  
`7,S5`  
`4,S5`  
`*SURFACE,NAME=CYCLIC_SYMMETRY_FACES`  
`4,S3`  
`10,S3`  
`12,S3`  
`2,S3`  
`*SURFACE,NAME=CYCLIC_SYMMETRY_FACES(2)`  
`8,S4`  
`9,S4`  
`10,S4`  
`6,S4`  
`*MATERIAL,NAME=MATERIAL`  
`*ELASTIC,TYPE=ISOTROPIC`  
`200000000000,0.3`  
`*DENSITY`  
`1000`  
`*SOLID SECTION,ELSET=DEFAULT,MATERIAL=MATERIAL`  
`*BOUNDARY`  
`4,1,0`  
`4,2,0`  
`4,3,0`  
`9,1,0`  
`9,2,0`  
`9,3,0`  
`15,1,0`  
`15,2,0`  
`15,3,0`  
`16,1,0`  
`16,2,0`  
`16,3,0`  
`18,1,0`  
`18,2,0`  
`18,3,0`  
`19,1,0`  
`19,2,0`  
`19,3,0`  
`24,1,0`  
`24,2,0`  
`24,3,0`  
`28,1,0`  
`28,2,0`  
`28,3,0`  
`33,1,0`  
`33,2,0`  
`33,3,0`  
`34,1,0`  
`34,2,0`  
`34,3,0`  
`36,1,0`  
`36,2,0`  
`36,3,0`  
`39,1,0`  
`39,2,0`  
`39,3,0`  
`60,1,0`  
`60,2,0`  
`60,3,0`  
`61,1,0`  
`61,2,0`  
`61,3,0`  
`66,1,0`  
`66,2,0`  
`66,3,0`  
`72,1,0`  
`72,2,0`  
`72,3,0`  
`87,1,0`  
`87,2,0`  
`87,3,0`  
`93,1,0`  
`93,2,0`  
`93,3,0`  
`*TIE,NAME=Cyclic_1,POSITION TOLERANCE=0,CYCLIC SYMMETRY`  
`CYCLIC_SYMMETRY_FACES(2),CYCLIC_SYMMETRY_FACES`  
`*CYCLIC SYMMETRY MODEL,N=6,NGRAPH=6,TIE=Cyclic_1`  
`0,0,0,0,0,1`  
`*STEP`  
`*STATIC`  
`*CLOAD`  
`17,2,3.459631470193E-09`  
`17,3,3.459632320207E-11`  
`29,2,-5.742644026974E-09`  
`29,3,-5.742643340023E-11`  
`3,2,-5.742865738512E-09`  
`3,3,-5.742865905045E-11`  
`46,2,24.35696450125`  
`46,3,0.2435696450125`  
`47,2,24.35696446444`  
`47,3,0.2435696446444`  
`48,2,24.35696450125`  
`48,3,0.2435696450125`  
`*NODE FILE,GLOBAL=YES`  
`U,RR`  
`*END STEP`

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 11, 2026, 10:35am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/35 "2026-03-11T10:35:33Z")

</div>

Here’s another one that fails in the same kind of way even though it doesn’t request RR. It works in CCX 2.23 but it could be something else that changed in the main repo before you added RR.

`** Generated by Mecway 33`  
`*NODE`  
`1,-3,1,0`  
`2,-4,1,0`  
`3,-4,0,1`  
`4,-3,0,1`  
`5,-3,1,1`  
`6,-4,1,1`  
`7,-4,1,0`  
`8,-3,1,0`  
`9,-3,2,0`  
`10,-4,2,0`  
`11,-4,1,1`  
`12,-3,1,1`  
`13,-3,2,1`  
`14,-4,2,1`  
`15,-4,0,0`  
`16,-3,0,0`  
`*ELEMENT,TYPE=C3D4`  
`1,7,12,9,14`  
`2,7,8,9,12`  
`4,7,9,10,14`  
`5,12,13,9,14`  
`6,7,12,14,11`  
`*ELEMENT,TYPE=C3D8I`  
`3,15,16,1,2,3,4,5,6`  
`*ELSET,ELSET=DEFAULT`  
`1`  
`2`  
`3`  
`4`  
`5`  
`6`  
`*SURFACE,NAME=CONTACT_FACES(2)`  
`6,S2`  
`2,S2`  
`*SURFACE,NAME=CONTACT_FACES`  
`3,S5`  
`*MATERIAL,NAME=MATERIAL`  
`*ELASTIC,TYPE=ISOTROPIC`  
`50000000000,0`  
`*SOLID SECTION,ELSET=DEFAULT,MATERIAL=MATERIAL`  
`*BOUNDARY`  
`3,1,0`  
`3,2,0`  
`3,3,0`  
`4,1,0`  
`4,2,0`  
`4,3,0`  
`15,1,0`  
`15,2,0`  
`15,3,0`  
`16,1,0`  
`16,2,0`  
`16,3,0`  
`*CONTACT PAIR,INTERACTION=SI_1,TYPE=SURFACE TO SURFACE,ADJUST=24.49489742783`  
`CONTACT_FACES(2),CONTACT_FACES`  
`*SURFACE INTERACTION,NAME=SI_1`  
`*SURFACE BEHAVIOR,PRESSURE-OVERCLOSURE=TIED`  
`5E+13,1`  
`*FRICTION`  
`1,5E+13`  
`*STEP`  
`*STATIC`  
`*CLOAD`  
`13,2,16.66666666667`  
`9,2,33.33333333333`  
`14,2,33.33333333333`  
`10,2,16.66666666667`  
`*NODE FILE,GLOBAL=YES`  
`U`  
`*END STEP`

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 11, 2026, 12:25pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/36 "2026-03-11T12:25:26Z")

</div>

Thank you very much for the help! Before I start fixing the bugs, I want to create tests to see if the calculation is corret. I downloaded Abaqus Learning Edition and started to run models. The example cases can be run (after minor modifications) in Abaqus, the main thing to change is the `*NODE PRINT` keys, Abaqus: TF, RF; Calculix: RF, RR.

For example `beamlin.inp`:  
Calculix:

```auto
...
*node print, nset=nall
u,rr,rf
...

```

Abaqus:

```auto
...
*node print, nset=nall
u
*node print, nset=nall
rf
*node print, nset=nall
tf
...

```

The resulting .dat files:  
Calculix:

```auto
...
displacements (vx,vy,vz) for set NALL and time 0.1000000E+01

         1 0.000000E+00 0.000000E+00 1.355253E-20
         2 1.243034E-02 1.401161E-14 -6.058671E-15
         3 2.528089E-02 5.418001E-14 -2.349242E-14
         4 4.914651E-02 9.703910E-14 -4.567212E-14
         5 7.480466E-02 1.726858E-13 -9.085251E-14

 reaction forces (rfx,rfy,rfz) for set NALL and time 0.1000000E+01

         1 -5.000000E+03 -5.664959E-12 -8.602008E-12
         2 0.000000E+00 0.000000E+00 0.000000E+00
         3 0.000000E+00 0.000000E+00 0.000000E+00
         4 0.000000E+00 0.000000E+00 0.000000E+00
         5 0.000000E+00 0.000000E+00 0.000000E+00

 forces (fx,fy,fz) for set NALL and time 0.1000000E+01

         1 -5.000000E+03 -2.571121E-11 3.895106E-12
         2 -2.423295E-11 3.754330E-12 8.677503E-12
         3 -1.036824E-10 2.032034E-11 -1.432454E-11
         4 -9.301360E-11 -2.437772E-12 8.748779E-12
         5 5.000000E+03 4.345274E-12 -5.617062E-12

...

```

Abaqus:

```auto
...
 NODE FOOT- U1 U2 U3 UR1 UR2 UR3          
            NOTE
  
         1 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.0000000E+00 1.0279173E-61 1.8364682E-62 
         2 1.2500000E-02 0.0000000E+00 0.0000000E+00 -9.4341193E-51 -1.2773143E-19 -2.2957636E-20 
         3 2.5000000E-02 0.0000000E+00 0.0000000E+00 -1.8547718E-50 -2.5546285E-19 -4.5915272E-20 
         4 5.0000000E-02 0.0000000E+00 0.0000000E+00 -5.1714804E-50 -7.6638855E-19 -1.3774581E-19 
         5 7.5000000E-02 0.0000000E+00 0.0000000E+00 -5.2351434E-50 -1.2773143E-18 -2.2957636E-19 

...
 NODE FOOT- RF1 RF2 RF3 RM1 RM2 RM3          
            NOTE
  
         1 -5.0000000E+03 -1.0665653E-28 4.4172684E-28 5.6762246E-45 4.9455448E-14 -3.9712956E-13 
...
 NODE FOOT- TF1 TF2 TF3 TM1 TM2 TM3          
            NOTE
  
         1 -5.0000000E+03 -1.0665653E-28 4.4172684E-28 5.6762246E-45 4.9455448E-14 -3.9712956E-13 
         5 5.0000000E+03 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.0000000E+00 
...

```

Meaning `beamlin` produces the same results, so I update `beamlin.dat.ref` and `beamlin.inp` in the test directory.

I want to create a couple of verified test cases for different elements and add them to the `test` folder in CalculiX. After that I can go bug hunting without fear of regressions.

---

<div class="post-metadata">

**Author:** ![vicmw](https://avatars.discourse-cdn.com/v4/letter/v/6de8d8/32.png) [@vicmw](https://calculix.discourse.group/u/vicmw)\
**Post date:** [March 11, 2026, 7:08pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/37 "2026-03-11T19:08:49Z")

</div>

I think you just need one arbitrary shaped 3D case to make sure the basic calculation is correct, then a lot of special cases for MPCs, axisymmetric, output=2D/3D, shell, etc.

I tried a shell model and REFO is all zero when it shouldn’t be:

`** Generated by Mecway 33`  
`*NODE`  
`1,0.5,2.5,0`  
`2,1,2.875,0`  
`3,0,2.875,0`  
`4,0.5,0.45,0`  
`5,0,-0.5,0`  
`6,0.5,-1,0`  
`7,1,-0.5,0`  
`8,0.5,0.55,0`  
`9,1,1.75,0`  
`10,0,1.75,0`  
`11,1,0.5,0`  
`12,0,0.5,0`  
`13,0,0.45,0`  
`14,1,0.45,0`  
`15,1,4,0`  
`16,0,4,0`  
`17,1,3.25,0`  
`18,0,3.25,0`  
`19,0,-1,0`  
`20,1,-1,0`  
`21,1,0.55,0`  
`22,0,0.55,0`  
`23,1,2.5,0`  
`24,0,2.5,0`  
`25,0.5,3.25,0`  
`26,1,3.625,0`  
`27,0.5,4,0`  
`28,0,3.625,0`  
`29,0,0.45,0`  
`30,0,0.5,0`  
`31,0,0.55,0`  
`32,0.5,0.55,0`  
`33,1,0.55,0`  
`34,1,0.5,0`  
`35,1,0.45,0`  
`36,0.5,0.45,0`  
`*ELEMENT,TYPE=S8`  
`1,18,17,15,16,25,26,27,28`  
`2,24,23,17,18,1,2,25,3`  
`3,14,13,19,20,4,5,6,7`  
`4,22,21,23,24,8,9,1,10`  
`5,13,14,21,22,4,11,8,12`  
`*ELEMENT,TYPE=GAPUNI`  
`6,13,29`  
`7,12,30`  
`8,22,31`  
`9,8,32`  
`10,21,33`  
`11,11,34`  
`12,14,35`  
`13,4,36`  
`*NSET,NSET=A`  
`1`  
`23`  
`24`  
`*NSET,NSET=COMPRESSIONONLY`  
`29`  
`30`  
`31`  
`32`  
`33`  
`34`  
`35`  
`36`  
`*ELSET,ELSET=DEFAULT`  
`1`  
`2`  
`3`  
`4`  
`5`  
`*ELSET,ELSET=COMPRESSIONONLY_1`  
`6`  
`*ELSET,ELSET=COMPRESSIONONLY_2`  
`7`  
`*ELSET,ELSET=COMPRESSIONONLY_3`  
`8`  
`*ELSET,ELSET=COMPRESSIONONLY_4`  
`9`  
`*ELSET,ELSET=COMPRESSIONONLY_5`  
`10`  
`*ELSET,ELSET=COMPRESSIONONLY_6`  
`11`  
`*ELSET,ELSET=COMPRESSIONONLY_7`  
`12`  
`*ELSET,ELSET=COMPRESSIONONLY_8`  
`13`  
`*MATERIAL,NAME=MATERIAL`  
`*ELASTIC,TYPE=ISOTROPIC`  
`2000000000000,0.4`  
`*SHELL SECTION,ELSET=DEFAULT,MATERIAL=MATERIAL`  
`0.1`  
`*BOUNDARY`  
`COMPRESSIONONLY,1,0`  
`COMPRESSIONONLY,2,0`  
`COMPRESSIONONLY,3,0`  
`*BOUNDARY`  
`1,3,0`  
`13,1,0`  
`13,2,0`  
`18,1,0`  
`23,3,0`  
`24,3,0`  
`*GAP,ELSET=COMPRESSIONONLY_1`  
`0,0,0,-1,-833.3333333333,-83333333.33333`  
`*GAP,ELSET=COMPRESSIONONLY_2`  
`0,0,0,-1,3333.333333333,333333333.3333`  
`*GAP,ELSET=COMPRESSIONONLY_3`  
`0,0,0,-1,-833.3333333333,-83333333.33333`  
`*GAP,ELSET=COMPRESSIONONLY_4`  
`0,0,0,-1,3333.333333333,333333333.3333`  
`*GAP,ELSET=COMPRESSIONONLY_5`  
`0,0,0,-1,-833.3333333333,-83333333.33333`  
`*GAP,ELSET=COMPRESSIONONLY_6`  
`0,0,0,-1,3333.333333333,333333333.3333`  
`*GAP,ELSET=COMPRESSIONONLY_7`  
`0,0,0,-1,-833.3333333333,-83333333.33333`  
`*GAP,ELSET=COMPRESSIONONLY_8`  
`0,0,0,-1,3333.333333333,333333333.3333`  
`*STEP,NLGEOM=YES,INC=100`  
`*STATIC`  
`1,1,1E-06,0`  
`*CLOAD`  
`19,3,-16.66666666667`  
`6,3,-66.66666666667`  
`20,3,-16.66666666667`  
`15,3,-16.66666666667`  
`27,3,-66.66666666667`  
`16,3,-16.66666666667`  
`*NODE FILE,GLOBAL=YES`  
`U,RF`  
`*EL FILE`  
`S,NOE,E,ENER`  
`*NODE FILE`  
`RR`  
`*END STEP`

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 11, 2026, 9:06pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/38 "2026-03-11T21:06:05Z")

</div>

The .frd output is not always correct. See the output of “RF” in `beamlin.inp` using `*NODE PRINT` and `*NODE FILE`:

.dat:

```auto
forces (fx,fy,fz) for set NALL and time 0.1000000E+01

         1 -5.000000E+03 -2.571121E-11 3.895106E-12
         ...

```

.frd:

```auto
 -4 FORC 4 1
 -5 F1 1 2 1 0
 -5 F2 1 2 2 0
 -5 F3 1 2 3 0
 -5 ALL 1 2 0 0 1ALL
 -1 6 4.22427E+02-4.57996E-10 1.95671E-10 
             ...

```

We know that the reaction force at the start should be -5000, as calculated in the .dat file. But it is different in the .frd. I do not know the exact mechanism, but my assumption is that CalculiX expands the 1D beam model into a 3D body and recalculates the results at ‘virtual points’; since the reaction force is only non-zero at the original node, this calculation makes the value vanish.  
I advise you to use `*NODE PRINT` at the moment.

If this is the case, it explains the zero values for the shell, since it is also expanded, if I understand it correctly.

---

<div class="post-metadata">

**Author:** ![johanngil](https://avatars.discourse-cdn.com/v4/letter/j/779978/32.png) [@johanngil](https://calculix.discourse.group/u/johanngil)\
**Post date:** [March 12, 2026, 11:03am UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/39 "2026-03-12T11:03:10Z")

</div>

Thanks for the implementation of the TOTALS options! I am testing some standard test cases with other element types and ran the membrane tests from the ccx standard test case library: The \*NODE FILE,OUTPUT=3D does not yet seem to work for membrane elements. Below my modified version of the membrane1.inp test case from the ccx library which shows in the frd file only values of zero for the RR variable:

`**`  
`** Structure: 4 membranes.`  
`** Test objectives:`  
`** 1) M3D4 elements, *MEMBRANE SECTION`  
`** 2) OUTPUT=3D for RR variable output`  
`**`  
`**`  
`*NODE, NSET=Nall`  
`1,0.,0.,0.`  
`2,1.,0.,0.`  
`3,1.,1.,0.`  
`4,0.,1.,0.`  
`5,-1.,1.,0.`  
`6,-1.,0.,0.`  
`7,-1.,-1.,0.`  
`8,0.,-1.,0.`  
`9,1.,-1.,0.`  
`*ELEMENT, TYPE=M3D4, ELSET=Eall`  
`1,1,2,3,4`  
`2,1,4,5,6`  
`3,1,6,7,8`  
`4,1,8,9,2`  
`** outer edge where membrane is being fixed:`  
`*NSET,NSET=Nfix`  
`2,3,4,5,6,7,8,9`  
`*BOUNDARY`  
`Nfix,1,3`  
`*MATERIAL,NAME=EL`  
`*ELASTIC`  
`210000,.3`  
`*MEMBRANE SECTION,ELSET=Eall,MATERIAL=EL,OFFSET=0.`  
`0.01`  
`** +++++++++++++++++++++++++++++++++++++`  
`*STEP,NLGEOM`  
`*STATIC`  
`1.,1.,1.E-03,1.`  
`*CLOAD`  
`1,3,-1.e-3`  
`*NODE FILE,OUTPUT=3D`  
`RR,RF`  
`*NODE PRINT, NSET=NFIX, TOTALS=YES`  
`RR,RF`  
`*EL FILE`  
`S,NOE`  
`*END STEP`

---

<div class="post-metadata">

**Author:** ![gmb](https://avatars.discourse-cdn.com/v4/letter/g/edb3f5/32.png) [@gmb](https://calculix.discourse.group/u/gmb)\
**Post date:** [March 12, 2026, 12:08pm UTC](https://calculix.discourse.group/t/output-reaction-forces-only/3809/40 "2026-03-12T12:08:30Z")

</div>

Thank you for the help! Yep, something is not right with the .frd output. I’ll look into it. Could you create a list of the problematic cases?

[Previous page](https://calculix.discourse.group/t/output-reaction-forces-only/3809.md?page=1)

[Next page](https://calculix.discourse.group/t/output-reaction-forces-only/3809.md?page=3)
