ow the steps of the successful run when step 1.2 is bypassed (note that the and OpenFOAM session is open in the background while running the Butterfly demo file):
1. create wind tunnel, and use different parameters of (4,4) for _globalRefLevel_ as suggested by Theodoro in this post
2. run blockMesh:
3. run snappyHexMesh:
4. run checkMesh:
5. connect the case from checkMesh to simpleFOAM and run the simulation:
6. the simulation converged at 1865 iteration, but the results visualization part has some problem:
7. so I revised this part according to suggestions from Hagit:
8. and the results can be visualized for P and U values:
The GH file used for the successful run shown above is attached here.
Now, the following is the error I got when the case from the update fvScheme component is used for simpleFOAM simulation:
the warning message on the simpleFOAM component is:
1. Solution exception: --> OpenFOAM command Failed!#0 Foam::error::printStack(Foam::Ostream&) in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #2 ? in "/lib64/libc.so.6" #3 double Foam::sumProd<double>(Foam::UList<double> const&, Foam::UList<double> const&) in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #4 Foam::PCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #5 Foam::GAMGSolver::solveCoarsestLevel(Foam::Field<double>&, Foam::Field<double> const&) const in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #6 Foam::GAMGSolver::Vcycle(Foam::PtrList<Foam::lduMatrix::smoother> const&, Foam::Field<double>&, Foam::Field<double> const&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::PtrList<Foam::Field<double> >&, Foam::PtrList<Foam::Field<double> >&, unsigned char) const in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #7 Foam::GAMGSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so" #8 Foam::fvMatrix<double>::solveSegregated(Foam::dictionary const&) in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/lib/libfiniteVolume.so" #9 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/bin/simpleFoam" #10 Foam::fvMatrix<double>::solve() in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/bin/simpleFoam" #11 ? in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/bin/simpleFoam" #12 __libc_start_main in "/lib64/libc.so.6" #13 ? in "/opt/OpenFOAM/OpenFOAM-v1606+/platforms/linux64GccDPInt32Opt/bin/simpleFoam"
The error message from the readMe! output node is attached below as a text file.
Hope you can kindly advise what the important steps or parameters I might have missed here. I assume it might be related to OpenFOAM rather than with the Butterfly workflow...
Thank you very much!
- Ji
…
ns about them.
It's a direction for Kangaroo I very much intend to continue developing - and I am still getting to grips with the possibilities and experimenting with how different optimization and fairing forces work in combination with one another, so I would value your input and experience.
For those interested in some background reading material -
[1] http://www.cs.caltech.edu/~mmeyer/Research/FairMesh/implicitFairing.pdf
[2] http://mesh.brown.edu/taubin/pdfs/taubin-eg00star.pdf
[3] http://www.pmp-book.org/download/slides/Smoothing.pdf
[4] http://graphics.stanford.edu/courses/cs468-05-fall/slides/daniel_willmore_flow_fall_05.pdf
[5] http://www.evolute.at/technology/scientific-publications.html
[6] http://www.math.tu-berlin.de/~bobenko/recentpapers.html
[7] http://spacesymmetrystructure.wordpress.com/2011/05/18/pseudo-physical-materials/
[8] http://www.evolute.at/technology/scientific-publications/34.html
[9] http://www.evolute.at/software/forum/topic.html?id=18
At the moment the Laplacian smoothing is uniformly weighted, which tends to even out the edge lengths as well as smoothing the form, which is sometimes desirable, and sometimes not. It also tends to significantly shrink meshes when the edges are not fixed.
I plan to try some of the other weighting possibilities, such as Fujiwara or cotangent weighting (see [1] and [3]), as well as other fairing approaches, such as Taubin smoothing [2], Willmore flow[4], and so on. This also has applications in the simulation of bending of thin shells.
Planar quad panels are often desirable, but I'm finding that planarization forces alone are sometimes unstable, or cause undesirable crumpling, so need to be combined with some sort of fairing/smoothing, but the different types have quite different effects, and the balance is sometimes tricky.
There's also the whole issue of meshes which are circular (I posted a demo of circularization on the examples page), or conical (this one still isn't working quite right yet), and their relationship with principal curvature grids and placement of irregular vertices, all of which is rather different when the whole form is up for change, rather than having a fixed target surface [7].
I'm also trying to get to grips with ways of making surfaces of planar hexagons, which need to become concave in regions of negative Gaussian curvature (see this discussion)
and I hope to release soon a component for calculating CP meshes, as described in [8], which I think could have many exciting construction implications.
While there are a number of well developed smoothing algorithms, their main area of application so far seems to be in processing and improving 3D scan data, so using them in design in this way is somewhat new territory. There can be structural, fabrication or performance reasons for certain types of smoothness, but of course the aesthetic reasons are also often important, and I think there are some interesting discussions to be had here about the aesthetics of smoothness.
Anyway, that's enough rambling from me, hopefully something there triggers some discussion - I'm really keen to hear about how all of you envision these tools might be used and developed.
…
rom a few pieces until all of the pieces are in place. You could also, theoretically, modify the form of the base, high, etc.
To do this I started making three pieces (all triangular) of different sizes... and then I stablished that there is going to be a bigger concentration of bigger pieces on the first third of the building, a bigger concentration of medium pieces on the second third and a bigger concentration of small pieces on the last third. I did this by rotating the pieces a number of times accordingly to a percentage.. the funny thing is that it works most of the times, but it doesn't work if the base of the building has 3, 8, 12, 18 or 20 sides (20 being the higher number on the number slider).. maybe there is a way to solve this with lists that I am not using????
My second problem is that I want to rotate each floor of the building separetly using a range... the thing is, I cannot make it work, because it rotates each triangle and not the whole floor... maybe there is a way of making groups or changing the list definition, but I'm not getting there.... I tried working with planes, but it is even more difficult to make the whole thing work...
I'm attaching the grasshopper documment and a couple of pictures so you can get my idea....…
basis FE model to get some stresses to evaluate and then I remap these stresses into a thickness within a certain domain. These values are then used as input to a new FE model.
I look at a cantilever beam (8 x 3 m) which has uniformly distributed loads on top and bottom and all DOF's are fixed in the end (left side).
I get the exact opposite result as I would expect. See the result below.
I've tried to switch the domain input of the thickness which kind of gives a result more likely to what I would expect but still does some weird thing at the end of the cantilever beam. Also I don't really see the logic in doing that.
I've also tried the region boundary support instead but with no luck.
Can anyone see what I'm doing wrong?
Thank you very much!…
te one of the boxes (kind of). Now I'm trying to set up the pattern, but I would like it to be random. I'm having trouble coming up with the actual algorithm, though.
I'm able to generate a list of items, randomly select some of them, and rotate them. I can also select the item after a rotated one and move it to the right.
However, I'm having trouble selecting all of the items after an item that's been rotated, and moving all of them.
Let's say I have a list of 15 elements and numbers 3, 6, and 7 are rotated. I would need to move numbers 4 through 14 (since it starts at 0) to the right by an x amount; numbers 7 through 14 to the right by a 2x amount; and numbers 8 through 14 by a 3x amount.
How should I go about doing this?
I'll add my current non-working setup. I should note that since I'm new, it probably looks horribly disorganized. Sorry about that.
Thanks!…
control point edit from a sphere.
Since it is the first time I try Exoskeleton, I checked the lists of input geometry in the exemple and got the same in my definition, but the component turned red, giving this error message:
1. Solution exception:Index was outside the bounds of the array.
For the Radius at Start and End values, I tried using the same principle applied inside the Exo-vase exemple, which links the radius to the Z values, remapping them from .3 to 8.
Is there the problem or elsewhere?
Could someone give me a hint about what I am missing ? Many thanks!!!
Below a screenshot., and I attach the definition.
…
s para resolver problemas que hoy se presentan en el diseño y fabricación digital de formas complejas, que en conjunto, son las tendencias e instrucciones mas utilizadas por las oficinas de arquitectura del mundo.
Tomando como plataforma Rhinoceros de McNeel Associates, se optimiza el diseño y fabricación usando Grasshopper, RhinoNest y RhinoCAM.
Se realizará en Lima, Perú el 12 y 13 Setiembre, de 8:00 AM a 6:00 PM., con un total de 16 horas.
Cupo máximo: 20 alumnos.
Inversión. (no incluye impuestos)
S/.900.00 Incluye Licencia Rhino
S/.750.00 NO incluye Licencia Rhino
Ambas incluyen certificado de McNeel Miami.
Instructor:
Andres Gonzalez, CEO McNeel Miami, desarrollador desde 1980. www.rhino3d.com
Organización
McNeel Miami, Pablo C. Herrera,
Pedro Arteaga y MGP Nuevas Artes www.mgp-peru.com
Contacto en Lima, Perú
Claudia Aller / contacto@mgp-peru.com
Contacto en Miami, USA
Jackie Nasser / jackie@mcneel.com…
lets say the setup at some time is like this:
min = 0.0
max = 10.0
val = 3.0
Then the dynamic domain changes to:
min = 5.0
max = 10.0
What happens to val? Does it stay as close to 3 as possible (i.e. 5.0)? Does it get remapped to the same percentage (i.e. 6.5)?
--------
Or let's assume that due to some fluke the dynamic bounds are identical:
min = 6.0
max = 6.0
Now at least it's obvious what should happen to val as there's only one value possible, but what should happen after the domain becomes valid again? Should I store the last valid value or percentage and restore it?
--------
What about rounding in case of integer sliders?
min = 0
max = 10
val = 3
When the dynamic domain is slowly adjusted one integer at a time until it reaches:
min = 8
max = 10
how do we prevent the massive amount of intermediate rounding that goes on which may push the final value percentage way off the original?
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 6:41am on January 28, 2011
his fast-moving class covers most of Rhino's functionality, including the most advanced surfacing commands. In addition, this workshop will give students a functional understanding of Grasshopper and Parametric design. This will allow them to build on this understanding into more advanced projects of their own including design optimization with RhinoNest and creating their models on a laser machine.
…
you'll learn to create and edit accurate free-form 3-D NURBS models. This fast-moving class covers most of Rhino's functionality, including the most advanced surfacing commands. In addition, you'll learn concepts and features of Grasshopper at an accelerated pace in an instructor-led hands-on instruction environment. The advantages of using Grasshopper in preliminary design and concept development come to life since the students will be able to create their models on a Type A Machines' Series 1 3D printer. Participants should have basic knowledge of Rhino 5.
Location:Type A Machines - SmithGroup San Francisco (map)301 Battery StreetSan Francisco, CA 94111United States
To Register:e-mail: Jackie Nasser - McNeel Miamiphone: (305) 513 4445
…