Académique Documents
Professionnel Documents
Culture Documents
clear
% Définir les constantes
l = 20; % Remplacez par la valeur appropriée
h = 20; % Remplacez par la valeur appropriée
Qg=1;
k=1;
H=0.1;
Tex=18;
Tin=0;
nddlpN=1; % nombre de ddl par noeud
nddlpEl=4; % nombre de ddl par element
conn=genererconn2D(meshParams);
% conn=[1 2 3 4
% 3 4 5 6
% 4 5 7 8];
% Initialiser l'intégrale
integral_B = 0;
for i=1:nEl
% Assemblage
% for iel=1:nEl
% nods=conn(iel,:);
% index = globalIndex(nods);
% [Q, KT] = assVecMat(Q,KT,Qe,K,index);
% end
% % Used Functions
% function index = globalIndex(nods)
% n = length(nods);
% index = zeros(4,1);
% for nod = 1:n
% index(2*nod-1:2*nod) = [2*nods(nod)-1, 2*nods(nod)]; % Ajustement
des indices
% end
% end
% function [Q, kT] = assVecMat(Q,kT,Qe,K,index)
%
%
% % Ajouter Qe aux éléments de Q correspondants
% Q(index) = Q(index) + Qe;
%
% % Ajouter K aux éléments de kT correspondants
% kT(index, index) = kT(index, index) + K;
% end
Fonctions :
genererCoords2D(MeshParams)
function Coord = genererCoords2D(MeshParams)
% generate 2D coordinates for the structured domain
%
%---------------------inputs:
% MeshParams: geometry properties
% MeshParams.ControlPoints: Domain control points,
% format: 2D: [Xmin Xmax;Ymin Ymax]
% MeshParams.NumElemsXYZ: Number of elements in each direction
% in the domain, format: 2D: [XDir YDir]
%
%--------------------outputs:
% FeCoord: FE nodal coordinates [size: (NumFeNodes,2)]
%
%
%% step-1: get the geometry information
ControlPoints = MeshParams.ControlPoints;
NumNodesXDir = MeshParams.NumElemsXYZ(1,1) + 1;
NumNodesYDir = MeshParams.NumElemsXYZ(1,2) + 1;
end
genererconn2D(MeshParams)
function conn = genererconn2D(MeshParams)
% generate 2D connectivity matrix for the structured domain
%
%---------------------inputs:
% MeshParams: geometry properties
% MeshParams.ControlPoints: Domain control points,
% format: 2D: [Xmin Xmax;Ymin Ymax]
% MeshParams.NumElemsXYZ: Number of elements in each direction
% in the domain, format: 2D: [XDir YDir]
%
%--------------------outputs:
% FeTopo: FE elemental connectivity [size: (NumFeElems,4)]
%
%
%% step-1: get the geometry information
NumElemsXDir = MeshParams.NumElemsXYZ(1,1);
NumElemsYDir = MeshParams.NumElemsXYZ(1,2);
NumNodesXDir = NumElemsXDir + 1;
Coord = genererCoords2D(meshParams);
conn=genererconn2D(meshParams);
NumNE=NumNoeudEl(:,1);
for k=1:nEl
cordxk=Coord(conn(k,NumNE),1);
cordyk=Coord(conn(k,NumNE),2);
CoordXY=[cordxk cordyk];
end