Friday, April 29, 2022

Laser Diode: OpenScad and CFD with https://www.simscale.com/

 1) 

$fa = 1;

$fs = 0.1;


//dimensions in mm//


lD_a=5;// laser Diode length //

lD_b=1;// laser Diode width //

lD_c=1;// laser Diode height


ld_spacing_between=1.5;// spacing between laser diodes //


bR_noCut_a=66.5; //bigRectangular noCut//

bR_noCut_b=18; //bigRectangular noCut//

bR_noCut_c=13; //bigRectangular noCut//


    bRc_a=30;//bottom Rectangular Cut//

    bRc_b=18;//bottom Rectangular Cut//

    bRc_c=2;//bottom Rectangular Cut//

    

sSR_a=11;// Side Small REctangular

holeCapThickness=2;

radius=2.5;

  

    translate([0,0,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([0,0+ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([0,0+2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([0,0-ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([0,0-2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    

    

    


    translate([8,0,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

   translate([8,0+ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([8,0+2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([8,0-ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([8,0-2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);


    

    


       translate([16,0,bR_noCut_c/2])

   cube([lD_a,lD_b,lD_c],center=true);


   translate([16,0+ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([16,0+2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([16,0-ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([16,0-2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

 

 


        translate([-8,0,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

       translate([-8,0+ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-8,0+2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-8,0-ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-8,0-2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    

    


       translate([-16,0,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

  translate([-16,0+ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-16,0+2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-16,0-ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

    

    translate([-16,0-2*ld_spacing_between,bR_noCut_c/2])

    cube([lD_a,lD_b,lD_c],center=true);

 


 

    

    module line(start, end, thickness = 0.5) {

    hull() {

        translate(start) sphere(thickness);

        translate(end) sphere(thickness);

    }

}


//line([0,0,0], [5,23,42]);//

//line([((bR_noCut_a/2)-(sSR_a)-radius-(holeCapThickness/2)),0,-bR_noCut_c/4], [0,0,-bR_noCut_c/4]);

   

difference() {

    cube([bR_noCut_a,bR_noCut_b,bR_noCut_c],center=true);

    //bottom Rectangular Cut//

    translate([0,0,-bR_noCut_c/2])

    cube([bRc_a,bRc_b,bRc_c],center=true);

    

//(bR_noCut_a/2)-

    

    //Side Rectagular Full Cut both sides//

    translate([0,bR_noCut_b/2,0])

    cube([44.5,10,13],center=true);

    translate([0,-bR_noCut_b/2,0])

    cube([44.5,10,13],center=true);

    

    //Side Rectagular Cut both sides//

    translate([-bR_noCut_a/2,0,bR_noCut_c/2])

    cube([sSR_a*2,bR_noCut_b,bR_noCut_c],center=true);

    translate([bR_noCut_a/2,0,bR_noCut_c/2])

    cube([sSR_a*2,bR_noCut_b,bR_noCut_c],center=true);

    

    //one big Holes in x-direction

    translate([0,0,bR_noCut_c/4])

    rotate([0,90,0])

    //color("red");

    color("red") cylinder(r=radius, h=bR_noCut_a-sSR_a*2-holeCapThickness*2, center=true);

    

    //two Holes in x-direction   

    translate([-(bR_noCut_a/2)-holeCapThickness,0,-bR_noCut_c/4])//-3.5

    rotate([0,90,0])

    cylinder(r=radius, h=(bR_noCut_a/2)+holeCapThickness*2,center=true);

    translate([(bR_noCut_a/2)+holeCapThickness,0,-bR_noCut_c/4])//-3.5

    rotate([0,90,0])

    cylinder(r=radius, h=(bR_noCut_a/2)+holeCapThickness*2,center=true);//35

    

    //two Holes in z-direction

    // ((bR_noCut_a/2)-(sSR_a/2)-holeCapThickness-radius)

    translate([((bR_noCut_a/2)-(sSR_a)-radius-(holeCapThickness/2)),0,0])

    cylinder(r=radius, h=bR_noCut_c-holeCapThickness*2,center=true);

      translate([((-bR_noCut_a/2)+(sSR_a)+radius+(holeCapThickness/2)),0,0])

    cylinder(r=radius, h=bR_noCut_c-holeCapThickness*2,center=true);

    

    //translate([19,0,-10])

    //cylinder(r=radius, h=40,center=true);    

}


2) Geometries


3) Edit in CAD mode


4) Topological Entity Set


5) Click 'Create Simulations' 





Conjugate heat transfer


6)