wiki:u/bliu/Alcooling

Version 2 (modified by Baowei Liu, 8 years ago) ( diff )

Aluminum Cooling

Temperature range - K
electron number Density range - in cgs
number density range - in cgs
BC extrapolate

Parameters in 2D problem.data

Grid Temperature 1.5E2 K
Wind Temperature 1.5E5 K
Ambient Temperature 1.5E7 K

Frame 12 @x=1.1 in 2D results with parameters above

Post shock temperature 151279 K or 10.085 c.u.
Post shock density 1.15E17 1/cc or 1.15 c.u.
GetTableValue (x1=1.11515, x2=16.994) 1.028642200642d-20
CoolingScale 0.482570694228709390E+23
AlCoolingStrength (6/7)*(1/7)*rho2*1.028642200642d-20*0.482570694228709390E+23=69.9 c.u.
Average Energy 11821.1 c.u.
Cooling Time 169.11 c.u.
Max Vy 18.52 c.u.
Cooling Length 2624.66 c.u.
i1(1,0)=(1.11515-0)/0.1+1=12
i1(2,0)=(17-16)/1+1=2
i1(1,1)=13
i1(2,1)=3
l=0
Do i=0,4
  Do j=1,2
     l(1)=mod(0/2^0,2)=0
     l(2)=mod()=0
    values(0,0,0)=table%data(i1(1,0)),i1(2,0),i1(3,0))
                          =table%data(12,2,0)=1.028642200642d-20
      ne = (6d0/7d0)*q(1)*nScale  ! number densities based on Z = 6
      nAl = (1d0/7d0)*q(1)*nScale
      logne = LOG10(ne)
      Temp = Temp/1.16045d4       ! K to eV
      logtemp = LOG10(Temp)
     AlCoolingStrength=ne*nAl*GetTableValue(AlTab, (/logtemp, logne/))/(nScale**2d0)
      AlCoolingStrength=AlCoolingStrength*ScaleCool
      ix(1:dim)=(x(1:dim)-table%xmin(1:dim))/table%dx(1:dim)+1d0
      !Goal is to build coefficients for (a1*x+b1)(a2*x+b2)...(an*x+b2)
      !or to successively to linear interpolation of data points...

      i1=1
      i1(1:dim,0)=min(max(floor(ix(1:dim)), 1), table%nPoints(1:dim)-1)
      i1(1:dim,1)=i1(1:dim,0)+1 !max(min(ceiling(ix(1:dim)), table%npoints(1:dim)), i1(1:dim,0)+1)
      l=0
      DO i=0,2**dim
         DO j=1,dim
            l(j)=mod(i/2**(j-1),2)
         END DO
         values(l(1),l(2),l(3))=table%data(i1(1,l(1)),i1(2,l(2)),i1(3,l(3)))
      END DO
      DO k=dim,1,-1 !do z on 4 points, y on 2 points, x on 1 point
         DO i=0,2**(k-1)-1
            l=0
            DO j=1,k-1
               l(j)=mod(i/2**(j-1),2)
            END DO
            l(k)=0
            m=l
            m(k)=1
            CALL interp(values(l(1),l(2),l(3)),values(m(1),m(2),m(3)), ix(k)-REAL(i1(k,0)), table%bc(k,:)) !replaces 1st value with interpolated value
         END DO
      END DO
      GetTableValueArray=values(0,0,0)
  1. Updated to the new form
  1. Original Cooling Table
0d0 2d0 1d-1 16d0 19d0 1d0 1 1
9.5013460857276d-21 9.452949522506d-22 8.2247033959d-23 7.816645303572d-24
1.880126789552d-20 2.383444755056d-21 2.1863738552096d-22 1.7507272234946d-23
2.33804509917d-20 3.60591383635d-21 4.704545192328d-22 4.099141290076d-23
4.040940257088d-20 5.685016012453d-21 6.956451960545d-22 7.798493275244d-23
1.5556940669088d-20 5.474266076639d-21 1.0478264664546d-21 1.1746353664656d-22
2.7098495276281d-21 1.4346129044304d-21 8.019099665396d-22 1.6389276429656d-22
6.252357428359d-22 3.557024783101d-22 2.8188636111456d-22 1.3623718647462d-22
1.9927303071d-22 1.1807499686052d-22 1.0289658697416d-22 7.129151345264d-23
8.531070138368d-23 5.386946917198d-23 4.871510796939d-23 3.873437631258d-23
8.53258939671d-23 7.949898535722d-23 7.62189248437d-23 5.223399320165d-23
5.801904750093d-22 1.0513297958832d-21 9.667645791854d-22 3.570565232044d-22
7.09672745925d-21 1.028642200642d-20 7.707712486531d-21 2.030515975311d-21
3.1222912043725d-20 3.438183443793d-20 2.5489688126791d-20 6.371784696976d-21
8.7152142903d-20 8.728794090588d-20 5.91507595616d-20 1.3956125144832d-20
1.812743479808d-19 1.6886600316919d-19 1.0236362150679d-19 2.2102807566645d-20
2.9830084425126d-19 2.6880719552326d-19 1.3382971945944d-19 2.4675590299233d-20
4.3075068682608d-19 3.4364315479333d-19 1.2058713101736d-19 2.0951549263728d-20
5.0458575060733d-19 3.0502142941424d-19 8.6011375813842d-20 1.9502579927838d-20
4.8549660579714d-19 2.4183313538395d-19 6.7458189069d-20 2.118855768717d-20
3.641803190773d-19 1.741573040681d-19 5.0134084958848d-20 2.19771341513d-20
2.038953583702d-19 1.046903674496d-19 3.661435334144d-20 1.982087435244d-20

Dimension low_logT high_logT d_logT l_bc r_bc low_logRho high_logRho d_logRho l_bc r_bc

lambda(rho,T) …

2
0d0 2d0 1d-1 1 1 
16d0 19d0 1d0 1 1
9.5013460857276d-21
9.452949522506d-22
8.2247033959d-23
7.816645303572d-24
1.880126789552d-20
2.383444755056d-21
2.1863738552096d-22
1.7507272234946d-23
2.33804509917d-20
3.60591383635d-21
4.704545192328d-22
4.099141290076d-23
4.040940257088d-20
...
Note: See TracWiki for help on using the wiki.