<?php
/*
Dusty Plasma Collapse
© Charles Chandler
http://qdl.scs-inc.us/?top=15107
*/
/*
To find the time to implosion for a dusty plasma, I have to accelerate all
of that mass. But some of it comes from the outer reaches, and some of it
travels much less distance. I guess I could just calculate the time it takes
for the outer 1/10 to collapse.
It would be more accurate if I used the actual mass of the dusty plasma
(i.e., the same as that of the Sun). Knowing the volume of the dusty plasma,
I can find the mass per 10 cubic meters, and assign all of that mass to a
point source, assuming that it's all packed into a Debye cell at the center.
Then I can calculate the gravity between that point source, and all of the
others, in an HCP closest packed arrangement of 57 of them. Knowing the
gravitational body force, I can scale the gravity and the electric force
that I got in previous calcs, which didn't use realistic amount of matter,
but which did yield the correct proportions of the forces, given the degree
of ionization.
*/
function SciNotToFloat($str) {
$str = str_replace('−', '-', $str);
$str = str_replace(' × 10<sup>', 'e', $str);
$str = StripOneTailer($str, '</sup>');
return $str;
}
define('neutralsPerIon', pow(10, 14)); // degree of ionization
$nucMass = 150 * neutralsPerIon * p;
$totalDistance = RadiusOfSphere(5.9460543541638e48);
$stepDistance = $totalDistance / 100;
$debyeCellMass = 3.345243554e-19; // kg/m^3
$outputRows = Row('
<th>meters</th>
<th>N<sub>E</sub></th>
<th>N<sub>G</sub></th>
<th>N/kg</th>
<th>sec</th>
<th>m/s</th>
');
$v = 0;
$forcesPerSpacingPg = GetPageByID(13885);
$tmp = array_reverse(TableToArray($forcesPerSpacingPg->contents));
foreach($tmp as $row) {
if (is_numeric($row[0])) {
$d = $row[0]; // center-to-center spacing (in meters, from 0 to 10)
$e = SciNotToFloat($row[1]); // electric force
$g = SciNotToFloat($row[2]); // gravity
$a = ($e + $g) / $nucMass; // acceleration = force divided by the mass
$t = sqrt(($stepDistance / $t) / (.5 * $a));
$v = $v + ($a * $t);
if ($d >= 1) $outputRows .= Row(
Cell(1, $d, 'center').
Cell(1, nbsp(1).ScientificNotation($e, 2).nbsp(1)).
Cell(1, nbsp(1).ScientificNotation($g, 2).nbsp(1)).
Cell(1, nbsp(1).ScientificNotation($a, 2).nbsp(1)).
Cell(1, nbsp(1).ScientificNotation($t, 2).nbsp(1)).
Cell(1, nbsp(1).ScientificNotation($v, 2).nbsp(1))
);
}
}
if (1) echo Table($outputRows, 'standard');
// http://www.dummies.com/how-to/content/how-to-calculate-time-and-distance-from-accelerati.html
// d = .5 * a * t^2
// t = sqrt(d / (.5 * a))
// a = f / m
?>
|