Generation

fix invalid codeTue, 25 Mar 2025

clc; clear; close all; syms x C1 C2 % Definir carga distribuida con funciones de singularidad w = -70 * heaviside(x) + 70 * heaviside(x-15) + 45 * (heaviside(x-3) - heaviside(x-12)); % Integrar para obtener fuerza cortante V = int(w, x) + C1; % Integrar para obtener momento flector M = int(V, x) + C2; % Condiciones de frontera (apoyo simple en x=3 y rodillo en x=12) C1_val = solve(subs(V, x, 3) == 0, C1); V = simplify(subs(V, C1, C1_val)); % Sustituir C1 en V C2_val = solve(subs(M, x, 3) == 0, C2); M = simplify(subs(M, C2, C2_val)); % Sustituir C2 en M % Verificar si aún quedan variables simbólicas sin resolver %if ~isempty(symvar(V)) || ~isempty(symvar(M)) %error('Aún existen variables simbólicas no resueltas en V o M.'); %end % Convertir a funciones anónimas w_func = matlabFunction(w, 'Vars', x); V_func = matlabFunction(V, 'Vars', x); M_func = matlabFunction(M, 'Vars', x); % Graficar carga distribuida figure; fplot(w_func, [0 15], 'LineWidth', 2); grid on; title('Diagrama de Carga Distribuida'); xlabel('x (m)'); ylabel('w (kN/m)'); ylim([-80 80]); % Ajustar ejes saveas(gcf, 'Pablo_Lucas_Santiago_Problema2_W.png'); % Graficar fuerza cortante figure; fplot(V_func, [0 15], 'LineWidth', 2); grid on; title('Diagrama de Fuerza Cortante'); xlabel('x (m)'); ylabel('V (kN)'); ylim([-100 100]); % Ajustar ejes saveas(gcf, 'Pablo_Lucas_Santiago_Problema2_V.png'); % Graficar momento flector figure; fplot(M_func, [0 15], 'LineWidth', 2); grid on; title('Diagrama de Momento Flector'); xlabel('x (m)'); ylabel('M (kN*m)'); ylim([-500 500]); % Ajustar ejes saveas(gcf, 'Pablo_Lucas_Santiago_Problema2_M.png');

Please keep input under 1000 characters

Want to kickstart your project?Use the new AI Studio to create your code