This is the entire module that contains all code to output with a Print[Grid[data, rules]]
statement. I have all cells arranged in stacked rows in a convenient data = {{...,rules},...}
variable. Most style rules are placed inside the grid however some style rules (//TraditionalForm
) reside in data elements.
Questions: (1) Why aren't cell contents aligning along the vertical (especially left column INPUT
and OUTPUT
)? (2) How to remove all styles inside data contents and move them to Grid[data{{...},..}}, all rules go here]
. (3) How to repair spacing of cells. Goal for this is a spacing of 1em around all contents of all cells.
navy := RGBColor[0, 0, 0.5,
1] (* navy is a slightly darker DarkBlue *)
lime := RGBColor[.2, 1, .2, 1](* slightly darker Lime *)
cauchy[ic_ : (u[0, x] == Exp[-x] Sin[x]^2), bc_ : (u[t, 0] == 0),
domt_ : {0, 3}, domx_ : {0, 3}, range_ : Automatic] :=
Module[{eqn, sol, ver, data, reg},
eqn = (D[u[t, x], t] + D[u[t, x], x] == 0);
sol = First[DSolve[{eqn, ic, bc}, u, {t, x}]];
ver = If[eqn /. sol // FullSimplify, Style["True", lime],
Style["False", Background -> Red],
Style["Indeterminate", Black, Background -> Yellow]];
reg = Rectangle[{domt[[1]], domx[[1]]}, {domt[[2]], domx[[2]]}];
data = {
{Style[
"REPORT OF SOLUTION TO A SIMPLIFIED FIRST ORDER CAUCHY PARTIAL \
DIFFERENTIAL EQUATION", Bold], SpanFromLeft, SpanFromLeft},
{"", Style["PARAMETERS", Bold], Style["RESULTS", Bold]},
{Rotate[Style["INPUTS", Bold], 90 Degree],
"initial conditions (ic)", ic // TraditionalForm},
{SpanFromAbove, "boundary conditions (bc)", bc // TraditionalForm},
{SpanFromAbove, "domain in t (domt)", domt // TraditionalForm},
{SpanFromAbove, "domain in x (domx)", domx // TraditionalForm},
{SpanFromAbove, "domains destructure to form surface region(reg)",
reg // TraditionalForm},
{SpanFromAbove, "range in u[t,x] (range)",
range // TraditionalForm},
{Rotate[Style["OUTPUTS", Bold], 90 Degree],
"cauchy equation(eqn//TraditionalForm )", eqn // TraditionalForm},
{SpanFromAbove, "solution (sol[[1]])", sol // TraditionalForm},
{SpanFromAbove, "solution (sol[[1]]//FullSimplify)",
sol // FullSimplify // TraditionalForm},
{SpanFromAbove, "solution verified as", ver},
{SpanFromAbove, "comment on solution from default values",
"plot assumes a traveling wave" // TraditionalForm}};
Print[Grid[data, Frame -> All, FrameStyle -> Thickness[1],
Spacings -> 2, Alignment -> {{Center, Center}},
ItemSize -> Automatic,
BaseStyle -> {White, Bold, Background -> navy, TraditionalForm}]];
Print[Plot3D[Evaluate[u[t, x] /. sol], {t, x} \[Element] reg,
PlotRange -> range, AxesLabel -> Automatic]]
]
cauchy[]
lime
andnavy
are not defined. $\endgroup$Alignment -> {Center, Center}
instead ofAlignment -> {{Center, Center}}
? $\endgroup$//TranditionalForm
to theGrid[data, Spacing rule, TradionalForm rule]
? $\endgroup$