% CH size: (6, eleNum); % two-scale compliance function [c,U] = compliance(CH, nodeNum, freedofs, fixeddofs,F,iK, jK, optKE) sK = getK(CH,optKE); K = sparse(iK, jK, sK); K = (K + K') / 2; K = boundaryK(K, fixeddofs); U = zeros(2 * nodeNum, 1); U(freedofs) = K(freedofs, freedofs) \ F(freedofs); c = F' * U; end