资源简介

居然没有fortran不开心,好像是说清华某老师的

资源截图

代码片段和文件信息

%
% GBMM1D - ONE DIMENSIONAL Galerkin-based MESHLESS PROGRAM FOR SOLVING A 1D BAR OF UNIT LENGTH
%          SUBJECTED TO A LINEAR BODY FORCE OF MAGNITUDE X WHOSE EXACT SOLUTION IS GIVEN BY
%          u = (x/2 - x^3/6)/E
%
%          BACKGROUND CELL QUADRATURE IS EMPLOYED TO EVALUATE INTEGRALS
%              - CELLS ARE COINCIDE WITH THE INTERVALS BETWEEN THE NODES
%              - ONE POINT GAUSS QUADRATURE
%
%          LAGRANGIAN MULTIPLIER METHOD IS EMPLOYER TO IMPOSE THE ESSENTIAL BOUNDARY CONDITIONS
%

clear all

% SET UP NODAL COORDINATES ALONG BAR DETERMINE NUMBER OF CELLS
dx = 0.1;                % Distance between adjacent nodes
xi = [0.0 : dx : 1.0];   % Nodal coordinates
nnodes = length(xi);
ncells = nnodes-1;

% SET MATERIAL PROPERITES
E = 1.0;     % Elastic modulus
area = 1.0;  % Area of cross section

% DETERMINE RADIUS OF SUPPORTS FOR EACH NODE
scale = 3.0;
dm = scale*dx*ones(1nnodes);

%SET UP GAUSS POINTS WEIGHTS AND JACOBIAN FOR EACH CELL
gg = zeros(1ncells);  % Coordinates of Gauss points
jac = dx/2;            % Jacobian for each cell
weight = 2;            % weight for each Gauss points
gg = dx/2 : dx : 1.0-dx/2;

% INITIALIZE MATRICES
K = zeros(nnodes);
P = zeros(nnodes1);
G = zeros(nnodes1);

% LOOP OVER GAUSS POINTS
for j = 1:length(gg)
    xg = gg(j);

    % EVALUATE SHAPE FUNCTIONS AND THEIR DERIVATIVES AT GAUSS POINT xg
    [PHI DPHI DDPHI] = MLS1DShape(2 nnodes xi 1 xg dm ‘SPLIN‘ 0.0);

    % ASSEMBLE DISCRETE EQUATIONS
    K = K + (weight*E*area*jac)*(DPHI‘*DPHI);

    fbody = area*xg;
    P = P + (weight*fbody*jac)*PHI‘;
end

% ENFORCE BOUNDARY CONDITION USING LAGRANGE MULTIPLIERS

xg = 0.0;  % Prescribed displacement boundary
[PHI DPHI DDPHI] = MLS1DShape(2 nnodes xi 1 xg dm ‘SPLIN‘ 0.0);

G(1:31) = -PHI(1:3)‘;
Q = [0];
M = [K G; G‘ zeros(1)];

% SOLVE FOR NODAL PARAMETERS
d  = M\[P‘ Q]‘;

uh = zeros(nnodes1);  % Nodal displacements
sh = zeros(nnodes1);  % Nodal stress

for j=1:nnodes
   [PHI DPHI DDPHI] = MLS1DShape(2 nnodes xi 1 xi(j) dm ‘SPLIN‘ 0.0);
   uh(j) = PHI * d(1:nnodes);
   sh(j) = E * DPHI * d(1:nnodes);
end

% EVALUATE RELATIVE ERROR NORMS
ue = (xi/2.0 - xi.*xi.*xi/6.0)/E;  % Exact solution
se = (1 - xi.*xi)/2.0;

erru = norm(ue‘-uh)/norm(ue)*100
errs = norm(se‘-sh)/norm(se)*100

% PLOT RESULTS
figure
subplot(121);  plot(xi ue xi uh);
subplot(122);  plot(xi se xi sh);

% Output nodal displacements and stresses
fid1 = fopen(‘G1DBarDis.dat‘‘w‘);
fid2 = fopen(‘G1DBarStr.dat‘‘w‘);

fprintf(fid1‘%10s%10s%10s\n‘ ‘x‘ ‘ue‘‘uh‘);
fprintf(fid2‘%10s%10s%10s\n‘ ‘x‘ ‘se‘‘sh‘);

for j = 1 : nnodes
   fprintf(fid1‘%10.4f%10.4f%10.4f\n‘ xi(j) ue(j) uh(j));
   fprintf(fid2‘%10.4f%10.4f%10.4f\n‘ xi(j) se(j) sh(j));
end
   
fclose(fid1);
fclose(fid2);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6594  2009-09-09 18:01  《无网格法》书籍代码\FORTRAN程序库\DFCONSOL.LIB

     文件     780796  2009-09-09 18:01  《无网格法》书籍代码\FORTRAN程序库\DFOR.LIB

     文件     104648  2009-09-09 18:01  《无网格法》书籍代码\FORTRAN程序库\DFPORT.LIB

     文件       2112  2009-09-09 18:05  《无网格法》书籍代码\readme.txt

     文件    1621059  2009-09-09 18:03  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL\EOMLL.rar

     文件     925070  2009-09-09 18:00  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL\omll-3d.rar

     文件     847585  2009-09-09 17:59  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL\OMLL.rar

     文件     893712  2009-09-09 18:02  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL\Omll2D.rar

     文件     126025  2009-09-09 18:00  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL\plate.rar

     文件       6581  2009-09-09 17:58  《无网格法》书籍代码\第三章程序:一维伽辽金型无网格法MATLAB程序\EFG1D.rar

     文件       2890  2009-09-09 17:56  《无网格法》书籍代码\第三章程序:一维伽辽金型无网格法MATLAB程序\GBMM1D.m

     文件       2952  2009-09-09 17:54  《无网格法》书籍代码\第二章程序:一维移动最小二乘近似的MATLAB程序\MLS1D.m

     文件       3014  2009-09-09 17:54  《无网格法》书籍代码\第二章程序:一维移动最小二乘近似的MATLAB程序\MLS1DShape.m

     文件       2190  2009-09-09 17:55  《无网格法》书籍代码\第二章程序:一维移动最小二乘近似的MATLAB程序\Weight.m

     文件       5208  2009-09-09 17:57  《无网格法》书籍代码\第五章程序:一维MLPG法MATLAB程序\MLPG1D.m

     文件       3429  2009-09-09 17:59  《无网格法》书籍代码\第六章程序:一维最小二乘无网格法MATLAB程序\MWLS1D.m

     文件       2012  2009-09-09 17:56  《无网格法》书籍代码\第四章程序:一维配点型无网格法MATLAB程序\CBMM1D.m

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\FORTRAN程序库

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第七章程序:面向对象的二维无网格法程序OMLL

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第三章程序:一维伽辽金型无网格法MATLAB程序

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第二章程序:一维移动最小二乘近似的MATLAB程序

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第五章程序:一维MLPG法MATLAB程序

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第六章程序:一维最小二乘无网格法MATLAB程序

     目录          0  2009-09-12 14:29  《无网格法》书籍代码\第四章程序:一维配点型无网格法MATLAB程序

     目录          0  2009-09-12 14:29  《无网格法》书籍代码

----------- ---------  ---------- -----  ----

              5335877                    25


评论

共有 条评论