loadTruss.m
function truss = loadTruss(filename)
% lädt eine Fachwerkstruktur
% Parameter:
% filename Name der Datei (ohne Endung .truss)
% Felder von truss:
% x0 Gleichgewichtskoordinaten aller Punkte
% A Verbindungsmatrix (symmetrisch, auf der Diagonalen 0)
% N Zahl der beweglichen Massen
% m Größe einer Masse
% c Steifigkeit eines Balkens
fid = fopen(filename + ".truss", "r");
if (fid == -1)
fprintf("Datei %s.truss konnte nicht geöffnet werden\n", filename)
% Dummy-Rückgabewerte
truss.x0 = []; truss.A = []; truss.N = 0; truss.m = 0; truss.c = 0;
return
end
fgetl(fid);
dims = fscanf(fid, "%d %d\n", 2);
truss.x0 = fscanf(fid, "%f", dims');
fgetl(fid); % holt das \n von der x0-Zeile
fgetl(fid);
dims = fscanf(fid, "%d %d\n", 2);
truss.A = fscanf(fid, "%f", dims');
fgetl(fid); % holt das \n von der A-Zeile
fgetl(fid);
truss.N = fscanf(fid, "%d\n", 1);
fgetl(fid);
truss.m = fscanf(fid, "%f\n", 1);
fgetl(fid);
truss.c = fscanf(fid, "%f\n", 1);
fclose(fid);