Christopher Strevens
2013-02-09 14:09:04 UTC
'This a basic language algorithm to generate the best combination for
generating power from thermonuclear fusion.
'small cosmetic changes have been made, The reactor is an oscillator
taking power from nuclear fusion.
'Program to find the inductance of a multilayer coil by summing the
inductance of each layer and the effect of mutual inductance
'Inductance = 4.piE-7.A.n^2/l
'to find the final diameter of a multilayer coil and the length of wire
'each layer adds thickness to layer so first work out turns per layer
[Start]
let Pi=3.14215926
'for room temp
Let ResistivityOfCopper=1.68E-8
Let DensityOfCopper=8.94E3
'Kg per m^3
'for superconductor
'Let ResistovityOfCopper=0
'for LN temp
'Let ResistivityOfCopper=2.647E-9
Let mu=4E-7*Pi
Let e0=8.85E-12
[InductanceLoop]
input "diameter of wire in mm " ; DiameterOfWire
Input "Diameter Of Lumen mm "; DiameterOfLumen
input "Thickness of Insulation mm ";ThicknessOfInsulation
input "diameter of former in mm ";DiameterOfFormer
input "length of former in mm " ;LengthOfFormer
'Input "Resonant Frequency Hz ";ResonantFrequency
let DiameterOfWire=DiameterOfWire/1000
Let DiameterOfLumen=DiameterOfLumen/1000
Let ThicknessOfInsulation=ThicknessOfInsulation/1000
Let DiameterOfFormer=DiameterOfFormer/1000
Let LengthOfFormer=LengthOfFormer/1000
[TurnsLoop]
input "number of turns "; NumberOfTurns
let
TurnsPerLayer=LengthOfFormer/(DiameterOfWire+2*ThicknessOfInsulation)
let NumberOfLayers=NumberOfTurns/TurnsPerLayer
Let
ThicknessOfWinding=NumberOfLayers*(DiameterOfWire+2*ThicknessOfInsulatio
n)
Let DiameterOfWinding=DiameterOfFormer+2*ThicknessOfWinding
'length of wire for each layer is the layer diameter multiplied by Pi
LayerN=0
LengthOfWire=0
Let TotalInductance=0
Let TotalCapacitance=0
[ForLoop]
LayerN=LayerN+1
Let
LayerDiameter=DiameterOfFormer+(LayerN-1)*(DiameterOfWire+2*ThicknessOfI
nsulation)
Let LengthOfWire=Pi*LayerDiameter*TurnsPerLayer+LengthOfWire
let
LayerInductance=mu*Pi*((LayerDiameter/2)^2)*TurnsPerLayer^2/LengthOfForm
er
Let
LayerCapacitance=e0*Pi*LayerDiameter*((DiameterOfWire+2*ThicknessOfInsul
ation)/(DiameterOfWire+2*ThicknessOfInsulation))*TurnsPerLayer
Let
InterLayerCapacitance=e0*Pi*LayerDiameter*LengthOfFormer/(DiameterOfWire
+2*ThicknessOfInsulation)
Let TotalInductance=LayerInductance+TotalInductance
Let
TotalCapacitance=LayerCapacitance+InterlayerCapacitance+TotalCapacitance
if LayerN<NumberOfLayers then goto [ForLoop]
Let
ResistanceOfCoil=ResistivityOfCopper*LengthOfWire/(((DiameterOfWire/2)^2
)-((DiameterOfLumen/2)^2))*Pi
Let TotalInductance=TotalInductance*NumberOfLayers^2
Print "Turns per layer ";TurnsPerLayer
Print "Number of Layers ";NumberOfLayers
Print "Diameter of coil ";DiameterOfWinding
Print "Length of Wire ";LengthOfWire; " Meters"
Print "Resistance of Coil "; ResistanceOfCoil ; " Ohms"
Print "Inductance of Multilayer Coil ";TotalInductance;" Henry"
Print "Capacitance of Mutilayer Coil ";TotalCapacitance*1E6; "
microfarads"
'input "1=exit 2=InductanceLoop ";OK
'if OK=2 then goto [InductanceLoop]
'to calculate dynamic impedance
'dynamic impedance is L/Cr where r is the resitance of the coil.
[ResonanceLoop]
'input "Resonant Frequency Hz "; ResonantFrequency
input "capacitance of external capacitor "; ExternalCapacitance
Let Capacitance=TotalCapacitance+ExternalCapacitance
'input "Capacitance (F) "; Capacitance
let impedance = TotalInductance/(Capacitance*ResistanceOfCoil)
print "dynamic impedance "; impedance
'print "dynamic impedance - Infinite"
'program to calculate resonant frequency
'f=1/(2.pi.sqr(l.c))
'input "Inductance of coil "; Inductance
let ResonantFrequency=1/(2*Pi*(sqr(TotalInductance*Capacitance)))
print "Resonant frequency is "; ResonantFrequency
input "1 for exit 2 for loop for another capacitance "; ok
if ok=2 then goto [ResonanceLoop]
input "1 for exit 2 for new inductance ";ok
if ok=2 then goto [TurnsLoop]
'to calculate Q from Q= 2.Pi.f.L/R
Let Q=2*Pi*ResonantFrequency*TotalInductance/ResistanceOfCoil
Print "Q " ;Q
'Print "Q infinite"
'to calculate the total mass of copper in the winding Area times lengh
times density
let
TotalWindingMass=Pi*(((DiameterOfWire/2)^2)-((DiameterOfLumen/2)^2))*Len
gthOfWire*DensityOfCopper
Print "Winding Mass ";TotalWindingMass;" Kg"
[PotentialLoop]
Input "Rms Potential ";RmsPotential
'to calculate slow wave
Print "Half Wavelength "; LengthOfFormer/2
Print "Velocity "; LengthOfFormer*ResonantFrequency
Print "Peak Potential "; 1.4*RmsPotential
Let
PeakCurrent=1.4*RmsPotential/(TotalInductance*2*Pi*ResonantFrequency+Res
istanceOfCoil)
Print "Peak Current ";PeakCurrent
Let PeakAmpereTurns=PeakCurrent*NumberOfTurns
Let PeakAmpereTurnsPerMeter=PeakAmpereTurns/(LengthOfFormer/3)
Print "Peak Ampere Turns "; PeakAmpereTurns
Print "Plasma Current "; PeakAmpereTurns
Let PlasmaCurrentDensity=PeakAmpereTurns/((1.5E-3)*LengthOfFormer/3)
Print "Plasma Current Density ";3*PlasmaCurrentDensity; " Amp per
meter^2, near centre"
Let PressureOnPlasma=
((3*PlasmaCurrentDensity*PeakAmpereTurnsPerMeter)*mu)/((DiameterOfFormer
-(6E-3))/2)
Print "Additional Pressure of Plasma ";PressureOnPlasma; " Pa"
Print "Power lost through resistance ";
ResistanceOfCoil*((PeakCurrent^2)/1.4); " Watt"
'Power = 0.5 watt/m^3/kPa^2 10torr=133 Pa
Let
PowerGenerated=0.5*(LengthOfFormer/3)*3^2*2*Pi*((133+PressureOnPlasma)/1
000)^2
Print "Power Generated ";PowerGenerated;" Watt"
input "1 exit 2 loop "; ok
if ok=2 then goto [PotentialLoop]
input "1 exit 2 again " ;ok
if ok=2 then goto [Start]
End
Dr Chris
http://www.cs003o327.webspace.virginmedia.com/
generating power from thermonuclear fusion.
'small cosmetic changes have been made, The reactor is an oscillator
taking power from nuclear fusion.
'Program to find the inductance of a multilayer coil by summing the
inductance of each layer and the effect of mutual inductance
'Inductance = 4.piE-7.A.n^2/l
'to find the final diameter of a multilayer coil and the length of wire
'each layer adds thickness to layer so first work out turns per layer
[Start]
let Pi=3.14215926
'for room temp
Let ResistivityOfCopper=1.68E-8
Let DensityOfCopper=8.94E3
'Kg per m^3
'for superconductor
'Let ResistovityOfCopper=0
'for LN temp
'Let ResistivityOfCopper=2.647E-9
Let mu=4E-7*Pi
Let e0=8.85E-12
[InductanceLoop]
input "diameter of wire in mm " ; DiameterOfWire
Input "Diameter Of Lumen mm "; DiameterOfLumen
input "Thickness of Insulation mm ";ThicknessOfInsulation
input "diameter of former in mm ";DiameterOfFormer
input "length of former in mm " ;LengthOfFormer
'Input "Resonant Frequency Hz ";ResonantFrequency
let DiameterOfWire=DiameterOfWire/1000
Let DiameterOfLumen=DiameterOfLumen/1000
Let ThicknessOfInsulation=ThicknessOfInsulation/1000
Let DiameterOfFormer=DiameterOfFormer/1000
Let LengthOfFormer=LengthOfFormer/1000
[TurnsLoop]
input "number of turns "; NumberOfTurns
let
TurnsPerLayer=LengthOfFormer/(DiameterOfWire+2*ThicknessOfInsulation)
let NumberOfLayers=NumberOfTurns/TurnsPerLayer
Let
ThicknessOfWinding=NumberOfLayers*(DiameterOfWire+2*ThicknessOfInsulatio
n)
Let DiameterOfWinding=DiameterOfFormer+2*ThicknessOfWinding
'length of wire for each layer is the layer diameter multiplied by Pi
LayerN=0
LengthOfWire=0
Let TotalInductance=0
Let TotalCapacitance=0
[ForLoop]
LayerN=LayerN+1
Let
LayerDiameter=DiameterOfFormer+(LayerN-1)*(DiameterOfWire+2*ThicknessOfI
nsulation)
Let LengthOfWire=Pi*LayerDiameter*TurnsPerLayer+LengthOfWire
let
LayerInductance=mu*Pi*((LayerDiameter/2)^2)*TurnsPerLayer^2/LengthOfForm
er
Let
LayerCapacitance=e0*Pi*LayerDiameter*((DiameterOfWire+2*ThicknessOfInsul
ation)/(DiameterOfWire+2*ThicknessOfInsulation))*TurnsPerLayer
Let
InterLayerCapacitance=e0*Pi*LayerDiameter*LengthOfFormer/(DiameterOfWire
+2*ThicknessOfInsulation)
Let TotalInductance=LayerInductance+TotalInductance
Let
TotalCapacitance=LayerCapacitance+InterlayerCapacitance+TotalCapacitance
if LayerN<NumberOfLayers then goto [ForLoop]
Let
ResistanceOfCoil=ResistivityOfCopper*LengthOfWire/(((DiameterOfWire/2)^2
)-((DiameterOfLumen/2)^2))*Pi
Let TotalInductance=TotalInductance*NumberOfLayers^2
Print "Turns per layer ";TurnsPerLayer
Print "Number of Layers ";NumberOfLayers
Print "Diameter of coil ";DiameterOfWinding
Print "Length of Wire ";LengthOfWire; " Meters"
Print "Resistance of Coil "; ResistanceOfCoil ; " Ohms"
Print "Inductance of Multilayer Coil ";TotalInductance;" Henry"
Print "Capacitance of Mutilayer Coil ";TotalCapacitance*1E6; "
microfarads"
'input "1=exit 2=InductanceLoop ";OK
'if OK=2 then goto [InductanceLoop]
'to calculate dynamic impedance
'dynamic impedance is L/Cr where r is the resitance of the coil.
[ResonanceLoop]
'input "Resonant Frequency Hz "; ResonantFrequency
input "capacitance of external capacitor "; ExternalCapacitance
Let Capacitance=TotalCapacitance+ExternalCapacitance
'input "Capacitance (F) "; Capacitance
let impedance = TotalInductance/(Capacitance*ResistanceOfCoil)
print "dynamic impedance "; impedance
'print "dynamic impedance - Infinite"
'program to calculate resonant frequency
'f=1/(2.pi.sqr(l.c))
'input "Inductance of coil "; Inductance
let ResonantFrequency=1/(2*Pi*(sqr(TotalInductance*Capacitance)))
print "Resonant frequency is "; ResonantFrequency
input "1 for exit 2 for loop for another capacitance "; ok
if ok=2 then goto [ResonanceLoop]
input "1 for exit 2 for new inductance ";ok
if ok=2 then goto [TurnsLoop]
'to calculate Q from Q= 2.Pi.f.L/R
Let Q=2*Pi*ResonantFrequency*TotalInductance/ResistanceOfCoil
Print "Q " ;Q
'Print "Q infinite"
'to calculate the total mass of copper in the winding Area times lengh
times density
let
TotalWindingMass=Pi*(((DiameterOfWire/2)^2)-((DiameterOfLumen/2)^2))*Len
gthOfWire*DensityOfCopper
Print "Winding Mass ";TotalWindingMass;" Kg"
[PotentialLoop]
Input "Rms Potential ";RmsPotential
'to calculate slow wave
Print "Half Wavelength "; LengthOfFormer/2
Print "Velocity "; LengthOfFormer*ResonantFrequency
Print "Peak Potential "; 1.4*RmsPotential
Let
PeakCurrent=1.4*RmsPotential/(TotalInductance*2*Pi*ResonantFrequency+Res
istanceOfCoil)
Print "Peak Current ";PeakCurrent
Let PeakAmpereTurns=PeakCurrent*NumberOfTurns
Let PeakAmpereTurnsPerMeter=PeakAmpereTurns/(LengthOfFormer/3)
Print "Peak Ampere Turns "; PeakAmpereTurns
Print "Plasma Current "; PeakAmpereTurns
Let PlasmaCurrentDensity=PeakAmpereTurns/((1.5E-3)*LengthOfFormer/3)
Print "Plasma Current Density ";3*PlasmaCurrentDensity; " Amp per
meter^2, near centre"
Let PressureOnPlasma=
((3*PlasmaCurrentDensity*PeakAmpereTurnsPerMeter)*mu)/((DiameterOfFormer
-(6E-3))/2)
Print "Additional Pressure of Plasma ";PressureOnPlasma; " Pa"
Print "Power lost through resistance ";
ResistanceOfCoil*((PeakCurrent^2)/1.4); " Watt"
'Power = 0.5 watt/m^3/kPa^2 10torr=133 Pa
Let
PowerGenerated=0.5*(LengthOfFormer/3)*3^2*2*Pi*((133+PressureOnPlasma)/1
000)^2
Print "Power Generated ";PowerGenerated;" Watt"
input "1 exit 2 loop "; ok
if ok=2 then goto [PotentialLoop]
input "1 exit 2 again " ;ok
if ok=2 then goto [Start]
End
Dr Chris
http://www.cs003o327.webspace.virginmedia.com/