Diferencia entre revisiones de «Mallado Arco 1 (grupo 59)»
De MateWiki
(→Mallado del arco) |
|||
| Línea 79: | Línea 79: | ||
title('Tensión Tangencial (\tau_{\rho\theta})'); | title('Tensión Tangencial (\tau_{\rho\theta})'); | ||
xlabel('x'); ylabel('y'); | xlabel('x'); ylabel('y'); | ||
| + | |||
| + | ---5.Dibujo del sólido antes y después del desplazamiento--- | ||
| + | %% Visualización de Deformación (Azul vs Rojo) | ||
| + | clear; clc; close all; | ||
| + | % --- 1. DATOS Y CÁLCULOS --- | ||
| + | rho_vec = 1:0.1:2; | ||
| + | |||
| + | % EL CAMBIO ESTÁ AQUÍ: | ||
| + | |||
| + | theta_vec = [0:0.1:pi, pi]; | ||
| + | |||
| + | [R, Th] = meshgrid(rho_vec, theta_vec); | ||
| + | |||
| + | % Posición Inicial | ||
| + | X_ini = R .* cos(Th); | ||
| + | Y_ini = R .* sin(Th); | ||
| + | |||
| + | % Desplazamiento u (Trabajo M) | ||
| + | u_rho = zeros(size(R)); | ||
| + | u_theta = (1/5) * (R - 1) .* (R.^2) .* sin(Th); | ||
| + | |||
| + | UX = u_rho .* cos(Th) - u_theta .* sin(Th); | ||
| + | UY = u_rho .* sin(Th) + u_theta .* cos(Th); | ||
| + | |||
| + | % Posición Final | ||
| + | X_fin = X_ini + UX; | ||
| + | Y_fin = Y_ini + UY; | ||
| + | |||
| + | % --- GENERACIÓN DE LAS GRÁFICAS --- | ||
| + | |||
| + | % GRÁFICA 1: Posición Inicial | ||
| + | figure(1); clf; hold on; axis equal; | ||
| + | set(gcf, 'Color', 'w'); title('1. Posición Inicial (Sin deformar)'); | ||
| + | xlabel('x'); ylabel('y'); | ||
| + | plot(X_ini, Y_ini, 'b', 'LineWidth', 1); | ||
| + | plot(X_ini', Y_ini', 'b', 'LineWidth', 1); | ||
| + | plot_borde(rho_vec, theta_vec, 'k', 2); | ||
| + | axis([-2.5 2.5 0 2.5]); grid on; | ||
| + | |||
| + | % GRÁFICA 2: Posición Final | ||
| + | figure(2); clf; hold on; axis equal; | ||
| + | set(gcf, 'Color', 'w'); title('2. Posición Final (Deformada)'); | ||
| + | xlabel('x'); ylabel('y'); | ||
| + | plot(X_fin, Y_fin, 'r', 'LineWidth', 1); | ||
| + | plot(X_fin', Y_fin', 'r', 'LineWidth', 1); | ||
| + | axis([-2.5 2.5 0 2.5]); grid on; | ||
| + | |||
| + | % GRÁFICA 3: Superposición (AZUL vs ROJO) | ||
| + | figure(3); clf; hold on; axis equal; | ||
| + | set(gcf, 'Color', 'w'); title('3. Comparativa: Inicial vs Final'); | ||
| + | xlabel('x'); ylabel('y'); | ||
| + | |||
| + | % A) Inicial: AZUL | ||
| + | plot(X_ini, Y_ini, 'b', 'LineWidth', 1); | ||
| + | plot(X_ini', Y_ini', 'b', 'LineWidth', 1); | ||
| + | |||
| + | % B) Final: ROJO | ||
| + | plot(X_fin, Y_fin, 'r', 'LineWidth', 1.2); | ||
| + | plot(X_fin', Y_fin', 'r', 'LineWidth', 1.2); | ||
| + | |||
| + | |||
| + | % --- Función para bordes --- | ||
| + | function plot_borde(r_v, t_v, col, ancho) | ||
| + | plot(r_v(end)*cos(t_v), r_v(end)*sin(t_v), col, 'LineWidth', ancho); | ||
| + | plot(r_v(1)*cos(t_v), r_v(1)*sin(t_v), col, 'LineWidth', ancho); | ||
| + | plot([r_v(1) r_v(end)]*cos(t_v(1)), [r_v(1) r_v(end)]*sin(t_v(1)), col, 'LineWidth', ancho); | ||
| + | plot([r_v(1) r_v(end)]*cos(t_v(end)), [r_v(1) r_v(end)]*sin(t_v(end)), col, 'LineWidth', ancho); | ||
| + | end | ||
| + | |||
}} | }} | ||
Revisión del 12:02 1 dic 2025
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Arco1. Grupo 59 |
| Asignatura | Teoría de Campos |
| Curso | 2025-26 |
| Autores |
|
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
1 Mallado del arco
% Mallado del arco alineado
% Elegimos divisiones que garanticen que:
% θ = 0, pi/2, pi están incluidos
% r incluye exactamente 1 y 2
theta = linspace(0, pi, 20); % mallado moderado, incluye 0, pi/2 y pi
r = linspace(1, 2, 15); % radios exactos 1 y 2
[R, TH] = meshgrid(r, theta);
% Convertir a coordenadas cartesianas
X = R .* cos(TH);
Y = R .* sin(TH);
figure;
hold on;
col = [0.3 0.6 1]; % azul clarito
% Mallado tipo red (más grueso)
plot(X, Y, 'Color', col, 'LineWidth', 1.1); % líneas en theta
plot(X', Y', 'Color', col, 'LineWidth', 1.1); % líneas en r
% Contornos superior interior y exterior
theta_cont = linspace(0, pi, 400);
plot(1*cos(theta_cont), 1*sin(theta_cont), 'Color', col, 'LineWidth', 2);
plot(2*cos(theta_cont), 2*sin(theta_cont), 'Color', col, 'LineWidth', 2);
% Bases
plot([-1 -2], [0 0], 'Color', col, 'LineWidth', 2); % base izquierda
plot([ 1 2], [0 0], 'Color', col, 'LineWidth', 2); % base derecha
% Ajustes
axis equal
grid on
title('Mallado del arco')
xlabel('x')
ylabel('y')
hold off;
2 To go further
3 Tensiones tangenciales
%% TENSIONES TANGENCIALES
clear; clc; close all;
% --- 1. GEOMETRÍA ---
rho_vec = 1:0.01:2;
theta_vec = [0:0.01:pi, pi];
[R, Th] = meshgrid(rho_vec, theta_vec);
X = R .* cos(Th);
Y = R .* sin(Th);
% --- 2. CÁLCULO DE LA TENSIÓN (Tau) ---
% Fórmula derivada: (1/5) * (2*rho^2 - rho) * sin(theta)
Tau = (1/5) * (2*R.^2 - R) .* sin(Th);
% Calculamos el valor absoluto
Tau_Mag = abs(Tau);
% --- 3. VISUALIZACIÓN ---
figure(9); clf; hold on; axis equal;
set(gcf, 'Color', 'w');
title('Tensión Tangencial (\tau_{\rho\theta})');
xlabel('x'); ylabel('y');
---5.Dibujo del sólido antes y después del desplazamiento---
%% Visualización de Deformación (Azul vs Rojo)
clear; clc; close all;
% --- 1. DATOS Y CÁLCULOS ---
rho_vec = 1:0.1:2;
% EL CAMBIO ESTÁ AQUÍ:
theta_vec = [0:0.1:pi, pi];
[R, Th] = meshgrid(rho_vec, theta_vec);
% Posición Inicial
X_ini = R .* cos(Th);
Y_ini = R .* sin(Th);
% Desplazamiento u (Trabajo M)
u_rho = zeros(size(R));
u_theta = (1/5) * (R - 1) .* (R.^2) .* sin(Th);
UX = u_rho .* cos(Th) - u_theta .* sin(Th);
UY = u_rho .* sin(Th) + u_theta .* cos(Th);
% Posición Final
X_fin = X_ini + UX;
Y_fin = Y_ini + UY;
% --- GENERACIÓN DE LAS GRÁFICAS ---
% GRÁFICA 1: Posición Inicial
figure(1); clf; hold on; axis equal;
set(gcf, 'Color', 'w'); title('1. Posición Inicial (Sin deformar)');
xlabel('x'); ylabel('y');
plot(X_ini, Y_ini, 'b', 'LineWidth', 1);
plot(X_ini', Y_ini', 'b', 'LineWidth', 1);
plot_borde(rho_vec, theta_vec, 'k', 2);
axis([-2.5 2.5 0 2.5]); grid on;
% GRÁFICA 2: Posición Final
figure(2); clf; hold on; axis equal;
set(gcf, 'Color', 'w'); title('2. Posición Final (Deformada)');
xlabel('x'); ylabel('y');
plot(X_fin, Y_fin, 'r', 'LineWidth', 1);
plot(X_fin', Y_fin', 'r', 'LineWidth', 1);
axis([-2.5 2.5 0 2.5]); grid on;
% GRÁFICA 3: Superposición (AZUL vs ROJO)
figure(3); clf; hold on; axis equal;
set(gcf, 'Color', 'w'); title('3. Comparativa: Inicial vs Final');
xlabel('x'); ylabel('y');
% A) Inicial: AZUL
plot(X_ini, Y_ini, 'b', 'LineWidth', 1);
plot(X_ini', Y_ini', 'b', 'LineWidth', 1);
% B) Final: ROJO
plot(X_fin, Y_fin, 'r', 'LineWidth', 1.2);
plot(X_fin', Y_fin', 'r', 'LineWidth', 1.2);
% --- Función para bordes ---
function plot_borde(r_v, t_v, col, ancho)
plot(r_v(end)*cos(t_v), r_v(end)*sin(t_v), col, 'LineWidth', ancho);
plot(r_v(1)*cos(t_v), r_v(1)*sin(t_v), col, 'LineWidth', ancho);
plot([r_v(1) r_v(end)]*cos(t_v(1)), [r_v(1) r_v(end)]*sin(t_v(1)), col, 'LineWidth', ancho);
plot([r_v(1) r_v(end)]*cos(t_v(end)), [r_v(1) r_v(end)]*sin(t_v(end)), col, 'LineWidth', ancho);
end
Visualization of a scalar field in a solid