# spheresProblem.frink

// This solves for the temperature of a rotating sphere in space receiving
// energy from the sun.
use systemSolver2.frink
symbolicMode[true]

ball = new System[[Pout === area eSubst sigma Tsphere^4,
Puniv === area eUniverse sigma Tuniv^4,
Tuniv === 2.725 K,
eUniverse === 1,
collectingArea === pi r^2,
Pfromsun === (Psun / (4 pi dsun^2)) collectingArea,
Psun === sunpower,
Pout === Puniv + Pfromsun,
1 === eSubst + rSubst + aSubst,
area === 4 pi r^2],
["sigma", "pi", "sunpower", "K"]]

println[join["\n",ball.solveAll[true]]]

println["\nSolving for silver outside:"]
args = [["rSubst", 9/10], ["aSubst", 0], ["dsun", sundist]]
results = ball.solveForValues["Tsphere", args, false]
println[join["\n",array[results]]]
println["\nEvaluated:"]
println[join["\n",eval[array[results]]]]

println["\nSolving for glass outside:"]
args = [["rSubst", .04], ["aSubst", 0.02], ["dsun", sundist]]
results = ball.solveForValues["Tsphere", args, false]
println[join["\n",array[results]]]
println["\nEvaluated:"]
println[join["\n",eval[array[results]]]]

println["\nSolving for earth:"]
args = [["rSubst", .30], ["eSubst", 0.612], ["dsun", sundist]]
results = ball.solveForValues["Tsphere", args, false]
println[join["\n",array[results]]]
println["\nEvaluated:"]
println[join["\n",eval[array[results]]]]

This is a program written in the programming language Frink.
For more information, view the Frink Documentation or see More Sample Frink Programs.

Alan Eliasen was born 18663 days, 2 hours, 11 minutes ago.