The reverse engineering of a cake-mix

Some time ago I got a mixture for a chocolate-coconut cake. So, my thought: How to bake it again if the cake is deliciouse?

Of course, by reverse engineering the mixture!

The ingredients reading as following:

Ingredient label
Ingredient label

1. Using the lable to identify the different segments:

From top to down: Peanuts, coconut rasps, brown sugar, cacao, flour, sugar, vanilla sugar, soda, cinamon, salt.

2. Measure the segment heights and container dimensions

Measuring the ingredients heights
Measuring the ingredients heights

3. Calculate the weight of the dry ingredients

Lets do some calculation using Scilab:

clear all;
clear;
clc;

//// Reverse engineered chocolate-coconut Cacke

// Igredient Segments from top to bottom

// Segment 1: Peanuts
// Segment 2: Coconut rasps
// Segment 3: Brown sugar
// Segment 4: Cacao
// Segment 5: Flour
// Segment 6: Sugar
// Segment 6: Vanilla sugar
// Segment 6: Soda
// Segment 6: Cinamon
// Segment 6: Salt

// Predefinitions

// Dimensions in [m]
h_tot = 0.1                                         // Total fill height
h_1 = h_tot - 0.09                                  // Peanut segment height
h_1_off = h_tot - h_1                               // Peanut offset from bottom
h_2 = h_tot - h_1 - 0.078                           // Coconut segment height
h_2_off = h_tot - h_1 - h_2                         // Coconut offset from bottom
h_3 = h_tot - h_1 - h_2 - 0.065                     // Brown sugar segment height
h_3_off = h_tot - h_1 - h_2 - h_3                   // Brown sugar offset from bottom
h_4 = h_tot - h_1 - h_2 - h_3 -  0.055              // Cacao segment height
h_4_off = h_tot - h_1 - h_2 - h_3 - h_4             // Cacao offset from bottom
h_5 = h_tot - h_1 - h_2 - h_3 - h_4 - 0.025         // Flour segment height
h_5_off = h_tot - h_1 - h_2 - h_3 - h_4 - h_5       // Flour offset from bottom
h_6 = h_tot - h_1 - h_2 - h_3 - h_4 - h_5 - 0.008   // Rest of the ingredients height
h_6_off = 0.008                                     // Offset of the rest from bottom

r_1 = 0.072;                                        // Small radius of the container
r_2 = 0.094;                                        // Big radius of the container

// Density in [kg/m^3]
//   some evaluated, some from here: http://www.mollet.de/info/schuettgutdichte.html
// [kg]/([0.001 m^3/l]*[l]) = [kg]/[m^3]
roh_1 = 0.500/(0.001*1.000);    // Density of peanuts
roh_2 = 0.152/(0.001*0.440);    // Density of coconut
roh_3 = 0.176/(0.001*0.170);    // Density of brown suger
roh_4 = 0.047/(0.001*0.100);    // Density of cacao
roh_5 = 0.220/(0.001*0.325);    // Density of flour
roh_6 = 0.259/(0.001*0.250);    // Density of the rest...mainly sugar

// angle of the jars side walls
alpha = atan((r_2-r_1)/(2*h_tot));

// Calculate mean segment area, using the segment offset and segment height
function y=A_segment(h_offset, h_segment)
    h_mean = h_segment/2+h_offset;
    dia_mean = r_1+2*tan(alpha)*h_mean;
    y = dia_mean^2/4*%pi;
endfunction

// Calculate volume, using mean area and height
function y=V_segment(A_seg, h_segment)
    y = A_seg * h_segment;
endfunction

// Calculate the weight, using density and volume
function y=Weight(V_segment, density)
    y = V_segment * density;
endfunction

// Weight calculation
w_1 = Weight(V_segment(A_segment(h_1_off, h_1), h_1), roh_1)
w_2 = Weight(V_segment(A_segment(h_2_off, h_2), h_2), roh_2)
w_3 = Weight(V_segment(A_segment(h_3_off, h_3), h_3), roh_3)
w_4 = Weight(V_segment(A_segment(h_4_off, h_4), h_4), roh_4)
w_5 = Weight(V_segment(A_segment(h_5_off, h_5), h_5), roh_5)
w_6 = Weight(V_segment(A_segment(h_6_off, h_6), h_6), roh_6)

disp(w_1, "Peanuts: ")
disp(w_2, "Coconut rasps: ")
disp(w_3, "Brown sugar: ")
disp(w_4, "Cacao: ")
disp(w_5, "Flour: ")
disp(w_6, "Sugar...and the rest: ")
disp(w_1 + w_2 + w_3 + w_4 + w_5 + w_6, "Total weight: ")

And the output is (values in kg):

Peanuts:
    0.0338915
Coconut rasps:
    0.0266543
Brown sugar:
    0.0813567
Cacao:
    0.0267958
Flour:
    0.1041294
Sugar...and the rest:
    0.0791201
Total weight:
    0.3519478

Surprisingly, the calculated weight of about 0.352 kg is pretty close to the one, indicated on the label.

Just add 2 eggs and 120 g butter. The <<rest>> would be about 1 tea-spoon of baking soda, a knife tip of cinnamon and a pinch of salt.

Friday the 13th

There is a theorie about the frightened Friday the 13th: Reason for the increased number of accidents happend on a Fridays which falls on the 13th day in the month, should be due to the fact there are more Fridays falling on a 13th in the month than on other days.

But…is it true…and how to prove it?
Sure! With CODE!

A piece of VB.net code should show the truth.
Dim aDays(31) As Integer

Sub Main()

  Dim dt As New Date(1600, 1, 1)

  While dt.Date <> Today
    If dt.DayOfWeek = DayOfWeek.Friday Then
      aDays(dt.Day) = aDays(dt.Day) + 1
    End If
    dt = dt.AddDays(1)
  End While

  For i As Integer = 1 To aDays.Length - 1
    Console.WriteLine(Str(i) & " = " & aDays(i) & " times")
  Next

  Console.ReadLine()

End Sub

And the console output:

Results of Friday 13th console output

Its a lie! In 416 years Fridays don’t falling exceptional often on the 13th of a month!

  • – quod erat demonstrandum