nd stress of a plate that is supported at two opposite sides (rotational degrees of freedom are allowed) and gravity load is applied. By now I can only verify the displacement of the plate with a deviation of less than 3 % using ANSYS Workbench. Kirchhoff's plate theory as an analytical approach gives a similar result with 10 % deviation.
The van Mises stress and Principal stress results in Karamba are approximately 200 times higher than the results in ANSYS and the analytical results. I tried to find the mistake for several days now and would appreciate any help or similar problems with validating the shell stresses.
Here are the values of the plate:
length: 1 m, width: 0.2 m, thickness: 0.01 m
Material: Steel 'S235' (standard)
resulting gravity load: 0.157 kN
displacement in Karamba: 0.000583 m
stress in Karamba: 116 kN/cm² (=1160 MPa = 500 % utilization!)
stress in ANSYS: 0.57 kN/cm² (=5.7 MPa)
The utilization of 500 % for a steel plate under its own dead weight makes we wonder what is wrong... See the grasshopper definition and the picture attached.
Best regards and thanks for any help,
Robert…
ome struggling i managed to get the effect i wanted but i have three problems:
1) i can't really scale these, hexagons were moved in the easiest way, so i have no control over the pattern
2) i feel that i made it pretty messy with all the dispatches, rotations etc - does it make the definition run slow? how could i simplify my definition?
3) most important i have no idea how to transfer it to hexagonal grid (so i can use jpg as attractor) for a bigger pattern. i tried starting from the hexagonal grid but couldn't get it and eventually got lost, but maybe thats the right way?
Pardon my english, hope i will get some help from you, have a good day :)…
edefining the axis variables, logarithmic scales, display thresholds, better marking management - or at least add contrast!
Hey Fred,
thanks for the feedback! This is a basic version, and personally I used a custom component to read and parse the history files from the canvas to be able to e.g. scroll through generations and solutions or display more solutions at once (via pathes, mostly requires modification of the initial setup) ...
but you are right. I would love to bring the solution's navigation directly into the rhino viewport but I think that would be a major hack .. unless you can give me a hint how to do that. the displaying and user-preference-handling are besides a re-entrant history, some more algorithms and parallelization the next things to tackle, but display is definitely one of the easiest, so ... soon! work will begin in january i guess, since the project then starts i hope - but it will start for sure.
best
r
…
advanced and it has some bottlenecks that could be great to solve.
Beginners could find interesting the method used to extract values from an image that uses a custom colour scheme to represent data (is not possible to extract hue values directly) or the simple displacement method used. These are the curves that follows the colors in the reference color gradient used by NASA in RGB (up) and HSV space:
You can see that there is no linearity or constant change in any channel, either RGB or HSV space.
There is some bottlenecks in the definition that you must take care about: data comparation component (Find Similar Members) and surface closest point (Surface CP). If you want to improve it, please do it, but send me the modified version ;)
Take care of not raise or push down the values in sliders without saving or know perfectly how much data your computer is able to calculate without memory problems. The main sample image is really big and the more resolution you set, more memory it will take to sample and calculate.
Thanks to Andrea Graziano for data links :)
And...Have fun!
Link to my blog post: Blurrypaths…
re_Never_Ends_V666".
3. Delete the left C# that does the Ziggurat (and feeds the truss maker with the "skin").
4. Remove all the comments of type "don't touch ..." > be brave.
5. Create any spiral surface (like the ones shown as demos) in Rhino. Or Any List of surfaces (say: one spiral surface and some others - but better start with ONE test surface). DO NOT use trimmed surfaces (only my "pro" C# truss maker does this - but it's incredibly complex to handle it). In fact ... you can use them ... but forget it, for the moment.
6. Feed this green GH component shown (aka: the Red pill [Matrix], he he) with your surface(s) > surrender to the crazy world of trusses.
7. Listen to some appropriate stuff .
…
y using the Honeybee_Update Honeybee component.
The video below (best viewed in full-screen mode) provides an idea of what these components are capable of being used for:
The video below shows how these components can be used in an existing Honeybee project (for additional links please open this video in youtube):
I have uploaded two examples as Hydra files that show how these components can be used for grid-point and image-based simulations:
Example1 : Grid Point Calculations
Example2: Image based simulation
Finally, a more esoteric application is demonstrated in this video:
These components are still in the beta-testing stage. Some of the limitations of the components are:
1. Only Type C photometry IES files are supported at present.
2. Rhino is likely to get sluggish if there are too many luminaires (i.e. light fixtures) present in a scene.
3. Due to the spectral limitations of the ray-tracing software (RADIANCE), simulations involving color mixing might not be physically realizable.
Additional details about photometric and spectral calculations are probably an overkill for this forum. However, I'd be glad to answer any related questions. Please report any bugs or request new features either on this forum or on Github.
Mostapha, Leland Curtis, Reinhardt Swart and Dr. Richard Mistrick provided valuable inputs during the development of these components.
Thanks,
Sarith
Update 16th January 2017:
An example with some new components and bug fixes since the initial release announcement can be found here
…
square units. Then you have an integral number of fragments on each side. This means that if all fragments need to have the same surface area, you can only have the following possibilities for side A:
1 fragment = 100 square units
2 fragments = 50 square units each
3 fragments = 33⅓ square units each
4 fragments = 25 square units each
5 fragments = 20 " "
6 fragments = 16⅔ " "
etc.
For side B, the numbers are mostly different
1 fragment = 300 unit²
2 fragments = 150 unit²
3 fragments = 100 unit²
4 fragments = 75 unit²
For side C they are different still. Unless you join fragments across on both sides of the edges of the box, I very much doubt you'll be able to pull this off.
The solution I attached will create fragments as identical as possible, but it's a very boring outcome...
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
mple problem.
Imagine you're dividing a space (100m²) into two rooms, one of which (room A) should be 60m², the other (room B) 40m². Now it follows that the sum of both rooms must always add up to 100m². And if you make one room smaller by 5m², the other one gets bigger by 5m².
The simplest expression that would convert room areas into a fitness value is, I think:
Abs(A - 40) + Abs(B - 60)
or, in English, the sum total of the discrepancies between the actual areas and the desired areas.
If the rooms are both 50m² we get a fitness of:
Abs(50-40) + Abs(50-60) = 20
If room A equals 10m² and room B equals 90m², we get:
Abs(10-40) + Abs(90-60) = 60
If both rooms are exactly right, we get:
Abs(40-40) + Abs(60-60) = 0
So the point here is to minimize fitness, and once the fitness has reached zero we know we're home free.
But this is a very straightforward case. What if we're trying to optimize a problem, while knowing there's no way on Earth we'll be able to solve all constraints? This is after all what Evolutionary solvers are good at. So what if the problem is not as clear cut?
This time try to imagine we want every room to be 50m², but all the rooms are too small. Let's write down three cases like before:
(Room A = 30m², Room B = 40m²)
Abs(30 - 50) + Abs(40 - 50) = 30
(Room A = 35m², Room B = 35m²)
Abs(35 - 50) + Abs(35 - 50) = 30
(Room A = 25m², Room B = 45m²)
Abs(25 - 50) + Abs(45 - 50) = 30
Holy Crap! They're all the same! Well this is no good, it's like three bald men fighting over a comb. Even though all solutions fail to meet constraints, they certainly shouldn't all be equally fit. Let's assume for the time being we'd rather have both rooms fail to meet demands in equal amounts instead of one room being ok-ish and the other being way off. How can we add this assumption to the fitness function?
Basically we need to exaggerate large departures from the ideal and trivialize small departures. Our naive fitness function was linear, our new and improved fitness function must be non-linear. The simplest non-linear function is the parabola (x²). So let's see where that gets us.
Abs(30 - 50)² + Abs(40 - 50)² = 500
Abs(35 - 50)² + Abs(35 - 50)² = 450
Abs(25 - 50)² + Abs(45 - 50)² = 650
Phew... The case where both room fail to meet demands equally has the lowest value (and thus the highest fitness) whereas the most extreme discrepancy has the highest value (and thus the lowest fitness).
This approach is called Least Squares fitting and it's one of the most common fitting algorithms in statistics.
Whether you decide to weigh your competing factors equally or differently, and whether you decide to treat deviations linearly or non-linearly is entirely up to you. It requires you have a decent understanding of the problem at hand and also a decent understanding of the mathematical behaviour of the fitness function.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 6:16am on February 25, 2011
imension(new Plane(new Point3d(5, 3, 0), Vector3d.ZAxis), new Point2d(0, 0), new Point2d(10, 10), new Point2d(5, 5));
myDim.TextHeight = 500;
doc.Objects.AddLinearDimension(myDim);
The bold line seems to be not working because I can't see any changes of text size in the rhino document.
2. I failed to add my DimStyle Object to the LinearDimension object I created above.
Rhino.DocObjects.DimensionStyle myDimStyle = new Rhino.DocObjects.DimensionStyle();
myDimStyle.ArrowLength = 100; myDimStyle.TextGap = 200; myDimStyle.TextHeight = 500;
int dimStyleIndex = doc.DimStyles.Add("myDimStyle", false);
myDim.DimensionStyleIndex = dimStyleIndex;
The bold line seems to be not changing the style of my LinearDimension object.
Could anyone help me with these two failures?
Thanks!
-Jerome
…
/free/downloads
http://www.youtube.com/watch?v=YGOpitpKpps
This software is great but you can only create symmetric lights, and it's a bit difficult to draw smooth curves. Just miss a refit command...
So I thought I could generate a mesh with gh. Should be easy. Didn't have much time to work on this yet...
There are crucial choices to make in regard to the way you interact with the curve. I just made a try with attractors but I'm not really satisfied. Any ideas would be welcome.
IES-GH.3dm
IES-GH.gh
Cheers
Fred.
\edit..
By the way, can you include the material id color and the object id color? It's really a nightmare I always forget to set them right and there can be so many of them!…