HISE Logo Forum
    • Categories
    • Register
    • Login

    WDF Model is not working in Faust

    Scheduled Pinned Locked Moved Faust Development
    16 Posts 6 Posters 655 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • resonantR
      resonant
      last edited by

      I'm new to FAUST and I tried to make a tube amp example with WD models, but I get the following error: undefined symbol : WDFTriode

      What is the mistake? Any help would be appreciated.

      import("stdfaust.lib");
      import("filters.lib");
      import("wdmodels.lib");
      
      drive = hslider("Drive [dB]", 0, 0, 30, 0.1);
      gain = hslider("Gain", 1, 0.1, 10, 0.1);
      vol = hslider("Volume", 0.8, 0, 1, 0.01);
      
      anode_res = 100000;  
      cathode_res = 1500;  
      grid_res = 1e6;   
      triode = WDFTriode(grid_res, cathode_res, anode_res);
      
      input_hp = highpass(50.0);  // High-pass filter at 50 Hz
      
      output_lp = lowpass(10000.0); // Low-pass filter at 10 kHz
      
      process = input_hp : *(drive) : triode : *(gain) : output_lp : *(vol);
      
      LindonL B griffinboyG 4 Replies Last reply Reply Quote 0
      • LindonL
        Lindon @resonant
        last edited by

        @resonant you are probably better off asking on the Faust discord.

        HISE Development for hire.
        www.channelrobot.com

        1 Reply Last reply Reply Quote 1
        • LindonL
          Lindon @resonant
          last edited by

          @resonant said in WDF Model is not working in Faust:

          I'm new to FAUST and I tried to make a tube amp example with WD models, but I get the following error: undefined symbol : WDFTriode

          What is the mistake? Any help would be appreciated.

          import("stdfaust.lib");
          import("filters.lib");
          import("wdmodels.lib");
          
          drive = hslider("Drive [dB]", 0, 0, 30, 0.1);
          gain = hslider("Gain", 1, 0.1, 10, 0.1);
          vol = hslider("Volume", 0.8, 0, 1, 0.01);
          
          anode_res = 100000;  
          cathode_res = 1500;  
          grid_res = 1e6;   
          triode = WDFTriode(grid_res, cathode_res, anode_res);
          
          input_hp = highpass(50.0);  // High-pass filter at 50 Hz
          
          output_lp = lowpass(10000.0); // Low-pass filter at 10 kHz
          
          process = input_hp : *(drive) : triode : *(gain) : output_lp : *(vol);
          

          but two or three things stick out..

          1. you should probably prefix your lib functions with the lib id like this:

          wd.transformer(x,y)

          1. I cant see anything in the WD library called Triode

          Link Preview Image
          wdmodels - Faust Libraries

          favicon

          (faustlibraries.grame.fr)

          1. I think for WD models you will need to set up some sort of buildtree

          HISE Development for hire.
          www.channelrobot.com

          resonantR 1 Reply Last reply Reply Quote 0
          • resonantR
            resonant @Lindon
            last edited by

            @Lindon said in WDF Model is not working in Faust:

            1. I cant see anything in the WD library called Triode

            I used ChatGPT for this. So maybe that's the thing

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @resonant
              last edited by

              @resonant ChatGPT is not your friend - go read the description of what to do on the page I pointed at.

              HISE Development for hire.
              www.channelrobot.com

              B 1 Reply Last reply Reply Quote 2
              • B
                Ben Catman @resonant
                last edited by

                @resonant

                check this https://faustlibraries.grame.fr/libs/#wdmodels

                As far as i can see there is no such thing as wd.WDFTriode.

                Btw i highly suggest to do some tutorials. you can simply state a thing like
                input_hp = highpass(...) - there is quite a bit more to it

                Also your model like you intend to code it would not work as there is so much more to this topic than simply sending a signal thru a triode. You might check out some basics here as well :)

                Best Ben

                Links:
                https://www.youtube.com/watch?v=VwoPt3h7DWM - on wdModels
                https://www.youtube.com/watch?v=hDkur8zOcv0&t=5545s - on Faust

                Link Preview Image
                Designing Common-Cathode Triode Amplifiers

                Guitar amplifiers

                favicon

                (www.aikenamps.com)

                1 Reply Last reply Reply Quote 1
                • B
                  Ben Catman @Lindon
                  last edited by

                  @Lindon

                  oh you were faster than me.

                  @resonant
                  PLEASE do not ask chatGPT - faust and ChatGPT is a NONO!!!

                  :)

                  1 Reply Last reply Reply Quote 2
                  • resonantR
                    resonant
                    last edited by

                    @Lindon @Ben-Catman Thanks, I need to develop my faust knowledge.
                    Also it looks like the ChatGPT is struggling with this, but just for now :)

                    d.healeyD 1 Reply Last reply Reply Quote 0
                    • d.healeyD
                      d.healey @resonant
                      last edited by

                      @resonant said in WDF Model is not working in Faust:

                      @Lindon @Ben-Catman Thanks, I need to develop my faust knowledge.
                      Also it looks like the ChatGPT is struggling with this, but just for now :)

                      e20c9ce0-d616-4c68-8d5a-6d45154eaf90-image.png

                      Libre Wave - Freedom respecting instruments and effects
                      My Patreon - HISE tutorials
                      YouTube Channel - Public HISE tutorials

                      resonantR A 2 Replies Last reply Reply Quote 1
                      • resonantR
                        resonant @d.healey
                        last edited by

                        @d-healey said in WDF Model is not working in Faust:

                        Hahah 😆 It might seem like we're expecting too much from ChatGPT with this sort of things. But I believe that 5 years from now will be very different.

                        @resonant said in WDF Model is not working in Faust:

                        @Lindon @Ben-Catman Thanks, I need to develop my faust knowledge.
                        Also it looks like the ChatGPT is struggling with this, but just for now :)

                        e20c9ce0-d616-4c68-8d5a-6d45154eaf90-image.png

                        1 Reply Last reply Reply Quote 1
                        • griffinboyG
                          griffinboy @resonant
                          last edited by griffinboy

                          @resonant
                          Not sure sorry, but I do have a HSIM WDF model that runs natively in Hise which I will be releasing soon.

                          I recommend using gpt to explain concepts, rather than write code. Once you understand WDF, you can meet your goals yourself! Gpt really struggles with any big task, but it does a great job of teaching complex concepts.

                          Especially if you can give it a large technical pdf document, you can then proceed to ask it questions and break down the technical jargon.

                          If you need help with WDF let me know, I've been learning it myself the past few months.

                          01be424f-0df0-4d5e-868e-cf4ea9318aef-image.png

                          107fe599-d44f-4bac-939b-9bd0d5eb2161-image.png

                          1 Reply Last reply Reply Quote 1
                          • A
                            aaronventure @d.healey
                            last edited by

                            @d-healey lmao if you're using the free 3.5, you deserve this sort of response :D

                            30ab058c-2f4e-4615-b5dd-9dc30f5452eb-image.png

                            Faust (and HISEscript as well) are very niche. I'm honestly surprised it does as well as it does. You should try creating a custom GPT and feeding it with the Faust docs and the library, then adjusting the instructions every time it makes a mistake like this. like "Always include library prefixes".

                            For HISEscript, you need to mention that standalone functions should always be inline functions, and that these don't have a var, but local, that let does not exist etc.

                            d.healeyD 1 Reply Last reply Reply Quote 1
                            • d.healeyD
                              d.healey @aaronventure
                              last edited by

                              @aaronventure said in WDF Model is not working in Faust:

                              lmao if you're using the free 3.5

                              Sadly I'm paying for this

                              Libre Wave - Freedom respecting instruments and effects
                              My Patreon - HISE tutorials
                              YouTube Channel - Public HISE tutorials

                              A 1 Reply Last reply Reply Quote 0
                              • A
                                aaronventure @d.healey
                                last edited by

                                @d-healey I love how you can just gaslight the 4o even when it's right

                                d5d57fa9-730e-4e29-bfd4-c630329e5e1d-image.png

                                The new one seems a lot more robust

                                a35a9536-8df9-437a-a789-513862f4657f-image.png

                                d.healeyD 1 Reply Last reply Reply Quote 0
                                • d.healeyD
                                  d.healey @aaronventure
                                  last edited by d.healey

                                  @aaronventure said in WDF Model is not working in Faust:

                                  I love how you can just gaslight the 4o even when it's right

                                  Interesting that it gave you the right answer, mine is still stupid

                                  b98fb702-9b3f-4da4-8895-6ae164fd78f3-image.png

                                  I didn't discover this strawberry thing btw, someone else posted it online a couple of weeks ago.

                                  Libre Wave - Freedom respecting instruments and effects
                                  My Patreon - HISE tutorials
                                  YouTube Channel - Public HISE tutorials

                                  A 1 Reply Last reply Reply Quote 0
                                  • A
                                    aaronventure @d.healey
                                    last edited by aaronventure

                                    @d-healey said in WDF Model is not working in Faust:

                                    Interesting that it gave you the right answer,

                                    because the 4o is guessing. You can ask it to run a python script that counts rs in a string and you'll get the correct answer. Pure inference in this case is mostly guesswork, because it works with tokens, not letters.

                                    07eec81d-c908-44ee-b8a3-c2a703e8f569-image.png

                                    The o1 has reflection so it can catch itself doing this. Plus, this test comes up so often that I wouldn't be surprised it already made its way into the training data.

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    43

                                    Online

                                    1.7k

                                    Users

                                    11.7k

                                    Topics

                                    102.0k

                                    Posts