of Space, 1984) and specified in (Turner A. , “Depthmap: A Program to Perform Visibility Graph Analysis, 2007), intuitively describe the difficulty of getting to other spaces from a certain space. In other words, the higher the entropy value, the more difficult it is to reach other spaces from that space and vice-versa. We compute the spatial entropy of the node as using the point depth set:
(11)
“The term is the maximum depth from vertex and is the frequency of point depth *d* from the vertex” (ibid). Technically, we compute it using the function below, which itself uses some outputs and by-products from previous calculations:
Algorithm 4: Entropy Computation
Given the graph (adjacency lists), Depths as List of List of integer, DepthMap as Dictionary of integer
Initialize Entropies as List(double)
For node as integer in range [0, |V|)
integer How_Many_of_D=0
double S_node=0
For depth as integer in range [1, Depths[node].Max()]
How_Many_of_D=DepthMap.Branch[(node,depth)].Count
double frequency= How_Many_of_D/|V|
S_node = S_node - frequency * Math.Log(frequency, 2)
Next
Entropies [node] = S_node
Next
…
ll.
What it does have to do with is an ancient and basically fundamental design problem with Windows itself. This problem is typically called "DLL Hell". In the beginning ((Windows 2) when RAM was expensive and scarce, MS enabled Windows programs to use many different small modules that were loaded dynamically (DLL = Dynamic Link Library) as needed. It quickly became common practice for different programs to use the same DLL file to do the same thing.
But nasty problems happened when Program A updated a DLL in a way the caused Program B, which used the same DLL, to crash. MS spent literally thousands of support hours resolving these problems. That was very expensive.
So starting with Windows 7 (I think) Microsoft tried to reduce this kind of issue by establishing the WINSXS directory. It's purpose is to store all the versions of a DLL file used by different programs. It also has internal links so that different programs references to a given DLL are mapped to the copy of that DLL Windows has saved in WINSXS for each application. This keeps all the same-named DLLs separate and lets each program use it's own copy.
That's the theory, and it works OK as long as everything with WINSXS is OK. But - if somethings goes wrong with WINSXS, then the program can't find the DLL it needs, and you get the "Windows Side-by-Side" error message. This prevents the program from running.
There are no tools for dealing with WINSXS. The best method I know of to fix WINSXS problems is to completely uninstall the failing program and reinstall it. This either will work, or it won't. If it fails to work you can try restoring from a prior Restore Point. If that fails you will probably have to reinstall Windows and start over with reinstalling all your software.
Remember, I said it was a bad problem.
There is another issue with WINSXS that gets little attention, and that is that it gets larger every time you install a program. This is because Windows does not do a good job of removing things from WINSXS. It seems that with WIN 8/10 MS has improved this slightly, but WINSXS will still get increasingly large over time.
This means that at some point it will either fail in some way or consume all the space on your boot disk. So a good idea is to do a complete boot disk reformat/Windows reinstall every few years.…
pper" in the command line in Rhino:
"Unable to load Grasshopper.dll plug-in: Rhino version not specified."
Details of the command line are as follows:
Command: GrasshopperRhino.NET plug-in: C:\Program Files\Rhinoceros 4.0\Plug-ins\Grasshopper\Grasshopper.dll> - referenced assembly count: 20> - mscorlib> - Microsoft.VisualBasic> - System.Windows.Forms> - GH_IO> - System.Drawing> - System> - RhinoCommon> - GH_Util> - OpenTK.GLControl> - QWhale.Editor> - QWhale.Syntax> - QWhale.Syntax.Parsers> - System.Core> - System.Design> - System.Xml> - System.Data> - OpenTK> - QWhale.Common> - System.Xml.Linq> - System.ServiceModel> Rhino.NET error: unable to locate a reference to Rhino_DotNET.DLL> Unable to load Grasshopper.dll plug-in: Rhino version not specified.
I tried creating the new user and looks like that one works too, but I do need my current "user" profile as there are a lot of things already set up well, do not want to miss those.
If someone could advise me on where to look for the problem?
Thank you,
Artem
…
where each is made into a grid. I am then using ptMorph3dList to distribute objects from a list of objects around each ring independently.
I am using a matrix of data where each column of data is 145 unique values (measured sky luminance). And i have about 200 columns, each represents a time series measurement of the sky dome (one day total).
Everything is working great when i reference a list of mesh objects to distribute using ptMorph3dList. But i actually want to do something a bit more simple.
I just want to distribute from a list of objects, (petals.PNG) each of which is multiple BREPs. I dont think ptMorphList can do this, and i am not interested in morphing the geometry in this case. I just want to assign a particular petal object (from 1-4) to a location on the ring (with proper orientation to the surface normal) based on an assessment of the measured luminance value from my column of data (low to high, e.g. 0 - 10,000).
Any suggestions for how to do this? Can ptMorphList accommodate these petal objects that i have created somehow? Is there a better approach using paneling tools? Or a way to do this using more basic commands?
A more basic way of asking this question would be something like this: "How can i evenly (by surface area) distribute 145 objects over a hemisphere, where, for each object it is a cube, cone, or cylinder depending on the value of a column of numerical data with 145 observations?
Then, i would like to substitute far more complex objects (or groups of objects) for the cube, cone, cylinder.
What i am trying to do is drive a dynamic surface with data from high dynamic range images of the sky, where the luminance data has been binned into 145 sky subdivisions (klems patches).
Files attached. Any suggestions would be appreciated. Having great fun with Paneling Tools!
…
sion):
When I run the analysis: it shows: solution exception: expected index value got str
Length of the results [=1] is not equal to the number of mesh faces [=72]
What is the source of length of the results?
Question 1_2_For the 004_gridBasedAnalysis (new version):
I attached new box by adding new breps, and the floor shows the numbers on the floor.
The result would change when I changed the opening ratio in step 7, but it would not change when lower or higher the opening ratio in step 6. Therefore, I am confused of the work of index for opening ratio in step 6.
Question 2 _For illuminanceAnalysis
I would like to attach customized geometry for window, so I tried this file.
The floor brep is unable to be loaded when I open the “ illuminanceAnalysis” file that you posted online, but the window brep is loadable.
If I would like to analyze different geometry of fenestration, such as perforated screen, should I attach the screen to the window brep?
Question 3_For Shading for daylighting
I would like to do the shading effect based on grid Analysis, so I add floor in the original file but it shows error “ index out of range: 0”.
If I would like to use different geometry of louvers, such as teethed blind, what can I do for that?
Above all, I would like to analyze different geometry of fenestration systems, such as special louvers or perforated screens, so I would like to attach those complex geometry to daylight analysis. When I went through the workshop video on youtube, I guess those analysis is mainly based on glazing, so I am still confused that how I can connect different geometry of fenestration to Ladybug and Honeybee. Is there any example file that shows analysis of perforated screen or similar design?
Thank you so much for your reply.…
and 7 floors) depending on the size of their areas of surfaces. I managed to do it. Then I tried to divide buildings into frames/staircases (more or less). Then, I wanted to assign appropriate numbers to the proper frame/staircase. Like I did it before with whole buildings. Here is a problem. I'm lost in the lists. Could somebody help me with it? Disscution about lines and boolean regions
Columns in Excel: A - year B - population number C - % of kids in 0-2 age D - % of kids in 3-6 age
…
- nickname is rather the best approach - and not on active group, but that's irrelevant anyway).
Step back (assuming that you are talking about the "Tens_from_random_blah_blah" definition):
1. Engineering is the art of demystifying (or we are promising that anyway, he he). This means that you start defining (better: outlining) some topology for things based on some "generic" rules (like the ones applied for the masts,cables,cones etc etc). These things are kept in some kind of structure (Lists, DataTrees etc). Things are few in 99.99999% of cases (i.e. : even the biggest membrane "module" has, say, 20-50 masts per "module").
2. Then ... handling things "individually" (mostly modifying) becomes the most critical part. See this (an x "possible" solution by combining a myriad of "options" : a no cones membrane solution, in plain English):
3. But the above is impossible (for more than obvious reasons). You should deploy masts in some high/low sequence in order to achieve some meaningful convex/concave formation that could work.
4. This "works" : 5. This doesn't:
6. This works partially (the formation at the back is "flat" == undo able):
7. This is utterly kitsch (and faulty as the case6 - the back portion):
So it's quite obvious that without a (quite complex) capability to individually control things (in this occasion : mast heights) the whole definition is a waste of computer time. Additionally the more the solution is "demystified" (some curve is defined, some random points are created, some masts are in place, some cables appear etc etc) the more additional constrains are required in order to "narrow" the possibilities (In plain English : sliders should control other sliders as regards their min/max values, true/false, you/me etc etc).
Remember that we are talking about ONE (mast height) out of a myriad things that you should control "manually" (it's utterly pointless to mastermind some kind of "generic" rules - or use naive attractors etc etc) .You'll see the difference when I'll completely reform the definition by adding individual control upon anything.
PS: what about the blocks? (the real life stuff that actually make any solution possible). Can you imagine a 2nd set of "restrictions" imposed by "a child to his parent"? (Assembly/Component modeling , that is).
more soon
…
uick answers. Below you will find some suggestions, but don't think of them as rules and especially don't think of them as guarantees.
1. Choose a descriptive title for your post
Don't call your question "Help!" or "I have a problem" or "Deadline tonight!", but actually describe the problem you are having.
2. Be succinct but clear in your wording
People need to know some details about your problem in order to understand what sort of answers would satisfy you, but nobody cares about how angry your boss or how bad your teacher or how tight your deadline is. Talk about the problem and only the problem. If you don't speak English well, you should probably post in your native language as well as providing a Google Translation of your question.
3. Attach minimal versions of all the relevant files
If you have a GH/GHX file you have a question about, attach it to the post. Don't expect that people will recreate a file based on a screen-shot because that's a lot of pointless work. It's also a good idea to remove everything non-essential from a GH file. You can use the 'Internalise Data' menu option to cut everything to the left of a parameter:
If you're importing curves or Breps or meshes from Rhino, you can also internalise them so you won't have to post a 3DM file as well as a GH file. If you do attach large files, consider zipping them first. Do not use RAR, Ning doesn't handle it.
It is especially a good idea to post files that don't require any non-standard components if at all possible. Not everyone has Kangaroo or Hoopsnake or Geco installed so if your file relies on those components, it might not open correctly elsewhere.
4. Include a detailed image of the GH file if it makes sense
If your question is about a specific (group of) components, consider adding a screenshot of the file in the text of the post. You can use the Ctrl+Shift+Q feature in Grasshopper to quickly create nice screenshots with focus rectangles such as this:
5. Include links to online resources if possible
If you have a question about Schwarz Minimal surfaces, please link to a website which talks about these.
6. Create new topics rather than continuing old ones
It's usually better to start a fresh question, even if there's already a discussion that kinda sorta tangentially touches upon the same issue. Please link to that discussion, but start anew.
7. This is not a 'do my work for me' group
Many of us like to help, but it's good to see effort on our part being matched by effort on your part. Questions in the form of 'I need to do X but cannot be bothered to try and learn the software' will (and should) go unanswered.
7b. Similarly, questions in the form of 'How do I quickly recreate this facade that took a team of skilled professionals four months to figure out?' have a very low success rate.
--
David Rutten
Lead Grasshopper Development
Robert McNeel & Associates…
Added by David Rutten at 12:58pm on October 1, 2013
ting.
Thanks
Rania
** Warning ** IP: Note -- Some missing fields have been filled with defaults. See the audit output file for details.
** Warning ** Version: in IDF="'8.2.7'" not the same as expected="8.2"
** Warning ** ManageSizing: For a zone sizing run, there must be at least 1 Sizing:Zone input object. SimulationControl Zone Sizing option ignored.
** Warning ** ManageSizing: For a plant sizing run, there must be at least 1 Sizing:Plant object input. SimulationControl Plant Sizing option ignored.
************* Testing Individual Branch Integrity
************* All Branches passed integrity testing
************* Testing Individual Supply Air Path Integrity
************* All Supply Air Paths passed integrity testing
************* Testing Individual Return Air Path Integrity
************* All Return Air Paths passed integrity testing
************* No node connection errors were found.
************* Beginning Simulation
************* Simulation Error Summary *************
** Warning ** The following Report Variables were requested but not generated
** ~~~ ** because IDF did not contain these elements or misspelled variable name -- check .rdd file
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR TOTAL COOLING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR TOTAL HEATING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE PACKAGED TERMINAL HEAT PUMP TOTAL COOLING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE PACKAGED TERMINAL HEAT PUMP TOTAL HEATING ENERGY, Frequency=Hourly
************* Key=*, VarName=CHILLER ELECTRIC ENERGY, Frequency=Hourly
************* Key=*, VarName=BOILER HEATING ENERGY, Frequency=Hourly
************* Key=*, VarName=FAN ELECTRIC ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR LATENT HEATING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR LATENT COOLING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR SENSIBLE HEATING ENERGY, Frequency=Hourly
************* Key=*, VarName=ZONE IDEAL LOADS SUPPLY AIR SENSIBLE COOLING ENERGY, Frequency=Hourly
************* Key=*, VarName=SYSTEM NODE MASS FLOW RATE, Frequency=Hourly
************* Key=*, VarName=SYSTEM NODE TEMPERATURE, Frequency=Hourly
************* Key=*, VarName=SYSTEM NODE RELATIVE HUMIDITY, Frequency=Hourly
************* There are 3 unused schedules in input.
************* There are 5 unused week schedules in input.
************* There are 13 unused day schedules in input.
************* Use Output:Diagnostics,DisplayUnusedSchedules; to see them.
*************
************* ===== Recurring Surface Error Summary =====
************* The following surface error messages occurred.
*************
************* Base Surface does not surround subsurface errors occuring...
************* Check that the GlobalGeometryRules object is expressing the proper starting corner and direction [CounterClockwise/Clockwise]
*************
** Warning ** Base surface does not surround subsurface (CHKSBS), Overlap Status=No-Overlap
** ~~~ ** The base surround errors occurred 1 times.
** ~~~ ** Surface "839A5ADACCE44BC0AF00_GLZP_31" misses SubSurface "839A5ADACCE44BC0AF00_GLZP_31_GLZ_31"
** Warning ** Base surface does not surround subsurface (CHKSBS), Overlap Status=Partial-Overlap
** ~~~ ** The base surround errors occurred 1 times.
** ~~~ ** Surface "839A5ADACCE44BC0AF00_GLZP_34" overlaps SubSurface "839A5ADACCE44BC0AF00_GLZP_34_GLZ_34"
*************
** ~~~ ** The base surround errors occurred 2 times (total).
*************
************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.
************* EnergyPlus Sizing Error Summary. During Sizing: 2 Warning; 0 Severe Errors.
************* EnergyPlus Completed Successfully-- 7 Warning; 0 Severe Errors; Elapsed Time=00hr 07min 35.94sec…