FORTRAN-Routine zur Führung des Laserstrahls bei der Bestrahlung von Flachzugproben (Tophat-Mode) ** *USER SUBROUTINES SUBROUTINE DFLUX(FLUX,SOL,KSTEP,KINC,TIME,NOEL,NPT,COORDS, 1 JLTYP,TEMP,PRESS,SNAME) C INCLUDE 'ABA_PARAM.INC' C DIMENSION COORDS(3),FLUX(2),TIME(2) CHARACTER*80 SNAME C KSTEP=1 JLTYP=0 SNAME='Blank' C C Definition der Kreiszahl pi pi=3.1416 C Geometrische Definition C Startpunkt xL=-95.0 yL=0.0 C Definition des Gaussradius rL=20 C Definition der Laserleistung PL=3000000 C Definition der Vorschubgeschwindigkeit des Lasers vL=40 C Absorptionskoeffizient A=0.9 C Effektive Laserleistung PE=PL*A C Auf die Zugprobe eingebrachte Energiemenge bezogen auf den Gaussradius E=PE/(rL**2*pi) C lineare Bewegung in x-Richtung xL=xL+vL*TIME(1) C C Erzeugung des Profils mit dazwischengeschalteter Blende bei TEM00-Mode C Idee: - Berechnung de Abstandes zwischen momentanen Punkt und der y-Achse C - Nach Unterscheidung, ob Abstand kleiner oder größer null ist: C - Berechnung der Schlitzfunktion, dem Abstand zwischen momentanem C Punkt und y-Achse, dem Abstand zwischen momentanem Punkt und C Nullpunkt C - Sind im folgenden die Bedingungen erfuellt, so soll Energie C eingebracht werden Abstand1=COORDS(1)-xL IF (Abstand1 < 0) then Schlitzfunktion1=-5 a=COORDS(1)-xL r=sqrt((COORDS(1)-xL)**2+(COORDS(2)-yL)**2) if (Schlitzfunktion1 < a .AND. rL>=r) then FLUX(1)=E else if (Schlitzfunktion1 > a1 .AND. rL 0) then Schlitzfunktion2=+5 a=COORDS(1)-xL r=sqrt((COORDS(1)-xL)**2+(COORDS(2)-yL)**2) if (Schlitzfunktion2 > a .AND. rL>=r) then FLUX(1)=E else if (Schlitzfunktion2 < a .AND. rL