0001 function [Kgg,Pg,kmax]=PenaltySystemMatrices(grids,loads,materials,kflag,pflag, sparsity,inputs,analysis_type,Kgg,Pg);
0002
0003
0004
0005
0006
0007
0008 kmax=max(max(abs(Kgg)));
0009
0010 if kflag,
0011
0012
0013 for l=1:length(loads),
0014
0015 if ~isempty(loads(l).load),
0016
0017 Kpenalty=PenaltyCreateKMatrix(loads(l).load,grids,materials,inputs,analysis_type,kmax);
0018
0019
0020 Kgg=AddElemMatrix(Kpenalty,Kgg);
0021 end
0022 end
0023
0024 else
0025 Kgg={};
0026 end
0027
0028 if pflag,
0029
0030
0031 for l=1:length(loads),
0032 if ~isempty(loads(l).load),
0033
0034 Ppenalty=PenaltyCreatePVector(loads(l).load,grids,materials,inputs,analysis_type,kmax);
0035
0036
0037 Pg=AddElemVector(Ppenalty,Pg);
0038 end
0039 end
0040 else
0041 Pg={};
0042 end