Grasshopper

algorithmic modeling for Rhino

Hi Mostapha, Chris and Abram

Having read Kimia's comment, I made a new potential component that finds sunrise, sunset for anyplace on earth using equations from Astronomical Algorithms, by Jean Meeus.
Besides these two output, it calculates the solar position (elevation angle and azimut) considering the atmospheric refraction.
I saw the difference between solInitOutput (based on Radiance) and the script that I wrote (based on NOAA). Some formulas are the same, while others are different. for example "Julian day", "solar altitude"..
Anyway, they are two different models.
At the moment the imputs are:
1) location
2) analysis period
3) year
and the outputs are:
1) civil twilight
2) official sunrise/sunset
3) solar elevation angle
4) solar azimut
This is an example where I used data of a real place.

and these are two photos that I took in this place.

SUNRISE (Civil Twilight) 06:44 AM

SUNRISE (Official) 07:14 AM
Note that in the first photo the street lights are on, while in the second are off because of the good level of luminous energy.
I hope that it could be useful.


Bests
Antonello

Views: 2076

Attachments:

Replies are closed for this discussion.

Replies to This Discussion

Yes. Please open a discussion on github for the other two components.

Hi Mostapha, Chris, Abraham, Anton

following your suggestions, I have already changed HB daily schedule and HB annual schedule.

They seem very useful now.
I also wrote a big list of holidays by country that is compatible with names of EPW files. Thus users can generate holiday DOYs automatically. In addition, I wrote an overwrite function that let users change holidays DOYs list manually or write directly without importing EPW files.

I did not found holidays of these following countries:
BLZ (CENTRAL AMERICA)
BRN (SOUTH PACIFIC)
GUM (SOUTH PACIFIC)
MHL (SOUTH PACIFIC)
PLW (SOUTH PACIFIC)
UMI (SOUTH PACIFIC)
https://energyplus.net/weather

Moreover, it is possible to connect daily schedule to Galapagos component, so it can also answer some strange questions.
For example, what is the ideal daily occupancy schedule for this type of building in this specific country?

I have attached an example to have a look at HB daily schedule & HB annual schedule.

Please, let me know your opinion.

Best
Antonello

Attachments:

Hi, could you please explain what is this component for?

Not that I think it is useless, but I'd like to know what could I analyse with it, sorry, can't come up with anything myself, derp XD

Hi Tim

Firstly, I have to change its name! sorry.

I have to modify it, I want to make it faster than now. And I need to write some parts differently.

Anyway, it can calculate sunrise/sunset time of HOYs without passing through sun path component (to increase the speed of calculation), and other important properties of the sun, especially if you want to consider minutes, seconds.. (e.g. 13:58:05).

In fact, I should add sun vector output and, maybe, other specific functions linked to daylight schedules.

But it is work in progress. ;)


Best
Antonello

Hey Antonello,

Now I understand, thanks.

Yeah, sun vectors would be nice. First thing that comes in mind is these really annoying dawn/dusk sun rays that shine in your eyes if you are lucky to sit next to a window XD. Would like to be able to address this issue in a building design, less glare s always better. But I guess it is only applicable to rural areas in most cases.

Thanks for the work and the reply, I appreciate this.

Tim,
We should also clarify that Antonello's component calculates the solar position to a higher accuracy than the function which drives all other solar position calculations in Ladybug (including the LB sunpath). However, Antonello's component takes about 2 minutes to calculate 8760 values (a position for each hour of the year) and so it is not really practical to replace this primary function with Antonello's higher accuracy one.
The difference in accuracy is on the level of seconds and so this discrepancy in position really does not make much of a difference for the vast majority of applications. The exception is the calculation of sunrise and sunset, where the difference of a few seconds can be particularly important. So I think that it is appropriate that we have Antonello's component that is generally meant to calculate higher accuracy sun positions for special situations and for sunrise / sunset while the rest of Ladybug uses the quicker current function
Mostapha, let me know if you agree with this and I would be interested in hearing anyone else's thoughts.
-Chris

Agree with Chris. Not much to add. The existing LB components are for the "heavy duty" needs, where you want good accuracy and fast results. Antonello's is more the cherry on top of the cream, as for high accuracy is related. Can be very useful for very determined tasks.

-A.

Hey Chris, 

At this point when I hear about addition of even more functionality to LB/HB I feel excited and always agree on it. However now that I'm trying to get a hang of HB I get frustrated by the sheer amount of components, they don't even fit when I maximize the window unless I pull the tab all the way down XD.

All I want to say is that I think that at some moment in the future you guys will have to think about integration of multiple components in one and "prettyfication", so the components are compact and nice looking (without all these underscores, dashes and spaces))

Don't get me wrong, I love everything you do and understand that at this stage your (team) plugins are at pre-alpha state and need a lot of tuning and cleaning before they start to look something like native GH components.

Sometimes I'm itching to ask you guys:"Hey, what's with all these blank inputs and outputs?" My guess, is a temporary system that you came up with or limitations of python (doubt), correct me on this one.

In conclusion, add as a new component and maybe integrate it in sunpath with boolean toggle for accuracy later. More is better but not too much XD

Hi Tim,

Thanks for posting this comment. Comments like this are much needed. I agree with your point about the extensive number of components in Honeybee and understand how frustrating it can be when you get started with them but at the same time that's exactly what makes Honeybee as flexible as it is right now.

I'm borrowing a number of slides from Chris's presentation where he uses the analogy of tool vs toolkit to describe how the vision behind Ladybug + Honeybee is different from other available tools. It's the nature of the toolkit to have several options for the same problem:

At the same time, I totally agree with your comment that there is a great chance in improving the current "toolkit" by re-evaluating the components and re-structure and/or merge them together to make it more user friendly. We tried once to re-structure the components based on our understan... to address similar issues to what you mentioned but the instant feedback was pretty negative. As a result we reverted back to what we had in place.

Here is exactly where we need suggestions from you and other users. Please consider submitting issues for all the changes that you think can make Ladybug and Honeybee easier to learn and use. Now is the best time as we're almost re-writing everything.

The underscores are there for a reason. They indicate which inputs are required, optional or required with a default value. Check number 4.

I'm not sure what do you refer to by blank inputs? Do you mean the separators? If that is the case then yes. That's the limitation that we currently have to group inputs.

Back to the integration of new codes (such as this one) into older components it's not as easy as it sounds mainly because of the way that the current components are developed. I'm doing my best to get this issue solved for the new development. Also once we have an API users can make their own customized components which will make it easier to keep the official components for Ladybug and Honeybee to essential components.

Mostapha

Haha, yeah, this is one way to describe it. Finished Chris's HB tutorials, kinda got familiarized with the toolset but still have little idea what to do with it. Hopefully (hail!) Hydra will prove useful (pretty sure it will).

Here is exactly where we need suggestions from you and other users. Please consider submitting issues for all the changes that you think can make Ladybug and Honeybee easier to learn and use. Now is the best time as we're almost re-writing everything.

I dug up my github account, last time I was confused by its application, but I guess it's ok if I just post issues or comments (still a bit new to it, I'm not so savvy when it comes to social media XD).

The underscores are there for a reason. They indicate which inputs are required, optional or required with a default value.

Can proudly note that I knew that, maybe it is my problem, but I tend to find them ugly or abnormal, something you see in the code, behind the scenes.

I guess Python is case sensitive, but I think I'd express more sympathy to, let's say all caps for MUSTS, upper case for Important and all lower for the rest. 

Again, purely personal preference that, I guess, relies on the hierarchy of the letters (maybe it is something one naturally gets from learning alphabetic languages, because I really miss this feature here in China). Maybe italicize the words or bold them?

Again, just suggestions, I donno anything about Python but I do know that it is not that simple with the code unlike in the Word.

I'm not sure what do you refer to by blank inputs? Do you mean the separators? If that is the case then yes. That's the limitation that we currently have to group inputs.

Yeah, I see. I wonder if David considered adding something like separators to GH components or ability to rearrange the position of inputs (would be my personal wish))), because so far he left an impression that he considered everything and couldn't stick to all because of legitimate reasons XD.

Personally and I think many will agree, I would like to see fast and stable work first and "prettification" later. So can't and don't want to complain too much XD.

Hi all

I have improved LB SunriseSunset and now works very well! Also with EPW files of extrime location such as Alaska, Barrow.

I added a function that checks for the data input, and now it is possible connect whether Analysis Period or Ladybug DOY/HOY to the same input.

Moreover I changed its name and added a new output suggested by Chris. (SunIsUp).
It is possible to use this new output to create cool sunlight charts, as you can see below.

Barrow, Alaska

Invercargill, Southland, New Zealand

Lethbridge, Canada

Finally, the component is very fast. it takes about 10 seconds to calculate 8760 values!

Best

Antonello

Very nice Antonello and useful with the 3dchart visual.

Also impressed with the improvement in calculation time.

Thanks,

-A.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

© 2019   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service