Пікірлер
@YasserMirzaBaig-d7f
@YasserMirzaBaig-d7f Ай бұрын
Can we perform manual ray tracing for the central receiver solar power system
@bulmaroverdugo8853
@bulmaroverdugo8853 5 ай бұрын
Sir, thsnks for the video, in my version of software dont have the icon of flux analysis, do you know why? Thanks so much for the support, gratting from Mexico
@mathi_s
@mathi_s 4 ай бұрын
Please install the latest version, you can find it in the GitHub.
@tm_muhammadnaufalhakim7397
@tm_muhammadnaufalhakim7397 5 ай бұрын
Thankyou🎉
@sarathsimon5636
@sarathsimon5636 5 ай бұрын
Hi sir, thank you very much for your help using this software, it helped a lot. I want to find out how we could get the circumferential distance vs the heat flux on the object. You did for surfaces where you ''Run Flux analysis''. Any form of assistance on this would be appreciated as well.
@sarathsimon5636
@sarathsimon5636 5 ай бұрын
This is for the binary file.
@mathi_s
@mathi_s 4 ай бұрын
I think you know the geometry size right or you check the dimension in the software it self. so based on that you can calculate the heat flux value.
@sarathsimon5636
@sarathsimon5636 7 ай бұрын
Thank you very much. Can you please make a video on how to import the file into ANSYS for the non uniform boundary condition?
@agricultureexams8842
@agricultureexams8842 7 ай бұрын
sir can u please share ua contact no?
@tm_muhammadnaufalhakim7397
@tm_muhammadnaufalhakim7397 8 ай бұрын
Sorry sir, how we know total irradiance in receiver?
@aditi_garg
@aditi_garg 10 ай бұрын
hello, very informative video. can you pls tell me how can I rotate a cpc geometry form N-S orientation to E-W orientation ? Directly changing from (0 0 1 0) to (1 0 0 0) does not work in tonatiuh.
@PuttaVenugopal
@PuttaVenugopal 11 ай бұрын
Sir For surface node is not created in heat flux generation can you please help me
@PuttaVenugopal
@PuttaVenugopal 11 ай бұрын
sir can you please flat plate compounded parabolic cocentrator how to calculate heat flux and ray tracing
@binitkumar7005
@binitkumar7005 Жыл бұрын
i tried to use elliptical shape of receiver by importing the CAD shape but when i tried to analyze the flux it says the surface node is missing. But i had already created the surface node to import the geometry. So can you help me related to this... the ray trace formation occurs but flux analysis is not working for imported CAD geometry
@杨维旭
@杨维旭 Жыл бұрын
u are soo good, thank u for help!
@RamanSingh-vf3ol
@RamanSingh-vf3ol 2 жыл бұрын
Can you explain how to get absorber circumferential angle Vs heat flux plot from contour or surface plot (variation with x, y coordinate of heat flux) obtained in soltrace or tonatiuh for absorber tube of parabolic trough collector
@RamanSingh-vf3ol
@RamanSingh-vf3ol 2 жыл бұрын
Can you explain? How to get absorber circumferential angle Vs heat flux distribution plot from contour or surface plot generated in soltrace or tonatiuh.
@omarelsayed6241
@omarelsayed6241 2 жыл бұрын
I have one more question. Should I use the same code if I am smulating linear frensel collector with horizontal receiver
@mathi_s
@mathi_s 2 жыл бұрын
SetDirectory[NotebookDirectory[]] side[{photonID_, x_, y_, z_, sideID_}, refSide_] := sideID == refSide file = FileNames["10rim-1_*.dat"] "Initialization of variables" "Number of Tonatiuh's binary data files to be processed" numberOfFiles = Length[file] "Radius of the flat disk receiver" rReceiver = 0.05 (*m*) "Power per photon as indicated in Tonatiuh's output file " \ Receiver_parameters.txt "" powerPerPhoton = 0.00000835633 (*W/m2*) "Number of elements in which we want to divide each side of the \ circumscribing square about the disk receiver" nElements = 100 "Length of the sides of the elements in which we are dividing the \ circumscribing square about the disk receiver" ds = (2 rReceiver)/nElements (*m*) "Area of the square elements in which we are dividing the \ circumscribing square about the disk receiver" elementArea = ds*ds (*m^2*) "Array of nElements by nElements with all the elements initialized to \ zero" totalPhotonsCounts = ConstantArray[0, {nElements, nElements}]; "Total number of photons reaching the back side of the flat disk \ receiver" totalNumberOfPhotons = 0 "Radius in meters of the minimum circle that contains all photons \ impinging on the back side of the receiver" rMin = 0. "Factor to convert number of photons within a given element of area \ into solar flux intensity" conversionFactor = powerPerPhoton/(elementArea*1000000) (*MW/m2*) For[i = 1, i <= numberOfFiles, ++i, fileRawData = BinaryReadList[file[[i]], "Real64", ByteOrdering -> +1]; filePhotonSet = Partition[fileRawData[[1 ;; Length[fileRawData]]], 5]; Clear[fileRawData]; fileValidPhoton = Select[filePhotonSet, side[#, 0] &] /. {photonID_, x_, y_, z_, sideID_} -> {x, z}; Clear[filePhotonSet]; rMin = Max[rMin, Sqrt[Max[fileValidPhoton /. {x_, z_} -> x*x + z*z]]]; Print["Iteration # ", i, ". Processing file: ", file[[i]], " rMin= ", rMin, " "]; fileNumberOfValidPhotons = Length[fileValidPhoton]; totalNumberOfPhotons = totalNumberOfPhotons + fileNumberOfValidPhotons; filePhotonCounts = BinCounts[ fileValidPhoton, {-rReceiver, rReceiver, ds}, {-rReceiver, rReceiver, ds}]; Clear[fileValidPhoton]; totalPhotonsCounts = totalPhotonsCounts + filePhotonCounts; Clear[filePhotonCounts]] For[i = 1, i <= numberOfFiles, ++i, fileRawData = BinaryReadList[file[[i]], "Real64", ByteOrdering -> +1];] filePhotonSet = Partition[fileRawData[[1 ;; Length[fileRawData]]], 5]; Clear[fileRawData]; fileValidPhoton = Select[filePhotonSet, side[#, 0] &] /. {photonID_, x_, y_, z_, sideID_} -> {y, z}; rMin = Max[rMin, Sqrt[Max[fileValidPhoton /. {y_, z_} -> y*y + z*z]]]; For[i = 1, i <= numberOfFiles, ++i, Print["Iteration # ", i, ". Processing file: ", file[[i]], " rMin= ", rMin, " "];] totalNumberOfPhotons = totalNumberOfPhotons + Length[fileValidPhoton]; totalPhotonsCounts = totalPhotonsCounts + BinCounts[ fileValidPhoton, {-rReceiver, rReceiver, ds}, {-rReceiver, rReceiver, ds}]; estimatedPowerAtReceiver = powerPerPhoton totalNumberOfPhotons/1000 (*kW*) print ("done")
@omarelsayed6241
@omarelsayed6241 2 жыл бұрын
can you plz send me the google drive link because the one in the description not working, thank you so much for so much. your videos helped me a lot in my bachelor thesis.
@mathi_s
@mathi_s 2 жыл бұрын
please check other comments.
@santoshsingh1282
@santoshsingh1282 2 жыл бұрын
sir pls send ur email id
@mathi_s
@mathi_s 2 жыл бұрын
@samer2wakim
@samer2wakim 2 жыл бұрын
Hi, thank you for this tutorial what if the receiver is not a flat disk, how can we change the code accordingly
@mathi_s
@mathi_s 2 жыл бұрын
sorry bro, I don't know.
@pritish247
@pritish247 2 жыл бұрын
I installed latest version of the software but after importing the 3D shape, software shows either 2D shape or changed shape of original 3D. Please Help...
@mathi_s
@mathi_s 2 жыл бұрын
sorry for the late comment. I'm not sure what you get caused. sometime complex model geometry can't be supported, if possible make it simple.
@aditi_garg
@aditi_garg 2 жыл бұрын
hi, I found your video very helpful. I was not able to access txt file from this google drive. I would really appreciate it if you could share it. I was running into some errors while running the code mentioned on GitHub tutorials
@mathi_s
@mathi_s 2 жыл бұрын
SetDirectory[NotebookDirectory[]] side[{photonID_, x_, y_, z_, sideID_}, refSide_] := sideID == refSide file = FileNames["10rim-1_*.dat"] "Initialization of variables" "Number of Tonatiuh's binary data files to be processed" numberOfFiles = Length[file] "Radius of the flat disk receiver" rReceiver = 0.05 (*m*) "Power per photon as indicated in Tonatiuh's output file " \ Receiver_parameters.txt "" powerPerPhoton = 0.00000835633 (*W/m2*) "Number of elements in which we want to divide each side of the \ circumscribing square about the disk receiver" nElements = 100 "Length of the sides of the elements in which we are dividing the \ circumscribing square about the disk receiver" ds = (2 rReceiver)/nElements (*m*) "Area of the square elements in which we are dividing the \ circumscribing square about the disk receiver" elementArea = ds*ds (*m^2*) "Array of nElements by nElements with all the elements initialized to \ zero" totalPhotonsCounts = ConstantArray[0, {nElements, nElements}]; "Total number of photons reaching the back side of the flat disk \ receiver" totalNumberOfPhotons = 0 "Radius in meters of the minimum circle that contains all photons \ impinging on the back side of the receiver" rMin = 0. "Factor to convert number of photons within a given element of area \ into solar flux intensity" conversionFactor = powerPerPhoton/(elementArea*1000000) (*MW/m2*) For[i = 1, i <= numberOfFiles, ++i, fileRawData = BinaryReadList[file[[i]], "Real64", ByteOrdering -> +1]; filePhotonSet = Partition[fileRawData[[1 ;; Length[fileRawData]]], 5]; Clear[fileRawData]; fileValidPhoton = Select[filePhotonSet, side[#, 0] &] /. {photonID_, x_, y_, z_, sideID_} -> {x, z}; Clear[filePhotonSet]; rMin = Max[rMin, Sqrt[Max[fileValidPhoton /. {x_, z_} -> x*x + z*z]]]; Print["Iteration # ", i, ". Processing file: ", file[[i]], " rMin= ", rMin, " "]; fileNumberOfValidPhotons = Length[fileValidPhoton]; totalNumberOfPhotons = totalNumberOfPhotons + fileNumberOfValidPhotons; filePhotonCounts = BinCounts[ fileValidPhoton, {-rReceiver, rReceiver, ds}, {-rReceiver, rReceiver, ds}]; Clear[fileValidPhoton]; totalPhotonsCounts = totalPhotonsCounts + filePhotonCounts; Clear[filePhotonCounts]] For[i = 1, i <= numberOfFiles, ++i, fileRawData = BinaryReadList[file[[i]], "Real64", ByteOrdering -> +1];] filePhotonSet = Partition[fileRawData[[1 ;; Length[fileRawData]]], 5]; Clear[fileRawData]; fileValidPhoton = Select[filePhotonSet, side[#, 0] &] /. {photonID_, x_, y_, z_, sideID_} -> {y, z}; rMin = Max[rMin, Sqrt[Max[fileValidPhoton /. {y_, z_} -> y*y + z*z]]]; For[i = 1, i <= numberOfFiles, ++i, Print["Iteration # ", i, ". Processing file: ", file[[i]], " rMin= ", rMin, " "];] totalNumberOfPhotons = totalNumberOfPhotons + Length[fileValidPhoton]; totalPhotonsCounts = totalPhotonsCounts + BinCounts[ fileValidPhoton, {-rReceiver, rReceiver, ds}, {-rReceiver, rReceiver, ds}]; estimatedPowerAtReceiver = powerPerPhoton totalNumberOfPhotons/1000 (*kW*) print ("done")
@swamindadisetti532
@swamindadisetti532 2 жыл бұрын
Can u place a video on LFR SOLAR RAY tracking using tonatiuh
@mathi_s
@mathi_s 2 жыл бұрын
I will try.
@swamindadisetti532
@swamindadisetti532 2 жыл бұрын
@@mathi_s ok
@victorgaladimawa6399
@victorgaladimawa6399 2 жыл бұрын
Thank you very much for this!
@mathszaitri1700
@mathszaitri1700 3 жыл бұрын
Hi, I installed tonatiuh but it does not show me CAD shape to import geometry please help me ... thank you in advance
@mathi_s
@mathi_s 3 жыл бұрын
Install latest version. github.com/iat-cener/tonatiuh/releases/tag/v2.2.4
@mathszaitri1700
@mathszaitri1700 3 жыл бұрын
@@mathi_s Thank you!
@satvikdosapati1547
@satvikdosapati1547 3 жыл бұрын
Hello, Please let me know when you will be posting the post processing video!
@mathi_s
@mathi_s 3 жыл бұрын
Please check this video kzbin.info/www/bejne/fYWXeKZqg9-bkM0
@suryavamshi2463
@suryavamshi2463 3 жыл бұрын
Hello, could you please help me with post-processing/ obtaining results from Tonatiuh software? Please share your mail Id or mail me at [email protected]. Thank you for your time.
@suryavamshi2463
@suryavamshi2463 3 жыл бұрын
How can we post-process this .dat file to get results such as Total power at absorber, etc?
@mathi_s
@mathi_s 3 жыл бұрын
Soon, I will make a video for a post-processing
@suryavamshi2463
@suryavamshi2463 3 жыл бұрын
@@mathi_s Thank you. But do you have any python file or something which I can use now? Sorry but I am in rush to submit my project work.