run Assemblage_DataFile1.m %% Translation stage ty = struct(); ty.m = smiData.Solid(4).mass+smiData.Solid(6).mass+smiData.Solid(7).mass+smiData.Solid(8).mass+smiData.Solid(9).mass+4*smiData.Solid(11).mass+smiData.Solid(24).mass+smiData.Solid(25).mass+smiData.Solid(28).mass; ty.k.ax = 1e7/4; %z ty.k.rad = 9e9/4; %x ty.k.rrad = 9e9/4; %y ty.ksi.ax = 10; ty.ksi.rad = 10; ty.ksi.rrad = 10; ty = updateDamping(ty); %% Tilt ry = struct(); ry.m = smiData.Solid(26).mass+smiData.Solid(18).mass+smiData.Solid(10).mass; ry.k.h = 357e6/4; %y ry.k.rad = 555e6/4; %x ry.k.rrad = 238e6/4; %z ry.ksi.h = 10; ry.ksi.rad = 10; ry.ksi.rrad = 10; ry = updateDamping(ry); %% Spindle rz = struct(); rz.m = smiData.Solid(12).mass+6*smiData.Solid(20).mass+smiData.Solid(19).mass; rz.k.ax = 2e9/2; %z rz.k.rad = 7e8/2; %x rz.k.rrad = 7e8/2; %y rz.ksi.ax = 10; rz.ksi.rad = 10; rz.ksi.rrad = 10; rz = updateDamping(rz); %% Hexapod Symétrie hexapod = struct(); %% NASS n = struct(); %% function element = updateDamping(element) field = fieldnames(element.k); for i = 1:length(field) element.c.(field{i}) = 1/element.ksi.(field{i})*sqrt(element.k.(field{i})/element.m); end end