Matlab - Ayuda por favor Leer Datos de un archivo .txt

 
Vista:
sin imagen de perfil

Ayuda por favor Leer Datos de un archivo .txt

Publicado por Jaime (5 intervenciones) el 24/03/2016 08:31:58
Buenos Dias, Por favor necesito que alguien me ayude con el siguiente problema, tengo que leer los datos de un archivo txt que mostrare a continuación, debo organizar las filas en vectores los cuales posteriormente necesitare para realizar operaciones.
Este es el contenido del txt (Debo leer todos los valores que están después de ", y la tabla de 3 columnas al final del documento. De antemano muchas gracias por cualquier ayuda.

" NUMERO DE BLOQUES EN DIRECCION X ", 11
" ESPESOR DE LOS BLOQUES EN DIRECCION X (ft) ", 309.51 325.80 342.95 361.00 380.00 400.00 380.00 361.00 342.95 325.80 309.51
" ANCHO DEL YACIMIENTO Y (ft) ", 100.0
" ESPESOR DEL YACIMIENTO (ft) ", 90.0
" PROFUNDIDAD DE LOS BLOQUES (ft) ", 3930.00 3887.40 3851.67 3824.15 3806.35 3800.00 3806.35 3824.15 3851.67 3887.40 3930.00
" PERMEABILIDAD EN DIRECCION X (mD) ", 15.476 16.290 17.148 18.050 19.000 20.000 19.000 18.050 17.148 16.290 15.476
" POROSIDAD (-) ", 0.153 0.146 0.139 0.132 0.126 0.120 0.126 0.132 0.139 0.146 0.153
" COMPRESIBILIDAD DE PORO (1/psi) ", 2.1E-6
" PRESION INCIAL (psia) ", 2100
" "
"*******************************************************"
" "
" INFORMACION DE LOS POZOS "
" "
" NUMERO DE POZOS ", 3
" "
" UBICACION POZO 1 (Coordenada i) ", 1
" UBICACION POZO 2 (Coordenada i) ", 6
" UBICACION POZO 3 (Coordenada i) ", 11
" "
" TASA INYECCION POZO 1 (STB/d) ", 2000
" PRESION DE FONDO POZO 2 ", 1500
" TASA INYECCION POZO 3 (STB/d) ", 2000
" "
"*******************************************************"
" "
" PARAMETROS DE LA SIMULACION "
" "
" DT (Dias) ", 1
" TOLENCIA (-) ", 1.0E-5
" "
"*******************************************************"
" "
" INFORMACION DEL FLUIDO "
" "
" Densidad SC (lb/ft3) ", 52.2912
" "
" Presión FVF Viscosidad "
" psia RB/STB cP "

1200.10 1.17757 0.93086
1500.00 1.17256 0.97237
2000.00 1.16495 1.04213
2500.00 1.15813 1.11237
3000.00 1.15196 1.18283
3500.00 1.14636 1.25331
4000.00 1.14122 1.32364
4500.00 1.13650 1.39369
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda por favor Leer Datos de un archivo .txt

Publicado por Dave (1094 intervenciones) el 24/03/2016 15:32:58
Hola Jaime;

Sobre el archivo de texto, se me ocurre preguntar si siempre vas a tener el mismo numero de líneas o datos en el archivo de texto.

Me gustaría ofrecerte mis servicios de programación para la lectura de los datos del archivo de texto.

Entonces, espero poder ayudarte.

​Espero que sea de alguna ayuda.

Saludos
Dave Correa
[email protected]
[email protected]
Servicios de Programación Matlab
http://fismatlab.org​​
http://fismatlab.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda por favor Leer Datos de un archivo .txt

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 24/03/2016 17:23:12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
clear
fid1=fopen('importacion_datos_2.txt','r');
 i=1;
 j=1;
 
 while 1
 linea = fgetl(fid1);
 if ~ischar(linea),
     break,
 end
 hola2=strfind(linea,char(34));
 if length(hola2)==2
     if length(linea(hola2(2)+2:end))>=1
     C{i,1}=linea(hola2(2)+2:end);
      i=i+1;
     end
 else
     CC{j,1}=linea ;%(hola2(2)+2:end)
     j=j+1;
 end
 
 end
fclose(fid1);
C
CC=str2num(cell2mat((CC)))


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
>> importacion_datos_2
 
C =
 
    ' 11 '
    ' 309.51	325.80	342.95	361.00	380.00	400.00	380.00	361.00	342.95	325.80	309.51'
    ' 100.0'
    ' 90.0'
    '	3930.00	3887.40	3851.67	3824.15	3806.35	3800.00	3806.35	3824.15	3851.67	3887.40	3930.00'
    ' 15.476	16.290	17.148	18.050	19.000	20.000	19.000	18.050	17.148	16.290	15.476'
    ' 0.153	0.146	0.139	0.132	0.126	0.120	0.126	0.132	0.139	0.146	0.153'
    ' 2.1E-6'
    ' 2100'
    ' 3'
    ' 1'
    ' 6'
    ' 11'
    ' 2000'
    ' 1500'
    ' 2000'
    ' 1'
    ' 1.0E-5'
    ' 52.2912'
 
 
CC =
 
   1.0e+03 *
 
    1.2001    0.0012    0.0009
    1.5000    0.0012    0.0010
    2.0000    0.0012    0.0010
    2.5000    0.0012    0.0011
    3.0000    0.0012    0.0012
    3.5000    0.0011    0.0013
    4.0000    0.0011    0.0013
    4.5000    0.0011    0.0014

Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
Servicios de programación matlab
[email protected]
El correo es para servicios de programación, toda ayuda gratuita es vía foro
.

http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Ayuda por favor Leer Datos de un archivo .txt

Publicado por Jaime (5 intervenciones) el 24/03/2016 19:51:05
Muchas Gracias Jose Caballero, tengo un problema cuando voy usar CC=str2num(cell2mat((CC))) me tira el siguiente error:

??? Error using ==> cat
CAT arguments dimensions are not consistent.

Error in ==> cell2mat at 89
m{n} = cat(1,c{:,n});

Que puedo estar haciendo mal?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda por favor Leer Datos de un archivo .txt

Publicado por Jaime (5 intervenciones) el 24/03/2016 19:48:41
Hola, si amigo, el txt para mi caso siempre tendrá el mismo numero de lineas o datos: Este es el txt completo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
*********************************************************
"							"
"	    ARCHIVO DE ENTRADA AL SIMULADOR 1D		"
"							"
"*******************************************************"
"							"
"		INFORMACION DE LA MALLA			"
"							"
"	NUMERO DE BLOQUES EN DIRECCION X		", 	11
"	ESPESOR DE LOS BLOQUES EN DIRECCION X (ft)	", 	309.51	325.80	342.95	361.00	380.00	400.00	380.00	361.00	342.95	325.80	309.51
"	ANCHO DEL YACIMIENTO Y (ft)			", 	100.0
"	ESPESOR	DEL YACIMIENTO (ft)			", 	90.0
"	PROFUNDIDAD DE LOS BLOQUES (ft)			",	3930.00	3887.40	3851.67	3824.15	3806.35	3800.00	3806.35	3824.15	3851.67	3887.40	3930.00
"	PERMEABILIDAD EN DIRECCION X (mD)		", 	15.476	16.290	17.148	18.050	19.000	20.000	19.000	18.050	17.148	16.290	15.476
"	POROSIDAD (-)					", 	0.153	0.146	0.139	0.132	0.126	0.120	0.126	0.132	0.139	0.146	0.153
"	COMPRESIBILIDAD DE PORO (1/psi)			", 	2.1E-6
"	PRESION INCIAL (psia)				", 	2100
"							"
"*******************************************************"
"							"
"		INFORMACION DE LOS POZOS		"
"							"
"	NUMERO DE POZOS					", 	3
"							"
"	UBICACION POZO 1 (Coordenada i)			", 	1
"	UBICACION POZO 2 (Coordenada i)			", 	6
"	UBICACION POZO 3 (Coordenada i)			", 	11
"							"
"	TASA INYECCION POZO 1 (STB/d)			", 	2000
"	PRESION DE FONDO POZO 2				", 	1500
"	TASA INYECCION POZO 3 (STB/d)			", 	2000
"							"
"*******************************************************"
"							"
"		PARAMETROS DE LA SIMULACION		"
"							"
"	DT (Dias)					", 	5
"	TOLENCIA (-)					", 	1.1E-5
"							"
"*******************************************************"
"							"
"		INFORMACION DEL FLUIDO			"
"							"
"	Densidad SC (lb/ft3)				", 	52.2912
"							"
"	Presión		FVF		Viscosidad	"
"	psia		RB/STB		cP		"
 
	1200.10		1.17757		0.93086
	1500.00		1.17256		0.97237
	2000.00		1.16495		1.04213
	2500.00		1.15813		1.11237
	3000.00		1.15196		1.18283
	3500.00		1.14636		1.25331
	4000.00		1.14122		1.32364
	4500.00		1.13650		1.39369
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda por favor Leer Datos de un archivo .txt

Publicado por Jaime (5 intervenciones) el 24/03/2016 20:14:43
Si tiene razón señor Jose Pido disculpas, pensé que seria algo irrelevante.... igual la ayuda que me ofreció me ha servido mucho, Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar