1
votes

The task is to create a cone hat in Matlab by creating a developable surface with numerical methods. There are 3 parts of which I have done 2. My question is regarding part 3 where I need to calculate the least rectangular paper surface that can contain the hat. And I need to calculate the material waste of the paper.

YOU CAN MAYBE SKIP THE LONG BACKGROUND AND GO TO LAST PARAGRAPH


BACKGROUND:

The cone hat can be created with a skewed cone with its tip located at (a; 0; b) and with a circle-formed base.

x = Rcos u, 
y = Rsin u
z = 0
0<_ u >_2pi

with known values for R, a and b

Given differentialequations

epsilon and eta ('n') is the curves x- and y- values when the parameter u goes from 0 to 2pi and alpha is the angle of inclination for the curve at point (epsilon, eta). Starting values at A: u=0, alhpa=0, epsilon=0, eta=0.

Curve stops at B where the parameter u has reached 2pi.

1. I plotted the curve by using Runge-Kutta-4 and showed that the tip is located at P = (0, sqrt(b^2 + (R-alpha)^2))

2. I showed that by using smaller intervals in RK4 I still get quite good accuracy but the problem then is that the curve isn't smooth. Therefore I used Hermite-Interpolation of epsilon and eta as functions of u in every interval to get a better curve.

3. Ok so now I need to calculate the least rectangular paper surface that can contain the hat and the size of the material waste of the paper. If the end angle alpha(2pi) in the template is pi or pi/2 the material waste will be less. I now get values for R & alpha (R=7.8 and alpha=5.5) and my task is to calculate which height, b the cone hat is going to get with the construction-criteria alpha(2pi)=pi (and then for alpha(2pi)=pi/2 for another sized hat).

So I took the first equation above (the expression containing b) and rewrote it like an integral: The integral


TO THE QUESTION

What I understand is that I need to solve this integral in matlab and then choose b so that alpha(2pi)-pi=0 (using the given criteria above). The values for R and alpha is given and t is defined as an interval earlier (in part 1 where I did the RK4). So when the integral is solved I get f(b) = 0 which I should be able to solve with for example the secant method? But I'm not able to solve the integral with the matlab function 'integral'.. cause I don't have the value of b of course, that is what I am looking for. So how am I going to go about this? Is there a function in matlab which can be used?

1

1 Answers

1
votes

You can use the differential equation for alpha and test different values for b until the condition alpha(2pi)=pi is met. For example:

b0=1 %initial seed
b=fsolve(@find_b,b0) %use the function fsolve or any of your choice

The function to be solved is:

function[obj]=find_b(b)
    alpha0=0 %initual valur for alpha at u=0
    uspan=[0 2*pi] %range for u
    %Use the internal ode solver or any of your choice
    [u,alpha] = ode45(@(u,alpha) integrate_alpha(u,alpha,b), uspan, alpha0);

    alpha_final=alpha(end) %Get the last value for alpha (at u=2*pi)

    obj=alpha_final-pi %Function to be solved
end

And the integration can be done like this:

function[dalpha]=integrate_alpha(u,alpha,b)

      a=1; %you can use the right value here
      R=1; %you can use the right value here

      dalpha=(R-a*cos(u))/sqrt(b^2+(R-a*cos(u))^2); 

end