📄 nomcc50fspulse.inp
字号:
loasisHe.inp{Here we make an initial attempt to model some aspects ofthe laser plasma experiments in the l'OASIS laboratory ofWim Leemans et al. at LBNL.Pulse with transverse half Sine profile and y polarization is launched fromthe left boundary. Cartesian geometry, no plasma initially, background of neutral H gas.This is derived from loasis2.inp -- here we replace H with He andfurther increase the laser intenstiy by an order of magnitude.}Variables{// General numerical parameters PI = 3.14159// **********************************************************************// General physical parameters// ********************************************************************** electronMass = 9.1094e-31 electronCharge = -1.6022e-19 permit = 8.8542e-12 speedLight = 2.9979e8 speedLight2 = speedLight*speedLight electronCharge2 = electronCharge*electronCharge qOverM = electronCharge/electronMass ionCharge = -electronCharge unitMassMKS = electronMass / 5.48579903e-04 hydrogenMassNum = 1.00797 hydrogenMass = unitMassMKS * hydrogenMassNum HeMassNum = 4.0026 HeMass = unitMassMKS * HeMassNum// **********************************************************************// Plasma parameters// **********************************************************************// Here, we have zero initial plasma density. elecPlasmaDensity = 0.0 elecPlasmaFreq = sqrt(electronCharge*qOverM*elecPlasmaDensity/permit) // **********************************************************************// Laser pulse parameters - z polarization// **********************************************************************// We are modeling a laser pulse with wavelength of 0.8 micron and// FHWM pulse length of 50 fs to 200 fs, and a peak intensity of// 10^16 to 10^18 W/cm^2//// We are using a half sine function for the longitudinal shape of// the pulse and Gaussians for the transverse directions with the// same standard deviations sigma_r, same as waistSize below. // The energy of the pulse is// fixed at 20.5 mJ. In terms of the energy of the pulse energyOfPulse,// the FHWM pulse length in [fs] pulseLengthFWHM, and the transverse // width sigma_r, the peak laser intensity is given by: //// Ipeak = (2*energyOfPulse)/(1.5*pulseLengthFWHM*PI*waistSize^2)// energyOfPulse = 20.5e-3 // [J] pulseLengthFWHM = 50.e-15 // [s] waistSize = 6.0e-06 // [m] laserWavelength = 0.8e-06 laserFrequency = 2.*PI*speedLight/laserWavelength peakElectricField = sqrt(8.*energyOfPulse/(1.5*permit*speedLight*pulseLengthFWHM*PI*waistSize*waistSize))// **********************************************************************// Grid parameters// **********************************************************************// We must resolve the laser wavelength Nx = 512 Ny = 256 numGridsPerWavelength = 16 dx = laserWavelength / numGridsPerWavelength gridSizeRatio = 16 dy = dx * gridSizeRatio Lx = Nx * dx Ly = Ny * dy d = 1. / sqrt( 1./(dx*dx) + 1./(dy*dy) ) timeStep = 0.99 * d / speedLight// **********************************************************************// More laser parameters:// **********************************************************************// We model the laser pulse envelope as a Gaussian (nPulseShape=1).// or a half sine shape (nPulseShape=2) nPulseShape = 2 pulseLength = 1.5*pulseLengthFWHM * speedLight// Here we specify Rayleigh length, etc.// These parameters are for a pulse with y-polarization. angFreq = laserFrequency angFreq2 = angFreq * angFreq waveVector = sqrt( (angFreq2-elecPlasmaFreq*elecPlasmaFreq) / speedLight2 ) rayleighLength = waistSize * waistSize * waveVector / 2. waistLocation = Lx + rayleighLength// **********************************************************************// Define gas density, pressure and other MCC parameters// ********************************************************************** gasTempEV = 1.0e-06 // make gas cold (cannot set temperature to zero) gasDensityMKS = 2.e25 // [1/m^3] gasPressureTorr = 1.20e-21 * gasDensityMKS * gasTempEV numFlatCells = 4 numRampCells = 4 numZeroCells = Nx - numFlatCells - numRampCells zeroEnd = (numZeroCells + .5) * dx rampEnd = (numZeroCells + numRampCells + .5) * dx// we need to turn off the gas jet after two Rayleigh lengths NGDSwitchOffTime = (8. * rayleighLength + Lx) / speedLight// This is the desired delay time before the moving window algorithm activates. movingWindowDelay = (Nx-15) * dx / speedLight}Region{Grid{ J = Nx x1s = 0.0 x1f = Lx n1 = 1.0 K = Ny x2s = 0.0 x2f = Ly n2 = 1.0 Geometry = 1}Control{ dt = timeStep initPoissonSolve=0// Turn on the moving window algorithm. movingWindow = 1 shiftDelayTime = movingWindowDelay// Turn off the gas jet after some time/// gasOffTime = NGDSwitchOffTime}Species{ name = electrons m = electronMass q = electronCharge particleLimit = 2.5e+05 // prevents out-of-control growth in # of ptcls}Species{ name = HePlus m = HeMass q = ionCharge particleLimit = 1.0e+05 // prevents out-of-control growth in # of ptcls}Species{ name = HePlusPlus m = HeMass q = 2*ionCharge particleLimit = 1.0e+05 // prevents out-of-control growth in # of ptcls}Diagnostic{ j1 = 0 j2 = Nx k1 = 0 k2 = Ny VarName = WaveDirDiagnostic polarizationEB = EzBy psd1dFlag = 1 // set to 1 to calculate the 1d power spectral density windowName = Blackman title = Wave Energy x1_Label = x x2_Label = y x3_Label = Wave Energy}PortGauss{ j1 = 0 k1 = 0 j2 = 0 k2 = Ny normal = 1 A = 0 C = 1.0 // Wave (0) pulShp_p0 = nPulseShape tdelay_p0 = 0.0 pulLeng_p0 = pulseLength chirp_p0 = 0.0 spotSize_p0 = waistSize waveLeng_p0 = laserWavelength focus_p0 = waistLocation amp_p0 = 0.0// Wave (1) pulShp_p1 = nPulseShape tdelay_p1 = 0.0 pulLeng_p1 = pulseLength chirp_p1 = 0.0 spotSize_p1 = waistSize waveLeng_p1 = laserWavelength focus_p1 = waistLocation amp_p1 = peakElectricField EFFlag = 0 name = PortGauss}Conductor{ j1 = 0 k1 = Ny j2 = Nx k2 = Ny normal = -1 EFFlag = 0 name = ExitPort C = 0 A = 0}Conductor{ j1 = 0 k1 = 0 j2 = Nx k2 = 0 normal = 1 EFFlag = 0 name = ExitPort C = 0 A = 0}Conductor{ j1 = Nx k1 = 0 j2 = Nx k2 = Ny normal = -1 EFFlag = 0 name = ExitPort C = 0 A = 0}}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -