Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    C# per un progetto ambizioso

    Vorrei passare alla scrittura di programmi per l'ingegneria civile del tipo Calcolo F.E.M. (Metodo degli elementi finiti).
    Non so se avete idea di cosa si tratti. E' un obiettivo diciamo utopico e senz'altro da perseguire in comunità e non da solo.
    Non so come spiegarvi bene questo tipo di software, in pratica dovrei costruire una interfaccia grafica per l'inserimento dei dati (numerosissimi), così da modellare una struttura unifilare in 3D in cui ogni asta ha delle caratteristiche (meccaniche e geometriche), assegnare le azioni (forze e carichi esterni), leggi costitutive dei materiali, combinare le azioni. Insomma, il programma elaborerà migliaia di equazioni in n incognite (che sono le componenti degli spostamenti dei nodi costituenti la struttura) con metodi di riduzione.
    Da lì ricavare le sollecitazioni interne e, in osservazione delle normative nazionali, le verifiche di resistenza.
    Poi dovrei avere un post-processore grafico così da visualizzare lo stato a valle del calcolo della struttura con le mappe a colori (immagino ci sarà bisogno delle OpenGL).

    La domanda è: C# è abbastanza potente, relativamente semplice, e veloce nell'esecuzione?
    E' adatto allo scopo? O per la parte che richiede potenza di calcolo e memoria bruta è necessario affidarsi ad un altro linguaggio?

    Avete notizie al riguardo, tipo link a progetti di sviluppo in C# o confronti dei vari linguaggi per i diversi usi che si possono pensare?

    Notebook: Toshiba Qosmio X300-15U
    Windows Vista
    Ambienti: Visual C++/C# Express; Code::Blocks;

  2. #2
    Ops... mi sono appena reso conto di non aver postato nell'opportuno sottoforum...

    Scusatemi.

    Notebook: Toshiba Qosmio X300-15U
    Windows Vista
    Ambienti: Visual C++/C# Express; Code::Blocks;

  3. #3
    Un buon metodo in questi casi è utilizzare un linguaggio ad alto livello (Python, Ruby, Java, ...) per tutte quelle parti del programma che non richiedono eccessive velocità nel qual caso puoi utilizzare C.
    Non so quanto C# sia performante nè quanto sia ad alto livello ma se è un buon connubio tra la due cose potresti anche utilizzare soltanto quello.
    Rilasciata Python FTP Server library 0.5.1
    http://code.google.com/p/pyftpdlib/

    We'll be those who'll make the italian folks know how difficult can be defecating in Southern California without having the crap flying all around the house.

  4. #4
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da billiejoex
    ...
    Non so quanto C# sia performante ...
    poco !
    fai conto che è simile a java
    I got the remedy

  5. #5
    Originariamente inviato da albgen
    poco !
    fai conto che è simile a java
    Non è vero, in C# hai la possibilità di gestire e maneggiare anche codice "non managed" e quindi pari velocità (o di poco superiore) al codice C ordinario.

    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  6. #6
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da chipdb
    Non è vero, in C# hai la possibilità di gestire e maneggiare anche codice "non managed" e quindi pari velocità (o di poco superiore) al codice C ordinario.

    io parlavo di c#(fare l'intero programma in c#) !
    quello che suggerisci tu è la stessa cosa che dice billiejoex ovvero una parte farla in codice che si esegue direttamente dalla macchina, un'altra farlo in c# e quindi eseguita tramite virtual machine.
    I got the remedy

  7. #7
    Originariamente inviato da albgen
    io parlavo di c#(fare l'intero programma in c#) !
    quello che suggerisci tu è la stessa cosa che dice billiejoex ovvero una parte farla in codice che si esegue direttamente dalla macchina, un'altra farlo in c# e quindi eseguita tramite virtual machine.
    Credo che billiejoex non conosca C# come linguaggio da come ne ha parlato, probabilmente lui ha inteso di fare il programma in C# e gestire le parti "veloci" tramite C, probabilmente con dll fatte in C o C++. Io ho semplicemente esplicato il fatto che direttamente da C# è possibile fare questo (usare codice C), senza l'ausilio di dll esterne o altri compilatori, e quindi adatto a fare quanto chiede gemini_76_it

    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  8. #8
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da chipdb
    Io ho semplicemente esplicato il fatto che direttamente da C# è possibile fare questo (usare codice C)..
    cioè tu dici che scrivi direttamente codice in c, lo compili con il compilatore c# è hai un codice veloce come se fosse compilato da un compilatore c, giusto ?
    I got the remedy

  9. #9
    Non puoi compilare il C con il compilatore C#. Piuttosto si può dire che il C# - una volta che la subroutine in questione è stata JIT-compilata - può essere molto veloce, eventualmente usando anche ottimizzazioni non sicure (come i blocchi unsafe e l'utilizzo dei puntatori al loro interno).
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Originariamente inviato da MItaly
    Non puoi compilare il C con il compilatore C#. Piuttosto si può dire che il C# - una volta che la subroutine in questione è stata JIT-compilata - può essere molto veloce, eventualmente usando anche ottimizzazioni non sicure (come i blocchi unsafe e l'utilizzo dei puntatori al loro interno).
    Intendevo questo, grazie MItaly!

    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.