I’ve updated my application on the wiki by removing the plotting extension 
to discrete time. Do you think it’s better this way?

Here’s the previous version for comparison: 
https://drive.google.com/file/d/18mq7-euijdlEnOz13_HQkKTefhNtza25/view?usp=sharing

Il giorno lunedì 31 marzo 2025 alle 10:18:26 UTC+2 Leonardo Mangani ha 
scritto:

> Hi Jason,
>
> Thanks for your time and your feedback.
> I believe that refactoring the TransferFunction class is a good way to 
> integrate discrete-time systems, as it allows for greater code flexibility. 
> Many functions can be shared between the continuous-time and discrete-time 
> versions. Although it's a significant effort, it leads to better code 
> management and usability. Moreover, the design discussed in my proposal is 
> focused in backward copatibility, every TransferFunction usage for the 
> continuous-time version will be the same as before.
> I'm more than willing to discuss this further if needed to find the best 
> alternative.
>
> Regarding the plotting functionality, my decision to expand plotting for 
> discrete-time was motivated by the idea to have a uniform physics.control 
> module, ensuring that plotting works seamlessly for both continuous-time 
> and discrete-time systems. However, if this feature is not deemed crucial, 
> I can consider removing or reducing it in the proposal to better align with 
> the 175-hour scope.
>
> Thank you again for your insights. I look forward to your thoughts.
>
> Leonardo
>
>
> Il giorno lunedì 31 marzo 2025 alle 07:53:17 UTC+2 [email protected] ha 
> scritto:
>
>> HI Leonardo,
>>
>> Your proposal looks good so far. Here are a few comments:
>>
>> 1. I would caution you on refactoring the TransfefFunction class, as 
>> these efforts are a lot of work for often little gain. You also have to 
>> keep things backwards compatible.
>>
>> 2. Your scope is very large for 175 hours.
>>
>> 3. It is debatable whether adding all this plotting functionality to 
>> SymPy is that useful. A user can create symbolic controls objects, 
>> substitute numbers, and pass to python-control for many plots. Why do we 
>> need the functionality in SymPy then? One reason could be that we can 
>> better plot functions with adaptive sampling, but you can also combine 
>> python-control with the an adaptive sampling plotter to get such results. 
>> So make sure what you add is focused on symbolic utility.
>>
>> Jason
>> moorepants.info
>> +01 530-601-9791 <(530)%20601-9791>
>>
>>
>> On Sun, Mar 30, 2025 at 7:14 PM Leonardo Mangani <[email protected]> 
>> wrote:
>>
>>> I uploaded my application to the wiki: 
>>> https://github.com/sympy/sympy/wiki/GSoC-2025-Current-Applications.
>>>
>>> Il giorno domenica 23 marzo 2025 alle 20:57:19 UTC+1 Leonardo Mangani ha 
>>> scritto:
>>>
>>> Dear Jason,
>>>
>>> I have been brainstorming potential features and improvements that might 
>>> be a good fit for Sympy, and I would appreciate your initial thoughts on 
>>> whether these ideas are valid and align with the project's roadmap.
>>>
>>>    - Features that work well with symbolic calculations:
>>>       - The Routh-Hurwitz conditions, which I am currently working on (
>>>       https://github.com/sympy/sympy/pull/27717).
>>>       - Extend the support for discrete-time representations of 
>>>       state-space and transfer functions.
>>>       - Implement the Jury Stability Criterion to derive conditions for 
>>>       discrete-time systems(a discrete-time version of the Routh-Hurwitz 
>>>       criteria).
>>>    - Features that could work both numerically and symbolically (with 
>>>    limited symbols or assumptions):
>>>       - Develop methods for computing the Z-transform and the inverse 
>>>       Z-transform. (The best approach might be to compute them via pole or 
>>> root 
>>>       analysis).
>>>       - Derive symbolic conditions under which a system is controllable 
>>>       and/or observable, based on the rank of the observability and 
>>>       controllability matrices.
>>>       - Implement decompositions for stability and observability (both 
>>>       separate decompositions and the Kalman decomposition).
>>>       - Introduce stability-related analyses directly into the 
>>>       StateSpace class, offering a more general approach.
>>>    - Additional considerations if time permits:
>>>       - Explore and address the remaining issues discussed here 
>>>       https://github.com/sympy/sympy/issues/26212
>>>    
>>>  I am planning to start documenting these ideas further and prepare a 
>>> detailed application if you think they are worth pursuing.
>>>
>>> Thank you very much for your time and guidance. I look forward to your 
>>> feedback.
>>>
>>> Leonardo
>>>
>>> Il giorno mercoledì 12 febbraio 2025 alle 23:02:00 UTC+1 
>>> [email protected] ha scritto:
>>>
>>> Dear Leonardo,
>>>
>>> We welcome improvements to the control package. I encourage you to think 
>>> about what things you can do with symbolics that numerical packages, like 
>>> python-control, can't already do. A strong proposal for GSoC would 
>>> highlight new features that leverage the symbolics.
>>>
>>> Jason
>>> moorepants.info
>>> +01 530-601-9791
>>>
>>> -- 
>>>
>>> You received this message because you are subscribed to the Google 
>>> Groups "sympy" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion visit 
>>> https://groups.google.com/d/msgid/sympy/08aff550-53d9-45b0-a9ef-4804bdbc03d9n%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/sympy/08aff550-53d9-45b0-a9ef-4804bdbc03d9n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "sympy" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>>
>> To view this discussion visit 
>>> https://groups.google.com/d/msgid/sympy/c5dbb3a8-ba24-458d-8d00-567c555da65an%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/sympy/c5dbb3a8-ba24-458d-8d00-567c555da65an%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/sympy/80d8cce2-ff68-44b0-ab81-1e26617b64c7n%40googlegroups.com.

Reply via email to