OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
i7lin3.F File Reference
#include "implicit_f.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine i7lin3 (xi, yi, zi, xa, ya, za, xb, yb, zb, nx, ny, nz, p, alp)

Function/Subroutine Documentation

◆ i7lin3()

subroutine i7lin3 ( xi,
yi,
zi,
xa,
ya,
za,
xb,
yb,
zb,
nx,
ny,
nz,
p,
alp )

Definition at line 28 of file i7lin3.F.

29C-----------------------------------------------
30C I m p l i c i t T y p e s
31C-----------------------------------------------
32#include "implicit_f.inc"
33C-----------------------------------------------
34C D u m m y A r g u m e n t s
35C-----------------------------------------------
36C REAL
38 . xi,yi,zi,xa,ya,za,xb,yb,zb,nx,ny,nz,p,alp
39C-----------------------------------------------
40C L o c a l V a r i a b l e s
41C-----------------------------------------------
42C REAL
44 . xab,yab,zab,
45 . xp,yp,zp,norm
46C
47 xab = xb - xa
48 yab = yb - ya
49 zab = zb - za
50C
51 alp = (xi-xa)*xab + (yi-ya)*yab + (zi-za)*zab
52 norm = max(em20, xab**2 + yab**2 + zab**2)
53 alp = alp / norm
54 alp = max(zero,alp)
55 alp = min(one,alp)
56C
57 xp = xa + alp*xab
58 yp = ya + alp*yab
59 zp = za + alp*zab
60C
61 nx = xi -xp
62 ny = yi -yp
63 nz = zi -zp
64C
65 p = sqrt(nx**2 + ny**2 +nz**2)
66 norm = max(em20,p)
67C
68 nx = nx / norm
69 ny = ny / norm
70 nz = nz / norm
71C
72 RETURN
#define my_real
Definition cppsort.cpp:32
norm(diag(diag(diag(inv(mat))) -id.SOL), 2) % destroy mumps instance id.JOB
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21