Sub Project_32_ES(ByVal VecType, m, n, m1, n1 As Integer) ' 32_Onda estacionaria_ES ' Updated: 4/05/24 ' Created by: Ariel Becerra (3/05/24) ' Modified by: _________________ ' This is the code of your new project. ' Steps to embed the code to ScienSolar: ' Note 1: The number 32 in the name of this function must match the one in the list of the CONFIG sheet for this project. If not, please correct it. ' Note 2: This code will be integrated into the main code to automate the download of the project. ' Note 3: The formulas and cell values generated here correspond only to the first 30 columns from INICIO to the right in the sheet. All your formulas and values are recommended to be written in these columns. ' Step 1. Go to the CONFIG sheet and add a short name and the number of your new project to the last row in the projects list. ' Step 2. Make sure that the list of projects in CONFIG sheet has the correct ascending numbering. ' Step 4. Open the VBA editor (Alt + F11 in Windows or Fn + Option + F11 in macOS). To avoid mistakes, make sure you only have one workbook open. ' Step 5. On the left, in the project explorer, select a non full module (or add a new one). ' Step 6. Select all the code in this file, copy and paste it at the end of the existing code in the module (or in the new one). ' Step 7. To load the project and to check it in a new sheet, go to the CONFIG sheet and click the New Sheet button, then select the project from the list and click the +Vector button. ' Step 8. Click any XYZ button to get the project in the coordinate system. Enjoy it! ' Visit www.sciensolar.com for news and updates of © ScienSolar. Cells(m1 -1, n1 + 2).FormulaR1C1 ="1" Cells(m1 + 0, n1 + 2).FormulaR1C1 ="=CONFIG!R3C4" Cells(m1 + 0, n1 + 3).FormulaR1C1 ="600" Cells(m1 + 0, n1 + 6).FormulaR1C1 ="=CONFIG!R3C8" Cells(m1 + 0, n1 + 7).FormulaR1C1 ="1" Cells(m1 + 0, n1 + 8).FormulaR1C1 ="Ariel Becerra (3/05/24)" Cells(m1 + 1, n1 + 1).FormulaR1C1 ="A6" Cells(m1 + 1, n1 + 2).FormulaR1C1 ="=CONFIG!R4C4" Cells(m1 + 1, n1 + 3).FormulaR1C1 ="=CONFIG!R4C5" Cells(m1 + 1, n1 + 4).FormulaR1C1 ="=CONFIG!R4C6" Cells(m1 + 1, n1 + 5).FormulaR1C1 ="0" Cells(m1 + 1, n1 + 6).FormulaR1C1 ="=CONFIG!R4C8" Cells(m1 + 1, n1 + 7).FormulaR1C1 ="10" Cells(m1 + 2, n1 + 2).FormulaR1C1 ="=CONFIG!R5C4" Cells(m1 + 2, n1 + 3).FormulaR1C1 ="0.01" Cells(m1 + 2, n1 + 4).FormulaR1C1 ="=CONFIG!R5C6" Cells(m1 + 2, n1 + 5).FormulaR1C1 ="15" Cells(m1 + 2, n1 + 6).FormulaR1C1 ="=CONFIG!R5C8" Cells(m1 + 2, n1 + 7).FormulaR1C1 ="0" Cells(m1 + 3, n1 + 0).FormulaR1C1 ="s1" Cells(m1 + 3, n1 + 2).FormulaR1C1 ="=CONFIG!R6C4" Cells(m1 + 3, n1 + 3).FormulaR1C1 ="300" Cells(m1 + 3, n1 + 4).FormulaR1C1 ="=CONFIG!R6C6" Cells(m1 + 3, n1 + 5).FormulaR1C1 ="15" Cells(m1, n1 + 9).FormulaR1C1 = "HELP" Dim HELPtxt as String HELPtxt = "HELP Comment:" & Chr(10) & _ " 1. To create new projects, press the +Vector button without selecting any project in the project list." & Chr(10) & _ " 2. To load an existing project, select a project from the list and then press +Vector" & Chr(10) & _ " 3. To export a new project, press the Get Code button. The code will be saved on your PC in the same directory where this file is located." & Chr(10) & _ " " & Chr(10) & _ " If necessary, use this comment to create your own HELP comment for your project. To do this, simply replace this text with your own (Right Click, Edit Comment) and avoid special characters." & Chr(10) & _ " After pressing Get Code, your comment will be updated and saved in the same txt file as your project and will be uploaded after the project appears in ScienSolar.To include the new project in ScienSolar, perform the following steps:" & Chr(10) & _ " a) Open the txt file where the project was saved; b) copy all the contents of the file and paste it in the VBA Editor of the Excel file ScienSolar; b) add the project name and number to the list on the CONFIG sheet; a) Verify that the number is correlative and that it agrees with the project header number, if not modify it in the header or in the list as necessary;î" & Chr(10) & _ " " & Chr(10) & _ " Right click to delete or edit this comment." & Chr(10) & _ " " & Chr(10) & _ " For documentation on ScienSolar, please visit www.sciensolar.com. ScienSolar was designed for 3D physics modeling in MS Excel.It is normal that for some projects it takes time to load it in the sheet, it depends on the number of objects in your project and the performance of your PC." On Error Resume Next Cells(m1 , n1 + 9).Comment.Text Text:= HELPtxt If m = m1 + 0 Then ' vector 5 Cells(m + 3, n + -1).FormulaR1C1 ="1" Cells(m + 3, n + 0).FormulaR1C1 ="s1" Cells(m + 3, n + 2).FormulaR1C1 ="=CONFIG!R6C4" Cells(m + 3, n + 3).FormulaR1C1 ="300" Cells(m + 3, n + 4).FormulaR1C1 ="=CONFIG!R6C6" Cells(m + 3, n + 5).FormulaR1C1 ="15" Cells(m + 4, n + -1).FormulaR1C1 ="1" Cells(m + 4, n + 0).FormulaR1C1 ="183" Cells(m + 4, n + 1).FormulaR1C1 ="=IF(R[34]C[4]=1,R[35]C[4],IF(R[34]C[4]=2,R[36]C[4],IF(R[34]C[4]=3,R[37]C[4],"""")))" Cells(m + 4, n + 12).FormulaR1C1 ="ONDA SONORA ESTACIONARIA EN UN GAS" Cells(m + 5, n + -1).FormulaR1C1 ="101" Cells(m + 5, n + 0).FormulaR1C1 ="1" Cells(m + 5, n + 1).FormulaR1C1 ="=IF(OR(R[21]C[4]=1,R[21]C[4]=4,R[21]C[4]=5),0,1)" Cells(m + 7, n + -1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 0).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 4).FormulaR1C1 ="DATOS INICIALES" Cells(m + 7, n + 8).FormulaR1C1 ="1" Cells(m + 8, n + -1).FormulaR1C1 ="0" Cells(m + 8, n + 0).FormulaR1C1 ="44649" Cells(m + 8, n + 1).FormulaR1C1 ="0" Cells(m + 8, n + 2).FormulaR1C1 ="=IF(R[-4]C[-1]>1,"" <-- Variable coordinates"","""")" Cells(m + 8, n + 4).FormulaR1C1 ="L =" Cells(m + 8, n + 5).FormulaR1C1 ="1.5" Cells(m + 9, n + -1).FormulaR1C1 ="0" Cells(m + 9, n + 0).FormulaR1C1 ="0" Cells(m + 9, n + 1).FormulaR1C1 ="=R12C7*IMREAL(IMEXP(COMPLEX(0,(R13C7*R5C9-R18C7*R11C2))))" Cells(m + 9, n + 2).FormulaR1C1 ="=IF(R[-5]C[-1]>1,"" <-- Field formulae"","""")" Cells(m + 9, n + 4).FormulaR1C1 ="A =" Cells(m + 9, n + 5).FormulaR1C1 ="5000" Cells(m + 10, n + -1).FormulaR1C1 ="1" Cells(m + 10, n + 0).FormulaR1C1 ="0" Cells(m + 10, n + 1).FormulaR1C1 ="1" Cells(m + 10, n + 4).FormulaR1C1 ="w =" Cells(m + 10, n + 5).FormulaR1C1 ="559" Cells(m + 10, n + 6).FormulaR1C1 ="559" Cells(m + 11, n + -1).FormulaR1C1 ="1" Cells(m + 11, n + 0).FormulaR1C1 ="0" Cells(m + 11, n + 1).FormulaR1C1 ="1" Cells(m + 11, n + 4).FormulaR1C1 ="v =" Cells(m + 11, n + 5).FormulaR1C1 ="=SQRT(R[12]C*R[10]C*R[9]C/R[11]C)" Cells(m + 11, n + 6).FormulaR1C1 ="9032" Cells(m + 3, n + 1).Interior.Color = "3243501" Cells(m + 3, n + 1).Font.Size = "11" Cells(m + 3, n + 1).Font.name = "Calibri" Cells(m + 4, n - 1).Value = 1 Cells(m1 + 1, n1 + 1).Value = "s2" Call AddNewVector end if ' vector ends If m = m1 + 9 Then ' vector 4 Cells(m + 3, n + -1).FormulaR1C1 ="2" Cells(m + 3, n + 0).FormulaR1C1 ="s2" Cells(m + 3, n + 4).FormulaR1C1 ="Phase: =" Cells(m + 3, n + 5).FormulaR1C1 ="=-(2*R[3]C*R[-4]C+PI())" Cells(m + 3, n + 6).FormulaR1C1 ="3001" Cells(m + 4, n + -1).FormulaR1C1 ="1" Cells(m + 4, n + 0).FormulaR1C1 ="183" Cells(m + 4, n + 1).FormulaR1C1 ="=IF(R[25]C[4]=1,R[26]C[4],IF(R[25]C[4]=2,R[27]C[4],IF(R[25]C[4]=3,R[28]C[4],"""")))" Cells(m + 4, n + 6).FormulaR1C1 ="4014" Cells(m + 5, n + -1).FormulaR1C1 ="101" Cells(m + 5, n + 0).FormulaR1C1 ="1" Cells(m + 5, n + 1).FormulaR1C1 ="=IF(OR(R[12]C[4]=2,R[12]C[4]=4,R[12]C[4]=5),0,1)" Cells(m + 5, n + 4).FormulaR1C1 ="Vector de onda:" Cells(m + 6, n + 4).FormulaR1C1 ="k=" Cells(m + 6, n + 5).FormulaR1C1 ="=R[-5]C/R[-4]C" Cells(m + 7, n + -1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 0).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 1).FormulaR1C1 ="=R[1]C" Cells(m + 8, n + -1).FormulaR1C1 ="0" Cells(m + 8, n + 0).FormulaR1C1 ="44649" Cells(m + 8, n + 1).FormulaR1C1 ="0" Cells(m + 8, n + 2).FormulaR1C1 ="=IF(R[-4]C[-1]>1,"" <-- Variable coordinates"","""")" Cells(m + 9, n + -1).FormulaR1C1 ="0" Cells(m + 9, n + 0).FormulaR1C1 ="0" Cells(m + 9, n + 1).FormulaR1C1 ="=R12C7*IMREAL(IMEXP(COMPLEX(0,(R13C7*R5C9+R18C7*R[-1]C[-1]+R[-6]C[4]))))" Cells(m + 9, n + 2).FormulaR1C1 ="=IF(R[-5]C[-1]>1,"" <-- Field formulae"","""")" Cells(m + 9, n + 4).FormulaR1C1 ="VELOCIDAD DEL SONIDO:" Cells(m + 10, n + -1).FormulaR1C1 ="1" Cells(m + 10, n + 0).FormulaR1C1 ="0" Cells(m + 10, n + 1).FormulaR1C1 ="1" Cells(m + 10, n + 4).FormulaR1C1 ="=IF(RC[-4]>0,"" For aditional formula (FA),"","""")" Cells(m + 11, n + -1).FormulaR1C1 ="1" Cells(m + 11, n + 0).FormulaR1C1 ="0" Cells(m + 11, n + 1).FormulaR1C1 ="1" Cells(m + 11, n + 3).FormulaR1C1 ="Temp." Cells(m + 11, n + 4).FormulaR1C1 ="T (¡K) =" Cells(m + 11, n + 5).FormulaR1C1 ="293.15" Cells(m + 3, n + 1).Interior.Color = "16731512" Cells(m + 3, n + 1).Font.Size = "11" Cells(m + 3, n + 1).Font.name = "Calibri" Cells(m + 4, n - 1).Value = 1 Cells(m1 + 1, n1 + 1).Value = "s1+s2" Call AddNewVector end if ' vector ends If m = m1 + 18 Then ' vector 3 Cells(m + 3, n + -1).FormulaR1C1 ="3" Cells(m + 3, n + 0).FormulaR1C1 ="s1+s2" Cells(m + 3, n + 3).FormulaR1C1 ="200" Cells(m + 3, n + 4).FormulaR1C1 ="R (J/(mol‡K)=" Cells(m + 3, n + 5).FormulaR1C1 ="8.314" Cells(m + 4, n + -1).FormulaR1C1 ="1" Cells(m + 4, n + 0).FormulaR1C1 ="183" Cells(m + 4, n + 1).FormulaR1C1 ="=IF(R[16]C[4]=1,R[17]C[4],IF(R[16]C[4]=2,R[18]C[4],IF(R[16]C[4]=3,R[19]C[4],"""")))" Cells(m + 4, n + 2).FormulaR1C1 =" " Cells(m + 4, n + 3).FormulaR1C1 ="Masa molar" Cells(m + 4, n + 4).FormulaR1C1 ="M (kg/mol)=" Cells(m + 4, n + 5).FormulaR1C1 ="0.029" Cells(m + 5, n + -1).FormulaR1C1 ="101" Cells(m + 5, n + 0).FormulaR1C1 ="1" Cells(m + 5, n + 1).FormulaR1C1 ="=IF(OR(R[3]C[4]=3,R[3]C[4]=5),0,1)" Cells(m + 5, n + 3).FormulaR1C1 ="Dil adiab." Cells(m + 5, n + 4).FormulaR1C1 ="Gamma =" Cells(m + 5, n + 5).FormulaR1C1 ="1.4" Cells(m + 7, n + -1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 0).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 1).FormulaR1C1 ="=R[1]C" Cells(m + 8, n + -1).FormulaR1C1 ="0" Cells(m + 8, n + 0).FormulaR1C1 ="44649" Cells(m + 8, n + 1).FormulaR1C1 ="0" Cells(m + 8, n + 2).FormulaR1C1 ="=IF(R[-4]C[-1]>1,"" <-- Variable coordinates"","""")" Cells(m + 8, n + 4).FormulaR1C1 ="Ver" Cells(m + 8, n + 5).FormulaR1C1 ="3" Cells(m + 9, n + -1).FormulaR1C1 ="2" Cells(m + 9, n + 0).FormulaR1C1 ="2" Cells(m + 9, n + 1).FormulaR1C1 ="=R12C7*IMREAL(IMEXP(COMPLEX(0,(R13C7*R5C9-R18C7*R29C2))))+R12C7*IMREAL(IMEXP(COMPLEX(0,(R13C7*R5C9+R18C7*R[-1]C[-1]+R[-15]C[4]))))" Cells(m + 9, n + 2).FormulaR1C1 ="=IF(R[-5]C[-1]>1,"" <-- Field formulae"","""")" Cells(m + 10, n + -1).FormulaR1C1 ="1" Cells(m + 10, n + 0).FormulaR1C1 ="0" Cells(m + 10, n + 1).FormulaR1C1 ="1" Cells(m + 10, n + 4).FormulaR1C1 ="Nodo:" Cells(m + 10, n + 5).FormulaR1C1 ="=((3*PI()/2-R[-16]C/2))/R[-13]C-R[-20]C" Cells(m + 11, n + -1).FormulaR1C1 ="1" Cells(m + 11, n + 0).FormulaR1C1 ="0" Cells(m + 11, n + 1).FormulaR1C1 ="1" Cells(m + 11, n + 4).FormulaR1C1 ="=IF(R[-1]C[-4]>0,""<-- use these cells."","""")" Cells(m + 3, n + 1).Interior.Color = "6968388" Cells(m + 3, n + 1).Font.Size = "11" Cells(m + 3, n + 1).Font.name = "Calibri" Cells(m + 4, n - 1).Value = 1 Cells(m1 + 1, n1 + 1).Value = "L" Call AddNewVector end if ' vector ends If m = m1 + 27 Then ' vector 2 Cells(m + 3, n + -1).FormulaR1C1 ="4" Cells(m + 3, n + 0).FormulaR1C1 ="L" Cells(m + 3, n + 4).FormulaR1C1 ="Lambda=" Cells(m + 3, n + 5).FormulaR1C1 ="=PI()/R[-15]C" Cells(m + 4, n + -1).FormulaR1C1 ="1" Cells(m + 4, n + 0).FormulaR1C1 ="183" Cells(m + 4, n + 2).FormulaR1C1 =" " Cells(m + 5, n + -1).FormulaR1C1 ="1" Cells(m + 5, n + 0).FormulaR1C1 ="1" Cells(m + 5, n + 1).FormulaR1C1 ="0.5" Cells(m + 7, n + -1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 0).FormulaR1C1 ="0" Cells(m + 7, n + 1).FormulaR1C1 ="=-1.5*R[-25]C[4]" Cells(m + 8, n + -1).FormulaR1C1 ="0" Cells(m + 8, n + 0).FormulaR1C1 ="=R[-7]C[5]*300" Cells(m + 8, n + 1).FormulaR1C1 ="0" Cells(m + 8, n + 2).FormulaR1C1 ="=IF(R[-4]C[-1]>1,"" <-- Variable coordinates"","""")" Cells(m + 8, n + 4).FormulaR1C1 ="TIPO DE " Cells(m + 9, n + -1).FormulaR1C1 ="0" Cells(m + 9, n + 0).FormulaR1C1 ="=R[-33]C[3]*R[-28]C[5]/R[-34]C[3]" Cells(m + 9, n + 1).FormulaR1C1 ="0" Cells(m + 9, n + 2).FormulaR1C1 ="=IF(R[-5]C[-1]>1,"" <-- Field formulae"","""")" Cells(m + 9, n + 4).FormulaR1C1 ="COORDENADAS:" Cells(m + 10, n + -1).FormulaR1C1 ="3" Cells(m + 10, n + 0).FormulaR1C1 ="0" Cells(m + 10, n + 1).FormulaR1C1 ="1" Cells(m + 10, n + 4).FormulaR1C1 ="=IF(RC[-4]>0,"" For aditional formula (FA),"","""")" Cells(m + 11, n + -1).FormulaR1C1 ="3" Cells(m + 11, n + 0).FormulaR1C1 ="0" Cells(m + 11, n + 1).FormulaR1C1 ="1" Cells(m + 11, n + 4).FormulaR1C1 ="=IF(R[-1]C[-4]>0,""<-- use these cells."","""")" Cells(m + 11, n + 5).FormulaR1C1 ="1" Cells(m + 3, n + 1).Interior.Color = "255" Cells(m + 3, n + 1).Font.Size = "11" Cells(m + 3, n + 1).Font.name = "Calibri" Cells(m + 4, n - 1).Value = 1 Cells(m1 + 1, n1 + 1).Value = "N" Call AddNewVector end if ' vector ends If m = m1 + 36 Then ' vector 1 Cells(m + 3, n + -1).FormulaR1C1 ="5" Cells(m + 3, n + 0).FormulaR1C1 ="N" Cells(m + 3, n + 4).FormulaR1C1 ="=IF(R[-1]C[1]=1,"" 1- Cart.-->>"",""|"")" Cells(m + 3, n + 5).FormulaR1C1 ="=IF(R[-1]C=1,""o[2]x=[0;0]o2[""&R[-31]C*300/R[-37]C[-2]/100&""]y=[0;""&R[-31]C*300/R[-37]C[-2]&""]o3[2]z=[0;0]color=[0]origin[cart.]=[0;0;0]tfactor=0,002297794s"","""")" Cells(m + 3, n + 6).FormulaR1C1 =" " Cells(m + 4, n + -1).FormulaR1C1 ="1" Cells(m + 4, n + 0).FormulaR1C1 ="9" Cells(m + 4, n + 1).FormulaR1C1 ="=""o[2]x=[0;0]o2[""&R[-10]C[4]*R[-37]C[2]/R[-38]C[2]&""]y=[""&R[-12]C[4]*R[-37]C[2]/R[-38]C[2]&"";""&R[-32]C[4]*300/R[-38]C[2]&""]o3[2]z=[0;0]color=[0]origin[cart.]=[0;0;0]tfactor=0s""" Cells(m + 4, n + 4).FormulaR1C1 ="=IF(R[-2]C[1]=2,"" 2- Cyl -->>"",IF(R[-2]C[1]=3,"""",IF(R[-2]C[1]=1,"""",""|"")))" Cells(m + 4, n + 5).FormulaR1C1 ="=IF(R[-2]C=2,""o[5000]x=[-20000;20000]o2[1000]y=[0;30000]o3[0]z=[0;0]color=[10000]origin[cart.]=[0;0;0]tfactor=0,002297794s"","""")" Cells(m + 5, n + -1).FormulaR1C1 ="1" Cells(m + 5, n + 0).FormulaR1C1 ="1" Cells(m + 5, n + 1).FormulaR1C1 ="0.3" Cells(m + 5, n + 4).FormulaR1C1 ="=IF(R[-3]C[1]=3,"" 3- Sph -->>"",""|"")" Cells(m + 5, n + 5).FormulaR1C1 ="=IF(R[-3]C=3,""s[10]r=[150;150]s2[10]phi=[0;360]s3[10]theta=[0;180]color=[8]origin[cart.]=[0;0;0]tfactor=0,003322398s"","""")" Cells(m + 6, n + 4).FormulaR1C1 ="||||||||||||||||||||||||" Cells(m + 7, n + -1).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 0).FormulaR1C1 ="=R[1]C" Cells(m + 7, n + 1).FormulaR1C1 ="=R[1]C" Cells(m + 8, n + -1).FormulaR1C1 ="0" Cells(m + 8, n + 0).FormulaR1C1 ="42962.0031474609" Cells(m + 8, n + 1).FormulaR1C1 ="0" Cells(m + 8, n + 2).FormulaR1C1 ="=IF(R[-4]C[-1]>1,"" <-- Variable coordinates"","""")" Cells(m + 9, n + -1).FormulaR1C1 ="0" Cells(m + 9, n + 0).FormulaR1C1 ="=R[-17]C[5]*R[-42]C[3]/R[-43]C[3]" Cells(m + 9, n + 1).FormulaR1C1 ="0" Cells(m + 9, n + 2).FormulaR1C1 ="=IF(R[-5]C[-1]>1,"" <-- Field formulae"","""")" Cells(m + 10, n + -1).FormulaR1C1 ="1" Cells(m + 10, n + 0).FormulaR1C1 ="0" Cells(m + 10, n + 1).FormulaR1C1 ="1" Cells(m + 10, n + 4).FormulaR1C1 ="=IF(RC[-4]>0,"" For aditional formula (FA),"","""")" Cells(m + 11, n + -1).FormulaR1C1 ="3" Cells(m + 11, n + 0).FormulaR1C1 ="0" Cells(m + 11, n + 1).FormulaR1C1 ="2" Cells(m + 11, n + 4).FormulaR1C1 ="=IF(R[-1]C[-4]>0,""<-- use these cells."","""")" Cells(m + 3, n + 1).Interior.Color = "255" Cells(m + 3, n + 1).Font.Size = "11" Cells(m + 3, n + 1).Font.name = "Calibri" Cells(m + 4, n - 1).Value = 1 Cells(m1 + 1, n1 + 1).Value = "" Cells(m1 + 2, n1 - 1).Value = 5 end if ' vector ends If m = m1 + 36 Then Call BlackWhiteDesk Call PutEqBut end if ' actualizar hoja End Sub