outlier's notebooks

  • Engineering Scaffold Leg Loads - /outlier/engineering-scaffold-leg-loads
    Last edited 6 years ago
    console.log('indepenedent script'); // standard variables var tube_kg_per_m = 4.4; var tube_width = 0.05; var gravity = 0.0981; var board_width = 0.25; var board_kn_per_area = 0.25; class SuperTube extends Tube { constructor(name, length, qty, orinentationm, superThickness) { super(name, length, qty, orinentation); this.superThickness = superThickness; } getKg() { return 0; } hello() { console.log('hello'); } } let x = new SuperTube('x', 12, 13, 'z', 122); console.log(x.getKg(), x.hello()); class Tube { constructor(name, length, qty, orinentation) { this.name = name; this.qty = qty; this.length = length; this.orinentation = orinentation; } getKg() { return this.qty * this.length * this.getTubeKgPerM(); } getArea() { return this.qty * this.length * this.getTubeWidth(); } getKn() { return this.qty * this.length * this.getTubeKgPerM() * this.getGravity(); } getGravity() { return 0.0981; } getTubeWidth() { return 0.05; } getTubeKgPerM() { return 4.4; } } // function return independent properties function independent(inner_boards, outer_boards, lift_height, baywidth, transom_spacing){ var output = {}; // independent variables var transom_qty = Math.ceil(baywidth/transom_spacing); var inner_width = ((inner_boards*0.5)+outer_boards)*board_width; var outer_width = inner_boards*board_width*0.5; var brace_length = Math.sqrt(Math.pow(inner_boards*board_width,2)+Math.pow(lift_height,2)); // inner component parameters var inner_components = [ {'name': 'standard', 'length': lift_height, 'qty': 1, 'orientation': 'z'}, {'name': 'ledger', 'length': baywidth, 'qty': 1, 'orientation': 'x'}, {'name': 'transom', 'length': inner_width, 'qty': transom_qty, 'orientation': 'y'}, {'name': 'brace', 'length': brace_length*0.6, 'qty': 1, 'orientation': 'z'}, ]; output.inner_components = []; for (let component of inner_components) { let tube = new Tube( component.name, component.length, component.qty, component.orientation ); output.inner_components.push(tube); console.log(tube.getArea()); } output.inner_kg = 0; output.inner_kn = 0; output.inner_tube_area_y = 0; output.inner_tube_area_x = 0; for (let tube of output.inner_components) { output.inner_kg += tube.getKg(); output.inner_kn += tube.getKn(); if(tube.orientation == 'z' || tube.orientation == 'y'){ output.inner_tube_area_y += tube.getArea(); }; if(tube.orientation == 'z' || tube.orientation == 'x'){ output.inner_tube_area_x += tube.getArea(); }; } return output; } console.log(independent(4,2,2,1.8,0.8));