User Tools

Site Tools


star_destroyers

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
star_destroyers [2014/06/06 13:39]
richers
star_destroyers [2014/06/06 14:04]
cook
Line 7: Line 7:
  
 Analysis Person - Kaitlin Cook Analysis Person - Kaitlin Cook
 +
 +
 +**Final Presentation** ​
 +
 +The final presentation may be found here, without any videos. ​
 +{{::​presentation.pdf|}}
  
  
Line 18: Line 24:
  
 **Interesting outputs**: Abundance of elements as a function of time, and after the blast, as a function of radius. It is intended that this will be displayed in video form. Another output of interest is the total energy released/​required in nucleosynthesis - is this energy significant enough to effect the hydrodynamics?​ To what extent? ​ **Interesting outputs**: Abundance of elements as a function of time, and after the blast, as a function of radius. It is intended that this will be displayed in video form. Another output of interest is the total energy released/​required in nucleosynthesis - is this energy significant enough to effect the hydrodynamics?​ To what extent? ​
- 
-------Logbook starts here ------- 
- 
-2/6/14 3pm KJC: Lane-Emden Equation: We solved this in Mathematica,​ because, well, it only takes two lines. Far more lines to actually give a good output for FORTRAN, but that's ok. The notebook may be found on the git [[https://​github.com/​KJCook/​sedov-solution/​blob/​master/​LaneEmden.nb|here]]. Output is three columns - radius (cm), density (g/cm^3) and pressure (dyn/cm^2). A sample output is in the github 
  
 **Parameters for the Lane-Emden Equation**: ​ **Parameters for the Lane-Emden Equation**: ​
Line 33: Line 35:
 **VH1 Parameters**:​ **VH1 Parameters**:​
  
-  * E_blast = 10^49 erg (all placed within innermost cell)+  * E_blast = 10^49 erg (all placed within innermost cell). Leads to a max temperature of 3 GK in zone 30/400. A full 10^51 erg explosion causes temperatures to exceed XNet's capabilities. This is because the 5/3 cold degenerate equation of state with mu=1/2 is crap in this regime. A star with radially varying composition,​ and an equation of state to reflect that, is required for additional realism.
  
-**XNet Parameters**+**Making VH1 Starter Lagrangian** 
 + 
 +ppmlr.f90 needs to be modified so that once the Lagrange step was taken, the values needed to not be put back onto the Eulerian grid. 
 +  * remove the "​wiggle"​ part of the file that adds dissipation for carbuncular noise. ​ Since this is only really a problem in higher dimension, we completely removed this for simplicity. 
 +  * Instead of defining xf=xf0 define xf0=xf (i.e. make the Eulerian coordinates move to match the Lagrangian ones) 
 +  * If the final "​remap"​ command is commented out, the code misbehaves, though we don't know why a remap should be needed. Leave the final remap in. 
 + 
 +**Units**  
 + 
 +VH1 outputs NaN's when the simulation is run in CGS units. Presumably, this is because it is programmed using floats rather than double precision numbers, and the separation in numbers results in problematic subtractive cancellation. To fix this problem, we re-defined our units of mass and radius to be those of solar mass and solar radius. The following led to successful simulations. 
 + 
 +  * M_cgs = M_sun * M_code 
 +  * R_cgs = R_sun * R_code 
 +  * rho_cgs = M_sun/​R_sun^3 * rho_code 
 +  * P_cgs = M_sun/R_sun * P_code 
 +  * T_cgs = M_sun*R_sun^2 * T_code 
 +  * E_cgs = M_sun*R_sun^2 * E_code 
 + 
 +**XNet Parameters ​and Inputs**
  
 Three separate initial conditions: Three separate initial conditions:
Line 42: Line 62:
   * pure 56Fe   * pure 56Fe
  
-2/6/14 4pm KJC: JGL Got VH1 up and running for the Sedov blast as written for the problems done last weekWe now have to combine ​the solution from the Mathematica output into the VH1 scripts. SR is working on this+To modify XNet to output 150 nuclei in the plaintext file(Instead of trying ​to read in the fortran binary files in python, which is in principle also possible.) You need to change:
  
-2/6/14 4pm JGL: Have netCDF installed correctlyand compiled serial version ​of VH1 using a modified makefile (github upload ​to follow).  ​The vh1-serial code outputs an *.nc file, also installed ncview to view this file.  ​With thiswe can view the 2D Sod tube solution via the convenient ncview program. ​ For the starter versionI added a python script written by Nathan Parzuchowski to animate ​the 1D Sedov blast solution by turning each time step data file into frame for the animation. We will probably stick with 1D solutions, since we want to do our final simulation with the Lagrangian remap which is supposedly more well behaved in 1D. The python script requires python-numpy and python-matplotlib.+  * The ''​control''​ fileyou must add in the list of all the nuclei you wish to outputRecall each should use 5 characters.  
 +  ​* ​the ''​inout''​ variable in ''​control.f90''​ 
 +  * ''​output_nuc''​ and 
 +  * ''​Read(lun_control,"​(14a5)"​) output_nuc''​ to ''​150a5'',​ 
 +  * The index in the loop on line 198, 
 +  * The write statement for ''​lun_ev''​on lines 352, 465, 473 in the file ''​net.f90''​. (Do search ​for 14 in the files)
  
-2/6/14 6pm JGL: Just added the reaction network ​code to the git repository. ​ Should be up and running for the use of 150 isotopes now.  We plan to eventually run the reaction network code for both just the alpha network as well as the 150 isotope network to compare the results. ​ We may also try other networks if we have the time.+As usual, all the code is in the github
  
-3/6/14 6pm JGL: Today JGL and SR worked on getting the Lagrange remap up and running. ​ The ppmlr.f90 needed to be modified so that once the Lagrange step was taken, the values needed to not be put back onto the Eulerian grid.  First we removed the "​wiggle"​ part of the file that adds dissipation for carbuncular noise. ​ Since this is only really a problem in higher dimension, we removed this for simplicity. ​ Next, we updated the grid using the Lagrange step, however, the code began taking extremely small time steps (on the order of 10^-7) so the simulation got nowhere. ​ However, when we put back in the final "​remap"​ call, the code seemed to start working as intended. ​ We are not entirely sure what this call does that fixes everything, but now we have ran the Sedov blast using both Eulerian and Lagrangian coordinates,​ and both achieve the same physics, but the Lagrangian coordinates resolves the sharp blast wave better. ​ The exact changes to the code can be found on our github.  ​ 
  
-**Units**  +------Logbook starts here -------
-VH1 outputs NaN's when the simulation is run in CGS units. Presumably, this is because it is programmed using floats rather than double precision numbers, and the separation in numbers results in problematic subtractive cancellation. To fix this problem, we re-defined our units of mass and radius to be those of solar mass and solar radius. The following led to successful simulations.+
  
-M_cgs = M_sun * M_code+2/6/14 3pm KJC: Lane-Emden Equation: We solved this in Mathematica,​ because, well, it only takes two lines. Far more lines to actually give a good output for FORTRAN, but that's ok. The notebook may be found on the git [[https://​github.com/​KJCook/​sedov-solution/​blob/​master/​LaneEmden.nb|here]]. Output is three columns - radius (cm), density (g/cm^3) and pressure (dyn/cm^2). A sample output is in the github
  
-R_cgs = R_sun * R_code+2/6/14 4pm KJC: JGL Got VH1 up and running for the Sedov blast as written for the problems done last week. We now have to combine the solution from the Mathematica output into the VH1 scripts. SR is working on this. 
  
-rho_cgs = M_sun/R_sun^3 ​rho_code+2/6/14 4pm JGL: Have netCDF installed correctly, and compiled serial version of VH1 using a modified makefile (github upload to follow). ​ The vh1-serial code outputs an *.nc file, also installed ncview to view this file.  With this, we can view the 2D Sod tube solution via the convenient ncview program. ​ For the starter version, I added a python script written by Nathan Parzuchowski to animate the 1D Sedov blast solution by turning each time step data file into a frame for the animation. We will probably stick with 1D solutions, since we want to do our final simulation with the Lagrangian remap which is supposedly more well behaved in 1D. The python script requires python-numpy and python-matplotlib.
  
-P_cgs = M_sun/R_sun * P_code +2/6/14 6pm JGL: Just added the reaction network code to the git repository. ​ Should be up and running for the use of 150 isotopes now.  We plan to eventually run the reaction network code for both just the alpha network as well as the 150 isotope network to compare the results. ​ We may also try other networks if we have the time.
- +
-T_cgs = M_sun*R_sun^* T_code +
- +
-E_cgs = M_sun*R_sun^2 * E_code+
  
 +3/6/14 6pm JGL: Today JGL and SR worked on getting the Lagrange remap up and running. ​ The ppmlr.f90 needed to be modified so that once the Lagrange step was taken, the values needed to not be put back onto the Eulerian grid.  First we removed the "​wiggle"​ part of the file that adds dissipation for carbuncular noise. ​ Since this is only really a problem in higher dimension, we removed this for simplicity. ​ Next, we updated the grid using the Lagrange step, however, the code began taking extremely small time steps (on the order of 10^-7) so the simulation got nowhere. ​ However, when we put back in the final "​remap"​ call, the code seemed to start working as intended. ​ We are not entirely sure what this call does that fixes everything, but now we have ran the Sedov blast using both Eulerian and Lagrangian coordinates,​ and both achieve the same physics, but the Lagrangian coordinates resolves the sharp blast wave better. ​ The exact changes to the code can be found on our github.  ​
  
 5/6/2014: KJC: Implemented a python script for plotting nucleosynthesis on a chart of the isotopes from XNet output. Animation requires animation.FuncAnimation(),​ a function that proved rather non-trivial to implement. If you want to do this, make sure your first timestep doesn'​t have identical values. No idea why this matters, but hey. Code is on the github and is called ''​plotchart.py''​. Here's a screen shot of the animation. We need to write out more isotopes from XNet before this will look really interesting. 5/6/2014: KJC: Implemented a python script for plotting nucleosynthesis on a chart of the isotopes from XNet output. Animation requires animation.FuncAnimation(),​ a function that proved rather non-trivial to implement. If you want to do this, make sure your first timestep doesn'​t have identical values. No idea why this matters, but hey. Code is on the github and is called ''​plotchart.py''​. Here's a screen shot of the animation. We need to write out more isotopes from XNet before this will look really interesting.
Line 70: Line 90:
  ​{{::​screen_shot_2014-06-03_at_6.20.49_pm.png?​200|}}  ​{{::​screen_shot_2014-06-03_at_6.20.49_pm.png?​200|}}
  
-KJC: Modified XNet to output 150 nuclei in the plaintext file. (Instead of trying to read in the fortran binary files in python, which is in principle also possible.) You need to change: 
- 
-The ''​control''​ file, you must add in the list of all the nuclei you wish to output. Recall each should use 5 characters. ​ 
- 
-Also, change the ''​inout''​ variable in ''​control.f90''​. ​ 
- 
-You also need to change: 
- 
-''​output_nuc''​ and 
- 
-''​Read(lun_control,"​(14a5)"​) output_nuc''​ to ''​150a5'',​ 
- 
-The index in the loop on line 198, 
- 
-The write statement for ''​lun_ev''​on lines 352, 465, 473.  
- 
-in the file ''​net.f90''​. (Do a search for 14 in the files). ​ 
- 
-As usual, all the code is in the github. ​ 
  
 Modified ''​plotchart.py''​ to allow as many isotopes to be plotted as are in the network you're interested in. The script now outputs an ''​.mp4''​ file for display. ​ Modified ''​plotchart.py''​ to allow as many isotopes to be plotted as are in the network you're interested in. The script now outputs an ''​.mp4''​ file for display. ​
star_destroyers.txt · Last modified: 2014/06/06 14:04 by cook