ata1...3_" mean? Additionally what do I connect to _HBObjects? Windows or shading geometry? Then what is expected to come out of "windowBreps","shadeBreps" and HBObjWShades? I ask as it was skipped in your video tutorials. If I am not correct, please give me a hint where I can find it.
But I am obviously curious of what is the best way to test elements that substitute each other according to the schedule. If this was a tool this would be EXTREMELY powerful as it one of fundamental strategies in adaptive architecture.
Unfortunately, I do not know what happens behind the interface as before I have been an EDSL TAS user which is promoted at the AA school as user friendly).
The flow for the NatVent settings in the proposed settings is suitable for preliminary studies. However it would be helpful to control apertures by the weather data in a more tricky way. I mean that the input should be dynamic and obviously instead of using the outdoor temperature to open or close the window I would prefer to use the indoor DBT which appears dynamically while the conditions are calculated. Anyway you should know better!
Thank you for prompt help.
…
g a problem though when trying to set a daylight simulation with some determined radiance parameters. Here's the problem: After many tries I think I found out that setting -ab = 6 and at the same time -aa = .05 creates some sort of problem, because when I try to do so My PC blocks for several minutes, without letting me manually end processes from taskmanager, and when I'm able again to enter grasshopper, i get the following error:
"Solution exception:index out of range: 0"
Does this really depends on the parameters and values I found out or is it related to something else? Is the problem relative to the structure of HoneyBee or is it just relative to my specific case (and maybe PC)? Is it possible to solve it, and if yes, how?
Atteched you find my rhino model and my grasshopper file.
Thanks in advance for your help and again many compliments!
Luigi…
The type of recipe appears to be related to the problem, because de error desolves when I connect the component to a different recipe.
A screenshot of the complete error message is in the attachment.
Error text:
0. Annual climate-based analysis1. The component is checking ad, as, ar and aa values. This is just to make sure that the results are accurate enough.2. Good to go!3. Current working directory is set to: c:\ladybug\unnamed\annualSimulation\4. Rotating the scene for 41 degrees5. Runtime error (TypeErrorException): unsupported operand type(s) for +=: 'str' and 'bool'6. Traceback: line 6509, in transform, "<string>" line 1665, in writeRADAndMaterialFiles, "<string>" line 193, in main, "<string>" line 258, in script
Many thanks in advance…
Salimzadeh
Assistant: Saeede Kalantari a Fabrication Project for “Structural Systems” BA Course;
Participants: Maryam Ahmadi, Amir Ansaripour, Kimia Bagheri, Mohammad Hassan Habibi, Mohammad Mehdi Zamani, Sam Sabzevari, Zeynab Seyed Zehtab, Mohammad Mehdi Shahroudi, Niloofar Taheri, Masoumeh Abedini, Pedram Feyzi, Asma Karamouz, Kimia Karbalayi, Hamed Kamalzadeh, Fateme Kianinejhad, Maryam Mohammaddoust, Faeze Motamedian, Romina Mehrbod, Sara Naderi, Yasaman Nejati, Kimia Nourinejhad, Morteza Vaziri, Mehragin Baghi, Sana Motallem, Helpers: Milad Amiri, Soroush Raesi, Mahla Behrouz, Alireza Sheykhlar, Shadi Khaleghi, Mohaddese Taheri, Alireza Mohammadi, Mehrnoush Kia
Photography: Sara Ahmadi, Hasan Habibi
Video production: Shayan Khalilbeigi
Special Thanks To Dr. K. Taghizadeh, Dr. H. Mazaherian, Dr. Y. Eslami and Mr.Aliari
With Support Of: Center Of Excellency In Architecture Technology – CEAT - , Collage of Fine Arts University of #Tehran, ‘Art And 4th Dimension’ Symposium, Iran #Fablab and #Fologram
Rhino/Grasshopper and C# Definitions of form-Finding and Member-generation :
http://bit.ly/2RUKc5i…
oCommonSDK, I modified a working C# component that does something similar (ReduceMesh, written by Andrew Heumann). Both scripts are attached.
Aside from changing the component name and eliminating the P parameter, I made two modifications to the script:1) changed line 87 from private void RunScript(Mesh M, double P, ref object A) to: private void RunScript(Mesh M, ref object A)2) changed line 93 from: Rhino.RhinoApp.RunScript("_-ReduceMesh _ReductionPercentage " + Convert.ToString(P) + " _Enter", false); to: Rhino.RhinoApp.RunScript("_-MatchMeshEdge " + " _Enter", false);When I run the ReduceMesh component, the mesh object I feed it gets baked, the ReduceMesh command is run, the temporary object is deleted, and the reduced mesh result is returned. (Thanks, Andrew).When I run the MatchMeshEdge component, the mesh object I feed it is baked, the MatchMeshEdge command is run, but the temporary object is not deleted and no result is returned. The runtime error reads: "Sequence contains no elements (line 0)". I have a feeling that the command line string I am handing to RunScript is incomplete. When I enter it manually on the Rhino command line I see that it wants a mesh and three parameters. Of course I can hit Enter to accept the default values, but when you invoke a command through RunScript do you have to supply all parameters regardless? Also, where would I find details on the argument types that the command wants? For example, the last parameter reads "RatchetMode=On" or "RatchetMode=Off". How do I know if the type is Bool or the literal string "On" or "Off"?I am a complete novice at this so any help you can provide would be greatly appreciated! …
being driven by the wii nunchuck... But, here's my issue. I tried it first by having the output from the listener be a 6-digit number... so, I'm using the (CInt(Val(StoredValue))) command and it's writing out 181130... and I can easily split it up selecting the Left(x,3) or Right(x,3)... I first rant that number through a Format("{0:000000}",x) so that even if one of the accx or accy numbers were a 2-digit number (so my overall number would only have 5-digits)... with this Format function... I'm always assured a 6-digit number. And this method works... except...
If the first group of numbers coming in only has 2-digits... So, lets say the accelerometer read out of the first one (accx) is 89. Let's say the accy read out is 119. So, when I run this through the Format function to make it have at least 6 digits, my number now reads 011989. So, if I were to take the first three numbers on the right, my read out would be 989... which is much higher than my expected (60-180 range that is really coming over the Serial Port)... So, I'm back to where I started... in that I need to figure out a better way to split up the data.
Which brings me to your method. I tried it as well... in fact, I added a comma in the serial readout, so the string coming out of the listener reads 89,119. So, I can use your trick to go look for a delimeter and then read to the left and right a certain number of digits... The problem I still have is that the data going into the function is a string, and thus even if I split the 3 digits to the right of the comma out (so, my output says 119)... it's still a string, and my number parameter is still red. In your picture above, was your original 181 130 a number or a string? My guess is that it was understood as a number, because your number parameters at the end are accepting the value. But, in my case... I'm still stuck with the inability to convert a string to a number... Does this make sense? And are their any other workarounds?…
Added by Andy Payne at 9:42am on September 3, 2009
mplex the models are. If we are running multi-room E+ studies, that will take far longer to calculate.
Rhino/Grasshopper = <1%
Generating Radiance .ill files = 88%
Processing .ill files into DA, etc. = ~2%
E+ = 10%
Parallelizing Grasshopper:
My first instinct is to avoid this problem by running GH on one computer only. Creating the batch files is very fast. The trick will be sending the radiance and E+ batch files to multiple computers. Perhaps a “round-robin” approach could send each iteration to another node on the network until all iterations are assigned. I have no idea how to do that but hope that it is something that can be executed within grasshopper, perhaps a custom code module. I think GH can set a directory for Radiance and E+ to save all final files to. We can set this to a local server location so all runs output to the same location. It will likely run slower than it would on the C:drive, but those losses are acceptable if we can get parallelization to work.
I’m concerned about post-processing of the Radiance/E+ runs. For starters, Honeybee calculates DA after it runs the .ill files. This doesn’t take very long, but it is a separate process that is not included in the original Radiance batch file. Any other data manipulation we intend to automatically run in GH will be left out of the batch file as well. Consolidating the results into a format that Design Explorer or Pollination can read also takes a bit of post-processing. So, it seems to me that we may want to split up the GH automation as follows:
Initiate
Parametrically generate geometry
Assign input values, material, etc.
Generate radiance/ E+ batch files for all iterations
Calculate
Calc separate runs of Radiance/E+ in parallel via network clusters. Each run will be a unique iteration.
Save all temp files to single server location on server
Post Processing
Run a GH script from a single computer. Translate .ill files or .idf files into custom metrics or graphics (DA, ASE, %shade down, net solar gain, etc.)
Collect final data in single location (excel document) to be read by Design Explorer or Pollination.
The above workflow avoids having to parallelize GH. The consequence is that we can’t parallelize any post-processing routines. This may be easier to implement in the short term, but long term we should try to parallelize everything.
Parallelizing EnergyPlus/Radiance:
I agree that the best way to enable large numbers of iterations is to set up multiple unique runs of radiance and E+ on separate computers. I don’t see the incentive to split individual runs between multiple processors because the modular nature of the iterative parametric models does this for us. Multiple unique runs will simplify the post-processing as well.
It seems that the advantages of optimizing matrix based calculations (3-5 phase methods) are most beneficial when iterations are run in series. Is it possible for multiple iterations running on different CPUs to reference the same matrices stored in a common location? Will that enable parallel computation to also benefit from reusing pre-calculated information?
Clustering computers and GPU based calculations:
Clustering unused computers seems like a natural next step for us. Our IT guru told me that we need come kind of software to make this happen, but that he didn’t know what that would be. Do you know what Penn State uses? You mentioned it is a text-only Linux based system. Can you please elaborate so I can explain to our IT department?
Accelerad is a very exciting development, especially for rpict and annual glare analysis. I’m concerned that the high quality GPU’s required might limit our ability to implement it on a large scale within our office. Does it still work well on standard GPU’s? The computer cluster method can tap into resources we already have, which is a big advantage. Our current workflow uses image-based calcs sparingly, because grid-based simulations gather the critical information much faster. The major exception is glare. Accelerad would enable luminance-based glare metrics, especially annual glare metrics, to be more feasible within fast-paced projects. All of that is a good thing.
So, both clusters and GPU-based calcs are great steps forward. Combining both methods would be amazing, especially if it is further optimized by the computational methods you are working on.
Moving forward, I think I need to explore if/how GH can send iterations across a cluster network of some kind and see what it will take to implement Accelerad. I assume some custom scripting will be necessary.…