Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Una viga voladiza horizontal se somete a una carga vertical uniforme. La viga se extiende
desde su extremo fijo (x=0) hasta su extremo libre (x=L). La desviación máxima δmax se
produce en (X=L). La desviación δ en el punto (x=αL) está relacionada con δmax
mediante:
𝛿
𝑓(𝛼) = 𝛼 4 − 4𝛼 3 + 6𝛼 2 − 3 =0
𝛿𝑚𝑎𝑥
Crear un programa en GUI que halle la deflexión máxima de una viga en voladizo si
se tiene como dato una ecuación en función de 𝛼, es decir, 𝑓(𝛼).
SOLUCIÓN
1
Programación en GUI de MATLAB
Se escoge un control, se hace clic y se arrastra hasta donde se desea. También se pueden
duplicar controles, agrandarlos y alinearlos.
Se edita cada control haciendo doble clic sobre él, aparecerá la ventana Inspector Property.
2
Programación en GUI de MATLAB
3
Programación en GUI de MATLAB
Al ejecutarlo (F5):
4
Programación en GUI de MATLAB
Luego el cursor les lleva a una determinada línea de programación, en ella editamos la programación
respectiva, de tal manera que cuando se ejecute el programa se cumplirá los diferentes mandatos “al
inicio”.
➢ Programación del opening:
handles.output = hObject;
set(handles.p_ingreso,'visible','on');
set(handles.p_result,'visible','on');
syms a
fun=get(handles.ecuacion,'string');
f=inline(vectorize(fun));
Comandos para obtener datos:
maxiter=str2double(get(handles.maxit,'string'));
h=str2double(get(handles.h,'string'));
a0=str2double(get(handles.x0,'string'));
5
Programación en GUI de MATLAB
i=0;
a=a0;
ma=[];
mfa=[];
miter=[];
msol=[];
while f(a0)*f(a)>0 && i<maxiter;
iter=iter+1;
miter=[miter iter];
i=i+1;
a=a0+(i*h);
ma=[ma a];
mfa=[mfa f(a)];
end
matriz=[ma' mfa'];
SOLUCION=a-h*f(a)/(f(a)-f(a-h));