function [ifallo]= createmp(r,e,tamb,npic,tfus) %**************************************************************************** % % Crea una rejilla uniforme plana formada por cuadrados con las temepraturas % para la simulación del corte del laser en Flow Regulator de 60x60mm % %**************************************************************************** % % EN ENTRADA: % % r := Radio de la circunferencia que cortamos (mm) % e := Lado del cuadrado que forma la rejilla (mm) % tamb := Temperatura ambiente (ºC) % npic := Numero de "Termografías" que se quiere obtener % tfus := Temperatura de fusión (ºC) % %**************************************************************************** % % EN SALIDA: % % ifallo := Indicador de fallo, toma los valores: % 0: El programa se ejecuta correctamente % 1: % %**************************************************************************** ifallo=0; %Inicializo la variable ifallo n=ceil(30/e);%Mitad de celdas en un lado de la rejilla step=2*pi/npic; %Paso en la parametrización fid=fopen('/termopics2.txt','w+');%Creo archivo con permisos de escritura ampliados for i=1:npic %Inicializo una matriz con la temperatura ambiente en cada celda Temp=tamb*ones(2*n+1,2*n+1); Temp(:,1)=0:2*n; Temp(1,:)=0:2*n; Temp(1,1)=i-1; %Busco la interseccion más cercana al punto que se calienta % y caliento las 4 celdas alrededor px=n+round(r*cos((i-1)*step)/e); py=n+round(r*sin((i-1)*step)/e); Temp(px,py)=tfus; Temp(px+1,py)=tfus; Temp(px,py+1)=tfus; Temp(px+1,py+1)=tfus; for j=1:2*n+1 if j==1 fprintf(fid,'%d ',Temp(j,1)); else fprintf(fid,'\n %d ',Temp(j,1)); end for k=2:2*n+1 fprintf(fid,'%d ',Temp(j,k)); end end end