59 lines
1.6 KiB
Mathematica
59 lines
1.6 KiB
Mathematica
|
|
function FemModel(filename)
|
|||
|
|
% <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫģ<EFBFBD><EFBFBD>
|
|||
|
|
% <EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>
|
|||
|
|
% gNode ------- <EFBFBD>ڵ㶨<EFBFBD><EFBFBD>
|
|||
|
|
% gElement ---- <EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
% gMaterial --- <EFBFBD><EFBFBD><EFBFBD>϶<EFBFBD><EFBFBD>壬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ծ<EFBFBD>
|
|||
|
|
% gBC1 -------- Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
% gDF --------- <EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
global gNode gElement gMaterial gBC1 gDF
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|||
|
|
fid = fopen( filename, 'r' ) ;
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD>ȡ<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
node_number = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gNode = zeros( node_number, 2 ) ;
|
|||
|
|
for i=1:node_number
|
|||
|
|
dummy = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gNode( i, : ) = fscanf( fid, '%f', [1, 2] ) ;
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
element_number = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gElement = zeros( element_number, 4 ) ;
|
|||
|
|
for i=1:element_number
|
|||
|
|
dummy = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gElement( i, : ) = fscanf( fid, '%d', [1, 4] ) ;
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
load_number = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gDF = zeros( load_number, 4 ) ;
|
|||
|
|
for i=1:load_number
|
|||
|
|
dummy = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gDF( i, : ) = fscanf( fid, '%f', [1, 4] ) ;
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
material_number = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gMaterial = zeros( material_number, 4 ) ;
|
|||
|
|
for i=1:material_number
|
|||
|
|
dummy = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gMaterial( i, : ) = fscanf( fid, '%f', [1,4] ) ;
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
% <EFBFBD><EFBFBD>ȡ<EFBFBD>߽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
bc1_number = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gBC1 = zeros( bc1_number, 3 ) ;
|
|||
|
|
for i=1:bc1_number
|
|||
|
|
gBC1( i, 1 ) = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gBC1( i, 2 ) = fscanf( fid, '%d', 1 ) ;
|
|||
|
|
gBC1( i, 3 ) = fscanf( fid, '%f', 1 ) ;
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
% <EFBFBD>ر<EFBFBD><EFBFBD>ļ<EFBFBD>
|
|||
|
|
fclose( fid ) ;
|
|||
|
|
return
|