Lo que he aprendido: archivo de geometría unv en Matlab

Lo que traigo hoy es un poco más técnico y un poco más raruno de lo normal, pero tal vez le sea útil a alguien. Si habéis hecho alguna vez un análisis modal experimental os sonará algo llamado archivo unv, uff o archivo universal. Es básicamente una manera de escribir los datos en un archivo de texto para que diferentes programas los puedan entender. Sabiendo esto, se puede trucar uno y crear archivos de geometría, modos, …

En mi caso, creé esto porque a la hora de meter la geometría en el programa que usamos para que nos procese los datos hay que meter los puntos de medición de uno en uno, a pesar de que estés midiendo en algo regular como un disco o una viga. No me preguntéis por qué. Y a mí pues como que no me apetece andar escribiendo las coordenadas de unos puntos cuando puedo crear una matriz de puntos muy fácilmente y exportarla. Así que de esa idea y de indagar en Internet surgió esto:

function unvWriter(puntos,nombreArchivo)

% Crea un archivo nombreArchivo.unv de la geometría a partir de una matriz 
% cuyas columnas sean las coordenadas (x,y,z)

columnas = 7;

% Significado de las columnas
% 1: nombre del punto
% 2: defCS (default = 0)
% 3: dispCS (default = 0)
% 4: color (default = 0)
% 5: coordenada x
% 6: coordenada y
% 7: coordenada z

filas = length(puntos);

datos = zeros(filas, columnas);

datos(:,1)=(1:length(puntos))';

datos(:,5:7) = puntos;

% Archivo donde escrbir
fid = fopen([nombreArchivo '.unv'], 'w');

% Primera línea: -1
fprintf(fid,'%6i%74sn',-1,' ');

% Segunda: 15 (geometría)

fprintf(fid,'%6i%74sn',15,' ');

% Escribir matriz
fprintf(fid, '%10i%10i%10i%10i%13.4e%13.4e%13.4en', datos');

% Última línea: -1
fprintf(fid,'%6i%74sn',-1,' ');

fclose(fid);

Más:

Más info sobre el formato de los archivo universales

Un lector megapro de uff para Matlab

Anuncios

Un pensamiento en “Lo que he aprendido: archivo de geometría unv en Matlab

  1. Pingback: Lo que he aprendido: crear archivos unv de modos en Matlab | Onda Hostil

¡Opina sin miedo! (Puedes usar Markdown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s